From 28f783e5f068159c45a03d85b835155d3d3a5576 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 5 Apr 2025 03:11:58 +0000 Subject: [PATCH 001/139] chore(internal): version bump (#42) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 07c82ef9..9e7314f3 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application ```ruby -gem "hanzoai", "~> 0.1.0.pre.alpha.3" +gem "hanzoai", "~> 0.1.0.pre.alpha.4" ``` From b35580a6829fad0b89154da341e7c01a03b62a28 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:13:27 +0000 Subject: [PATCH 002/139] feat: support query, header, and body params that have identical names (#44) --- lib/hanzoai/internal/type/base_model.rb | 9 ++++--- lib/hanzoai/resources/customer.rb | 4 +-- lib/hanzoai/resources/key.rb | 36 ++++++++++++------------- lib/hanzoai/resources/team.rb | 18 ++++++------- lib/hanzoai/resources/team/callback.rb | 6 ++--- lib/hanzoai/resources/user.rb | 6 ++--- 6 files changed, 41 insertions(+), 38 deletions(-) diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 74422281..c32569ac 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -265,6 +265,7 @@ def dump(value) return super end + is_param = singleton_class <= Hanzoai::Internal::Type::RequestParameters::Converter acc = {} coerced.each do |key, val| @@ -273,19 +274,21 @@ def dump(value) in nil acc.store(name, super(val)) else - mode, api_name, type_fn = field.fetch_values(:mode, :api_name, :type_fn) + mode, type_fn = field.fetch_values(:mode, :type_fn) case mode in :coerce next else target = type_fn.call + api_name = is_param ? name : field.fetch(:api_name) acc.store(api_name, Hanzoai::Internal::Type::Converter.dump(target, val)) end end end - known_fields.each_value do |field| - mode, api_name, const = field.fetch_values(:mode, :api_name, :const) + known_fields.each do |name, field| + mode, const = field.fetch_values(:mode, :const) + api_name = is_param ? name : field.fetch(:api_name) next if mode == :coerce || acc.key?(api_name) || const == Hanzoai::Internal::OMIT acc.store(api_name, const) end diff --git a/lib/hanzoai/resources/customer.rb b/lib/hanzoai/resources/customer.rb index 12a532bf..a96fcbfd 100644 --- a/lib/hanzoai/resources/customer.rb +++ b/lib/hanzoai/resources/customer.rb @@ -80,7 +80,7 @@ def create(params) @client.request( method: :post, path: "customer/new", - body: parsed, + body: parsed.transform_keys(alias_: :alias), model: Hanzoai::Internal::Type::Unknown, options: options ) @@ -130,7 +130,7 @@ def update(params) @client.request( method: :post, path: "customer/update", - body: parsed, + body: parsed.transform_keys(alias_: :alias), model: Hanzoai::Internal::Type::Unknown, options: options ) diff --git a/lib/hanzoai/resources/key.rb b/lib/hanzoai/resources/key.rb index e8a02ae5..45d61d2f 100644 --- a/lib/hanzoai/resources/key.rb +++ b/lib/hanzoai/resources/key.rb @@ -101,12 +101,12 @@ class Key # @see Hanzoai::Models::KeyUpdateParams def update(params) parsed, options = Hanzoai::Models::KeyUpdateParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "key/update", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Internal::Type::Unknown, options: options ) @@ -181,12 +181,12 @@ def list(params = {}) # @see Hanzoai::Models::KeyDeleteParams def delete(params = {}) parsed, options = Hanzoai::Models::KeyDeleteParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "key/delete", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Internal::Type::Unknown, options: options ) @@ -220,12 +220,12 @@ def delete(params = {}) # @see Hanzoai::Models::KeyBlockParams def block(params) parsed, options = Hanzoai::Models::KeyBlockParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "key/block", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Models::KeyBlockResponse, options: options ) @@ -408,12 +408,12 @@ def check_health(params = {}) # @see Hanzoai::Models::KeyGenerateParams def generate(params = {}) parsed, options = Hanzoai::Models::KeyGenerateParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "key/generate", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Models::GenerateKeyResponse, options: options ) @@ -509,12 +509,12 @@ def generate(params = {}) # @see Hanzoai::Models::KeyRegenerateByKeyParams def regenerate_by_key(path_key, params = {}) parsed, options = Hanzoai::Models::KeyRegenerateByKeyParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: ["key/%1$s/regenerate", path_key], - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys).transform_keys(body_key: :key), model: Hanzoai::Models::GenerateKeyResponse, options: options ) @@ -585,12 +585,12 @@ def retrieve_info(params = {}) # @see Hanzoai::Models::KeyUnblockParams def unblock(params) parsed, options = Hanzoai::Models::KeyUnblockParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "key/unblock", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Internal::Type::Unknown, options: options ) diff --git a/lib/hanzoai/resources/team.rb b/lib/hanzoai/resources/team.rb index ae15c60d..8b20f60b 100644 --- a/lib/hanzoai/resources/team.rb +++ b/lib/hanzoai/resources/team.rb @@ -102,12 +102,12 @@ class Team # @see Hanzoai::Models::TeamCreateParams def create(params = {}) parsed, options = Hanzoai::Models::TeamCreateParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "team/new", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Models::TeamCreateResponse, options: options ) @@ -188,12 +188,12 @@ def create(params = {}) # @see Hanzoai::Models::TeamUpdateParams def update(params) parsed, options = Hanzoai::Models::TeamUpdateParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "team/update", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Internal::Type::Unknown, options: options ) @@ -255,12 +255,12 @@ def list(params = {}) # @see Hanzoai::Models::TeamDeleteParams def delete(params) parsed, options = Hanzoai::Models::TeamDeleteParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "team/delete", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Internal::Type::Unknown, options: options ) diff --git a/lib/hanzoai/resources/team/callback.rb b/lib/hanzoai/resources/team/callback.rb index e1c8acc3..f0668b2d 100644 --- a/lib/hanzoai/resources/team/callback.rb +++ b/lib/hanzoai/resources/team/callback.rb @@ -96,12 +96,12 @@ def retrieve(team_id, params = {}) # @see Hanzoai::Models::Team::CallbackAddParams def add(team_id, params) parsed, options = Hanzoai::Models::Team::CallbackAddParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: ["team/%1$s/callback", team_id], - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Internal::Type::Unknown, options: options ) diff --git a/lib/hanzoai/resources/user.rb b/lib/hanzoai/resources/user.rb index c87dbd5f..c555445f 100644 --- a/lib/hanzoai/resources/user.rb +++ b/lib/hanzoai/resources/user.rb @@ -296,12 +296,12 @@ def list(params = {}) # @see Hanzoai::Models::UserDeleteParams def delete(params) parsed, options = Hanzoai::Models::UserDeleteParams.dump_request(params) - header_params = [:"llm-changed-by"] + header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "user/delete", - headers: parsed.slice(*header_params), - body: parsed.except(*header_params), + headers: parsed.slice(*header_params.keys).transform_keys(header_params), + body: parsed.except(*header_params.keys), model: Hanzoai::Internal::Type::Unknown, options: options ) From 9ba40fbc78f7b9d4df96a124c0fcdfed74e949dd Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:15:04 +0000 Subject: [PATCH 003/139] feat: allow all valid `JSON` types to be encoded (#45) --- lib/hanzoai/internal/util.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 973bca80..e9196068 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -61,7 +61,7 @@ class << self # @return [Boolean] def primitive?(input) case input - in true | false | Integer | Float | Symbol | String + in true | false | Numeric | Symbol | String true else false @@ -504,7 +504,7 @@ class << self def encode_content(headers, body) content_type = headers["content-type"] case [content_type, body] - in [%r{^application/(?:vnd\.api\+)?json}, Hash | Array] + in [%r{^application/(?:vnd\.api\+)?json}, _] unless body.nil? [headers, JSON.fast_generate(body)] in [%r{^application/(?:x-)?jsonl}, Enumerable] [headers, body.lazy.map { JSON.fast_generate(_1) }] @@ -516,6 +516,8 @@ def encode_content(headers, body) [headers, body.tap(&:rewind)] in [_, StringIO] [headers, body.string] + in [_, Symbol | Numeric] + [headers, body.to_s] else [headers, body] end From 6d4d5b85b4e9c46977971bed3daa2aaddd6acd32 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:16:37 +0000 Subject: [PATCH 004/139] chore: rename confusing `Type::BooleanModel` to `Type::Boolean` (#46) --- lib/hanzoai/internal/type/boolean_model.rb | 4 ++-- lib/hanzoai/internal/type/converter.rb | 2 +- lib/hanzoai/models/cache_ping_response.rb | 2 +- lib/hanzoai/models/customer_create_params.rb | 2 +- lib/hanzoai/models/customer_list_response.rb | 2 +- .../models/customer_retrieve_info_response.rb | 2 +- lib/hanzoai/models/customer_update_params.rb | 2 +- lib/hanzoai/models/generate_key_response.rb | 2 +- lib/hanzoai/models/guardrail_list_response.rb | 2 +- lib/hanzoai/models/key/regenerate_key_request.rb | 4 ++-- lib/hanzoai/models/key_block_response.rb | 4 ++-- lib/hanzoai/models/key_generate_params.rb | 4 ++-- lib/hanzoai/models/key_list_params.rb | 4 ++-- lib/hanzoai/models/key_list_response.rb | 6 +++--- lib/hanzoai/models/key_update_params.rb | 2 +- lib/hanzoai/models/model/update_deployment.rb | 4 ++-- lib/hanzoai/models/model_create_params.rb | 4 ++-- lib/hanzoai/models/model_info.rb | 2 +- lib/hanzoai/models/model_list_params.rb | 2 +- .../models/organization/info_retrieve_response.rb | 2 +- lib/hanzoai/models/organization_delete_response.rb | 2 +- lib/hanzoai/models/organization_list_response.rb | 2 +- lib/hanzoai/models/organization_update_response.rb | 2 +- lib/hanzoai/models/team_add_member_response.rb | 2 +- lib/hanzoai/models/team_create_params.rb | 2 +- lib/hanzoai/models/team_create_response.rb | 2 +- lib/hanzoai/models/team_update_params.rb | 2 +- lib/hanzoai/models/user_create_params.rb | 6 +++--- lib/hanzoai/models/user_create_response.rb | 2 +- lib/hanzoai/models/user_update_params.rb | 2 +- rbi/lib/hanzoai/internal/type/boolean_model.rbi | 2 +- sig/hanzoai/internal/type/boolean_model.rbs | 2 +- test/hanzoai/internal/type/base_model_test.rb | 14 +++++++------- test/hanzoai/resources/cache_test.rb | 2 +- test/hanzoai/resources/customer_test.rb | 2 +- test/hanzoai/resources/key_test.rb | 8 ++++---- test/hanzoai/resources/team_test.rb | 4 ++-- test/hanzoai/resources/user_test.rb | 2 +- 38 files changed, 59 insertions(+), 59 deletions(-) diff --git a/lib/hanzoai/internal/type/boolean_model.rb b/lib/hanzoai/internal/type/boolean_model.rb index 76cb50bb..f383aa8b 100644 --- a/lib/hanzoai/internal/type/boolean_model.rb +++ b/lib/hanzoai/internal/type/boolean_model.rb @@ -8,7 +8,7 @@ module Type # @abstract # # Ruby has no Boolean class; this is something for models to refer to. - class BooleanModel + class Boolean extend Hanzoai::Internal::Type::Converter # @param other [Object] @@ -19,7 +19,7 @@ def self.===(other) = other == true || other == false # @param other [Object] # # @return [Boolean] - def self.==(other) = other.is_a?(Class) && other <= Hanzoai::Internal::Type::BooleanModel + def self.==(other) = other.is_a?(Class) && other <= Hanzoai::Internal::Type::Boolean class << self # @api private diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index b21862e9..060e7628 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -64,7 +64,7 @@ def type_info(spec) in Hash type_info(spec.slice(:const, :enum, :union).first&.last) in true | false - -> { Hanzoai::Internal::Type::BooleanModel } + -> { Hanzoai::Internal::Type::Boolean } in Hanzoai::Internal::Type::Converter | Class | Symbol -> { spec } in NilClass | Integer | Float diff --git a/lib/hanzoai/models/cache_ping_response.rb b/lib/hanzoai/models/cache_ping_response.rb index 7b359034..59bbc6c1 100644 --- a/lib/hanzoai/models/cache_ping_response.rb +++ b/lib/hanzoai/models/cache_ping_response.rb @@ -27,7 +27,7 @@ class CachePingResponse < Hanzoai::Internal::Type::BaseModel # @!attribute ping_response # # @return [Boolean, nil] - optional :ping_response, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :ping_response, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute set_cache_response # diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index 0980f3eb..ebab648a 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -28,7 +28,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/customer_list_response.rb b/lib/hanzoai/models/customer_list_response.rb index cf2ef185..748e591c 100644 --- a/lib/hanzoai/models/customer_list_response.rb +++ b/lib/hanzoai/models/customer_list_response.rb @@ -6,7 +6,7 @@ class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean] - required :blocked, Hanzoai::Internal::Type::BooleanModel + required :blocked, Hanzoai::Internal::Type::Boolean # @!attribute user_id # diff --git a/lib/hanzoai/models/customer_retrieve_info_response.rb b/lib/hanzoai/models/customer_retrieve_info_response.rb index fe4a84b7..1c496707 100644 --- a/lib/hanzoai/models/customer_retrieve_info_response.rb +++ b/lib/hanzoai/models/customer_retrieve_info_response.rb @@ -7,7 +7,7 @@ class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean] - required :blocked, Hanzoai::Internal::Type::BooleanModel + required :blocked, Hanzoai::Internal::Type::Boolean # @!attribute user_id # diff --git a/lib/hanzoai/models/customer_update_params.rb b/lib/hanzoai/models/customer_update_params.rb index 04d23a78..97ba6954 100644 --- a/lib/hanzoai/models/customer_update_params.rb +++ b/lib/hanzoai/models/customer_update_params.rb @@ -28,7 +28,7 @@ class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/generate_key_response.rb b/lib/hanzoai/models/generate_key_response.rb index 6600caa9..3ae338df 100644 --- a/lib/hanzoai/models/generate_key_response.rb +++ b/lib/hanzoai/models/generate_key_response.rb @@ -34,7 +34,7 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index 2003c61f..05c16c7a 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -58,7 +58,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] default_on # # @return [Boolean, nil] - optional :default_on, Hanzoai::Internal::Type::BooleanModel + optional :default_on, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/key/regenerate_key_request.rb b/lib/hanzoai/models/key/regenerate_key_request.rb index 2fd637bd..126938c3 100644 --- a/lib/hanzoai/models/key/regenerate_key_request.rb +++ b/lib/hanzoai/models/key/regenerate_key_request.rb @@ -19,7 +19,7 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # @@ -114,7 +114,7 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @!attribute send_invite_email # # @return [Boolean, nil] - optional :send_invite_email, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :send_invite_email, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute soft_budget # diff --git a/lib/hanzoai/models/key_block_response.rb b/lib/hanzoai/models/key_block_response.rb index c9b6c933..958b37bc 100644 --- a/lib/hanzoai/models/key_block_response.rb +++ b/lib/hanzoai/models/key_block_response.rb @@ -28,7 +28,7 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # @@ -147,7 +147,7 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @!attribute [r] soft_budget_cooldown # # @return [Boolean, nil] - optional :soft_budget_cooldown, Hanzoai::Internal::Type::BooleanModel + optional :soft_budget_cooldown, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index 5d1d98d5..c543daeb 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -23,7 +23,7 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # @@ -113,7 +113,7 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @!attribute send_invite_email # # @return [Boolean, nil] - optional :send_invite_email, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :send_invite_email, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute soft_budget # diff --git a/lib/hanzoai/models/key_list_params.rb b/lib/hanzoai/models/key_list_params.rb index 8e4be13b..af10277c 100644 --- a/lib/hanzoai/models/key_list_params.rb +++ b/lib/hanzoai/models/key_list_params.rb @@ -12,7 +12,7 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # Include all keys for teams that user is an admin of. # # @return [Boolean, nil] - optional :include_team_keys, Hanzoai::Internal::Type::BooleanModel + optional :include_team_keys, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] @@ -44,7 +44,7 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # Return full key object # # @return [Boolean, nil] - optional :return_full_object, Hanzoai::Internal::Type::BooleanModel + optional :return_full_object, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index 2fb51a43..9942323e 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -84,7 +84,7 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # @@ -249,7 +249,7 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute [r] soft_budget_cooldown # # @return [Boolean, nil] - optional :soft_budget_cooldown, Hanzoai::Internal::Type::BooleanModel + optional :soft_budget_cooldown, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] @@ -272,7 +272,7 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute [r] team_blocked # # @return [Boolean, nil] - optional :team_blocked, Hanzoai::Internal::Type::BooleanModel + optional :team_blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index 46778d8b..2c639648 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -28,7 +28,7 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # diff --git a/lib/hanzoai/models/model/update_deployment.rb b/lib/hanzoai/models/model/update_deployment.rb index 768183a3..b3de2ff5 100644 --- a/lib/hanzoai/models/model/update_deployment.rb +++ b/lib/hanzoai/models/model/update_deployment.rb @@ -110,7 +110,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute merge_reasoning_content_in_choices # # @return [Boolean, nil] - optional :merge_reasoning_content_in_choices, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :merge_reasoning_content_in_choices, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute model # @@ -167,7 +167,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute use_in_pass_through # # @return [Boolean, nil] - optional :use_in_pass_through, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :use_in_pass_through, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute vertex_credentials # diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index b20ec902..f84de83b 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -120,7 +120,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute merge_reasoning_content_in_choices # # @return [Boolean, nil] - optional :merge_reasoning_content_in_choices, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :merge_reasoning_content_in_choices, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute model_info # @@ -172,7 +172,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute use_in_pass_through # # @return [Boolean, nil] - optional :use_in_pass_through, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :use_in_pass_through, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute vertex_credentials # diff --git a/lib/hanzoai/models/model_info.rb b/lib/hanzoai/models/model_info.rb index f64dc75c..1bcacc65 100644 --- a/lib/hanzoai/models/model_info.rb +++ b/lib/hanzoai/models/model_info.rb @@ -26,7 +26,7 @@ class ModelInfo < Hanzoai::Internal::Type::BaseModel # @!attribute [r] db_model # # @return [Boolean, nil] - optional :db_model, Hanzoai::Internal::Type::BooleanModel + optional :db_model, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/model_list_params.rb b/lib/hanzoai/models/model_list_params.rb index 39c891e0..9148763e 100644 --- a/lib/hanzoai/models/model_list_params.rb +++ b/lib/hanzoai/models/model_list_params.rb @@ -11,7 +11,7 @@ class ModelListParams < Hanzoai::Internal::Type::BaseModel # @!attribute return_wildcard_routes # # @return [Boolean, nil] - optional :return_wildcard_routes, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :return_wildcard_routes, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute team_id # diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index 40445288..2232cfb3 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -360,7 +360,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index cb141821..e2a73c96 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -358,7 +358,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index 3f6f9605..a44071da 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -358,7 +358,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index 6067a266..a52a8d70 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -357,7 +357,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index f7f0cc2b..3d1a4291 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -33,7 +33,7 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index 62ea0be7..a2bb72c4 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -20,7 +20,7 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index b1d7a8b9..b20df46c 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -21,7 +21,7 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute [r] blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel + optional :blocked, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index 8fcfadbc..6f1d52f3 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -16,7 +16,7 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # diff --git a/lib/hanzoai/models/user_create_params.rb b/lib/hanzoai/models/user_create_params.rb index ea8f0c70..e06fa18e 100644 --- a/lib/hanzoai/models/user_create_params.rb +++ b/lib/hanzoai/models/user_create_params.rb @@ -23,7 +23,7 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] auto_create_key # # @return [Boolean, nil] - optional :auto_create_key, Hanzoai::Internal::Type::BooleanModel + optional :auto_create_key, Hanzoai::Internal::Type::Boolean # @!parse # # @return [Boolean] @@ -32,7 +32,7 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # @@ -107,7 +107,7 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute send_invite_email # # @return [Boolean, nil] - optional :send_invite_email, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :send_invite_email, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute spend # diff --git a/lib/hanzoai/models/user_create_response.rb b/lib/hanzoai/models/user_create_response.rb index 074a701e..493e3f4e 100644 --- a/lib/hanzoai/models/user_create_response.rb +++ b/lib/hanzoai/models/user_create_response.rb @@ -34,7 +34,7 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # diff --git a/lib/hanzoai/models/user_update_params.rb b/lib/hanzoai/models/user_update_params.rb index bb353b3c..ca47bb37 100644 --- a/lib/hanzoai/models/user_update_params.rb +++ b/lib/hanzoai/models/user_update_params.rb @@ -23,7 +23,7 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute blocked # # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::BooleanModel, nil?: true + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true # @!attribute budget_duration # diff --git a/rbi/lib/hanzoai/internal/type/boolean_model.rbi b/rbi/lib/hanzoai/internal/type/boolean_model.rbi index 249f236f..57eee187 100644 --- a/rbi/lib/hanzoai/internal/type/boolean_model.rbi +++ b/rbi/lib/hanzoai/internal/type/boolean_model.rbi @@ -6,7 +6,7 @@ module Hanzoai # @api private # # Ruby has no Boolean class; this is something for models to refer to. - class BooleanModel + class Boolean extend Hanzoai::Internal::Type::Converter abstract! diff --git a/sig/hanzoai/internal/type/boolean_model.rbs b/sig/hanzoai/internal/type/boolean_model.rbs index 3a90897d..655b9cbd 100644 --- a/sig/hanzoai/internal/type/boolean_model.rbs +++ b/sig/hanzoai/internal/type/boolean_model.rbs @@ -1,7 +1,7 @@ module Hanzoai module Internal module Type - class BooleanModel + class Boolean extend Hanzoai::Internal::Type::Converter def self.===: (top other) -> bool diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 2f31f70b..52aecc31 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -22,7 +22,7 @@ class B < Hanzoai::Internal::Type::BaseModel def test_typing converters = [ Hanzoai::Internal::Type::Unknown, - Hanzoai::Internal::Type::BooleanModel, + Hanzoai::Internal::Type::Boolean, A, H, E, @@ -42,8 +42,8 @@ def test_coerce [Hanzoai::Internal::Type::Unknown, :a] => [{yes: 1}, :a], [NilClass, :a] => [{maybe: 1}, nil], [NilClass, nil] => [{yes: 1}, nil], - [Hanzoai::Internal::Type::BooleanModel, true] => [{yes: 1}, true], - [Hanzoai::Internal::Type::BooleanModel, "true"] => [{no: 1}, "true"], + [Hanzoai::Internal::Type::Boolean, true] => [{yes: 1}, true], + [Hanzoai::Internal::Type::Boolean, "true"] => [{no: 1}, "true"], [Integer, 1] => [{yes: 1}, 1], [Integer, 1.0] => [{maybe: 1}, 1], [Integer, "1"] => [{maybe: 1}, 1], @@ -85,8 +85,8 @@ def test_dump [String, B.new(a: "one", b: B.new(a: 1.0))] => {a: "one", b: {a: 1}}, [:b, B.new(a: "one", b: B.new(a: 1.0))] => {a: "one", b: {a: 1}}, [nil, B.new(a: "one", b: B.new(a: 1.0))] => {a: "one", b: {a: 1}}, - [Hanzoai::Internal::Type::BooleanModel, true] => true, - [Hanzoai::Internal::Type::BooleanModel, "true"] => "true", + [Hanzoai::Internal::Type::Boolean, true] => true, + [Hanzoai::Internal::Type::Boolean, "true"] => "true", [Integer, "1"] => "1", [Float, 1] => 1, [String, "one"] => "one", @@ -560,8 +560,8 @@ class M3 < M2 def test_equality cases = { [Hanzoai::Internal::Type::Unknown, Hanzoai::Internal::Type::Unknown] => true, - [Hanzoai::Internal::Type::BooleanModel, Hanzoai::Internal::Type::BooleanModel] => true, - [Hanzoai::Internal::Type::Unknown, Hanzoai::Internal::Type::BooleanModel] => false, + [Hanzoai::Internal::Type::Boolean, Hanzoai::Internal::Type::Boolean] => true, + [Hanzoai::Internal::Type::Unknown, Hanzoai::Internal::Type::Boolean] => false, [E1, E2] => true, [E1, E3] => false, [M1, M2] => false, diff --git a/test/hanzoai/resources/cache_test.rb b/test/hanzoai/resources/cache_test.rb index 4462f533..cb98f81c 100644 --- a/test/hanzoai/resources/cache_test.rb +++ b/test/hanzoai/resources/cache_test.rb @@ -32,7 +32,7 @@ def test_ping status: String, health_check_cache_params: Hanzoai::Internal::Type::Unknown | nil, llm_cache_params: String | nil, - ping_response: Hanzoai::Internal::Type::BooleanModel | nil, + ping_response: Hanzoai::Internal::Type::Boolean | nil, set_cache_response: String | nil } end diff --git a/test/hanzoai/resources/customer_test.rb b/test/hanzoai/resources/customer_test.rb index a147a670..1131683e 100644 --- a/test/hanzoai/resources/customer_test.rb +++ b/test/hanzoai/resources/customer_test.rb @@ -52,7 +52,7 @@ def test_retrieve_info_required_params assert_pattern do response => { - blocked: Hanzoai::Internal::Type::BooleanModel, + blocked: Hanzoai::Internal::Type::Boolean, user_id: String, alias_: String | nil, allowed_model_region: Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion | nil, diff --git a/test/hanzoai/resources/key_test.rb b/test/hanzoai/resources/key_test.rb index a86509a3..eb4bb334 100644 --- a/test/hanzoai/resources/key_test.rb +++ b/test/hanzoai/resources/key_test.rb @@ -48,7 +48,7 @@ def test_block_required_params token: String | nil, aliases: Hanzoai::Internal::Type::Unknown | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - blocked: Hanzoai::Internal::Type::BooleanModel | nil, + blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_reset_at: Time | nil, config: Hanzoai::Internal::Type::Unknown | nil, @@ -67,7 +67,7 @@ def test_block_required_params org_id: String | nil, permissions: Hanzoai::Internal::Type::Unknown | nil, rpm_limit: Integer | nil, - soft_budget_cooldown: Hanzoai::Internal::Type::BooleanModel | nil, + soft_budget_cooldown: Hanzoai::Internal::Type::Boolean | nil, spend: Float | nil, team_id: String | nil, tpm_limit: Integer | nil, @@ -107,7 +107,7 @@ def test_generate token: String | nil, aliases: Hanzoai::Internal::Type::Unknown | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - blocked: Hanzoai::Internal::Type::BooleanModel | nil, + blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_id: String | nil, config: Hanzoai::Internal::Type::Unknown | nil, @@ -152,7 +152,7 @@ def test_regenerate_by_key token: String | nil, aliases: Hanzoai::Internal::Type::Unknown | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - blocked: Hanzoai::Internal::Type::BooleanModel | nil, + blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_id: String | nil, config: Hanzoai::Internal::Type::Unknown | nil, diff --git a/test/hanzoai/resources/team_test.rb b/test/hanzoai/resources/team_test.rb index 5fc14ff1..4cee505a 100644 --- a/test/hanzoai/resources/team_test.rb +++ b/test/hanzoai/resources/team_test.rb @@ -14,7 +14,7 @@ def test_create response => { team_id: String, admins: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - blocked: Hanzoai::Internal::Type::BooleanModel | nil, + blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_reset_at: Time | nil, created_at: Time | nil, @@ -72,7 +72,7 @@ def test_add_member_required_params updated_team_memberships: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership]), updated_users: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser]), admins: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - blocked: Hanzoai::Internal::Type::BooleanModel | nil, + blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_reset_at: Time | nil, created_at: Time | nil, diff --git a/test/hanzoai/resources/user_test.rb b/test/hanzoai/resources/user_test.rb index 74afdd63..1952172f 100644 --- a/test/hanzoai/resources/user_test.rb +++ b/test/hanzoai/resources/user_test.rb @@ -17,7 +17,7 @@ def test_create token: String | nil, aliases: Hanzoai::Internal::Type::Unknown | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - blocked: Hanzoai::Internal::Type::BooleanModel | nil, + blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_id: String | nil, config: Hanzoai::Internal::Type::Unknown | nil, From 2d5c28ec3c12ba9615c13bc1931aefa0a8b5fb5f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:18:06 +0000 Subject: [PATCH 005/139] fix: converter should transform stringio into string where applicable (#47) --- lib/hanzoai.rb | 2 +- lib/hanzoai/internal/type/{boolean_model.rb => boolean.rb} | 0 lib/hanzoai/internal/type/converter.rb | 3 +++ .../hanzoai/internal/type/{boolean_model.rbi => boolean.rbi} | 0 sig/hanzoai/internal/type/{boolean_model.rbs => boolean.rbs} | 0 5 files changed, 4 insertions(+), 1 deletion(-) rename lib/hanzoai/internal/type/{boolean_model.rb => boolean.rb} (100%) rename rbi/lib/hanzoai/internal/type/{boolean_model.rbi => boolean.rbi} (100%) rename sig/hanzoai/internal/type/{boolean_model.rbs => boolean.rbs} (100%) diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index 8e12af16..3762431e 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -39,7 +39,7 @@ require_relative "hanzoai/internal/util" require_relative "hanzoai/internal/type/converter" require_relative "hanzoai/internal/type/unknown" -require_relative "hanzoai/internal/type/boolean_model" +require_relative "hanzoai/internal/type/boolean" require_relative "hanzoai/internal/type/enum" require_relative "hanzoai/internal/type/union" require_relative "hanzoai/internal/type/array_of" diff --git a/lib/hanzoai/internal/type/boolean_model.rb b/lib/hanzoai/internal/type/boolean.rb similarity index 100% rename from lib/hanzoai/internal/type/boolean_model.rb rename to lib/hanzoai/internal/type/boolean.rb diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index 060e7628..d9ffa7a4 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -168,6 +168,9 @@ def coerce( in String | Symbol | Numeric exactness[value.is_a?(Numeric) ? :maybe : :yes] += 1 return value.to_s + in StringIO + exactness[:yes] += 1 + return value.string else if strictness == :strong message = "no implicit conversion of #{value.class} into #{target.inspect}" diff --git a/rbi/lib/hanzoai/internal/type/boolean_model.rbi b/rbi/lib/hanzoai/internal/type/boolean.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/boolean_model.rbi rename to rbi/lib/hanzoai/internal/type/boolean.rbi diff --git a/sig/hanzoai/internal/type/boolean_model.rbs b/sig/hanzoai/internal/type/boolean.rbs similarity index 100% rename from sig/hanzoai/internal/type/boolean_model.rbs rename to sig/hanzoai/internal/type/boolean.rbs From 7973e72204d116692e351f3fee34abd358758e05 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:20:53 +0000 Subject: [PATCH 006/139] chore(internal): misc small improvements (#48) --- test/hanzoai/internal/type/base_model_test.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 52aecc31..81f7ed69 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -154,11 +154,11 @@ module E4 def test_coerce cases = { - # rubocop:disable Style/BooleanSymbol + # rubocop:disable Lint/BooleanSymbol [E1, true] => [{yes: 1}, true], [E1, false] => [{no: 1}, false], [E1, :true] => [{no: 1}, :true], - # rubocop:enable Style/BooleanSymbol + # rubocop:enable Lint/BooleanSymbol [E2, 1] => [{yes: 1}, 1], [E2, 1.0] => [{yes: 1}, 1], From 89910f54c548b5becec92c683c05f6ed1529b047 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:22:28 +0000 Subject: [PATCH 007/139] chore(internal): run rubocop linter in parallel (#49) --- .rubocop.yml | 6 +++--- Rakefile | 16 +++++++--------- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 70253e40..68115fc9 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -39,7 +39,7 @@ Layout/LineLength: AllowedPatterns: - "^\\s*#.*$" - ^require(_relative)? - - "Hanzoai::(Models|Resources)::" + - "Hanzoai::(Models|Resources|Test)::" Max: 110 Layout/MultilineArrayLineBreaks: @@ -122,9 +122,9 @@ Metrics/PerceivedComplexity: Naming/BlockForwarding: Enabled: false +# Underscores are generally useful for disambiguation. Naming/ClassAndModuleCamelCase: - Exclude: - - "**/*.rbi" + Enabled: false Naming/MethodParameterName: Enabled: false diff --git a/Rakefile b/Rakefile index 602ab225..883a061f 100644 --- a/Rakefile +++ b/Rakefile @@ -9,8 +9,6 @@ require "rubocop/rake_task" CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/]) -xargs = %w[xargs --no-run-if-empty --null --max-procs=0 --max-args=300 --] - multitask(default: [:test]) multitask(:test) do @@ -22,17 +20,17 @@ multitask(:test) do ruby(*%w[-w -e], rb, verbose: false) { fail unless _1 } end -RuboCop::RakeTask.new(:rubocop) do |t| - t.options = %w[--fail-level E] - if ENV.key?("CI") - t.options += %w[--format github] - 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 --] + +multitask(:rubocop) do + lint = xargs + %w[rubocop --fail-level E] + (ENV.key?("CI") ? %w[--format github] : []) + sh("#{rubo_find.shelljoin} | #{lint.shelljoin}") end multitask(:ruboformat) do - find = %w[find ./lib ./test ./rbi -type f -and ( -name *.rb -or -name *.rbi ) -print0] fmt = xargs + %w[rubocop --fail-level F --autocorrect --format simple --] - sh("#{find.shelljoin} | #{fmt.shelljoin}") + sh("#{rubo_find.shelljoin} | #{fmt.shelljoin}") end multitask(:syntax_tree) do From 126f259e106073b526eb3b1219802f00270ec8bf Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:23:56 +0000 Subject: [PATCH 008/139] chore(internal): rubocop rules (#50) --- .rubocop.yml | 5 +++-- lib/hanzoai/internal/type/converter.rb | 2 -- lib/hanzoai/internal/util.rb | 4 ---- 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 68115fc9..88fbf3d4 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -39,6 +39,8 @@ Layout/LineLength: AllowedPatterns: - "^\\s*#.*$" - ^require(_relative)? + - "Hanzoai::Internal::Type::BaseModel$" + - "^\\s*[A-Z0-9_]+ = :" - "Hanzoai::(Models|Resources|Test)::" Max: 110 @@ -109,8 +111,7 @@ Metrics/MethodLength: Enabled: false Metrics/ModuleLength: - Exclude: - - "**/*.rbi" + Enabled: false Metrics/ParameterLists: Enabled: false diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index d9ffa7a4..7022f499 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -3,7 +3,6 @@ module Hanzoai module Internal module Type - # rubocop:disable Metrics/ModuleLength # @api private module Converter # rubocop:disable Lint/UnusedMethodArgument @@ -218,7 +217,6 @@ def dump(target, value) end end end - # rubocop:enable Metrics/ModuleLength end end end diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index e9196068..96c1cd72 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -2,8 +2,6 @@ module Hanzoai module Internal - # rubocop:disable Metrics/ModuleLength - # @api private module Util # @api private @@ -694,7 +692,5 @@ def decode_sse(lines) end end end - - # rubocop:enable Metrics/ModuleLength end end From 3a9c8bff1a56f25bbc0aa651ab0c718440ea00ce Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:25:36 +0000 Subject: [PATCH 009/139] chore: always fold up method bodies in sorbet type definitions (#51) --- rbi/lib/hanzoai/client.rbi | 9 +- rbi/lib/hanzoai/errors.rbi | 9 +- .../internal/transport/base_client.rbi | 38 +++---- .../transport/pooled_net_requester.rbi | 18 ++-- rbi/lib/hanzoai/internal/type/array_of.rbi | 24 ++--- rbi/lib/hanzoai/internal/type/base_model.rbi | 77 +++++--------- rbi/lib/hanzoai/internal/type/base_page.rbi | 15 +-- rbi/lib/hanzoai/internal/type/boolean.rbi | 12 +-- rbi/lib/hanzoai/internal/type/converter.rbi | 16 +-- rbi/lib/hanzoai/internal/type/enum.rbi | 18 ++-- rbi/lib/hanzoai/internal/type/hash_of.rbi | 24 ++--- .../internal/type/request_parameters.rbi | 3 +- rbi/lib/hanzoai/internal/type/union.rbi | 30 ++---- rbi/lib/hanzoai/internal/type/unknown.rbi | 12 +-- rbi/lib/hanzoai/internal/util.rbi | 100 ++++++------------ .../models/active_list_callbacks_params.rbi | 6 +- .../models/add_add_allowed_ip_params.rbi | 6 +- .../models/anthropic_create_params.rbi | 6 +- .../models/anthropic_delete_params.rbi | 6 +- .../models/anthropic_modify_params.rbi | 6 +- .../models/anthropic_retrieve_params.rbi | 6 +- .../models/anthropic_update_params.rbi | 6 +- .../models/assemblyai_create_params.rbi | 6 +- .../models/assemblyai_delete_params.rbi | 6 +- .../models/assemblyai_patch_params.rbi | 6 +- .../models/assemblyai_retrieve_params.rbi | 6 +- .../models/assemblyai_update_params.rbi | 6 +- .../models/assistant_create_params.rbi | 6 +- .../models/assistant_delete_params.rbi | 6 +- .../hanzoai/models/assistant_list_params.rbi | 6 +- .../models/audio/speech_create_params.rbi | 6 +- .../audio/transcription_create_params.rbi | 6 +- rbi/lib/hanzoai/models/azure_call_params.rbi | 6 +- .../hanzoai/models/azure_create_params.rbi | 6 +- .../hanzoai/models/azure_delete_params.rbi | 6 +- rbi/lib/hanzoai/models/azure_patch_params.rbi | 6 +- .../hanzoai/models/azure_update_params.rbi | 6 +- .../batch_cancel_with_provider_params.rbi | 6 +- .../hanzoai/models/batch_create_params.rbi | 6 +- .../batch_create_with_provider_params.rbi | 6 +- rbi/lib/hanzoai/models/batch_list_params.rbi | 6 +- .../batch_list_with_provider_params.rbi | 6 +- .../hanzoai/models/batch_retrieve_params.rbi | 6 +- .../batch_retrieve_with_provider_params.rbi | 6 +- .../models/batches/cancel_cancel_params.rbi | 6 +- .../hanzoai/models/bedrock_create_params.rbi | 6 +- .../hanzoai/models/bedrock_delete_params.rbi | 6 +- .../hanzoai/models/bedrock_patch_params.rbi | 6 +- .../models/bedrock_retrieve_params.rbi | 6 +- .../hanzoai/models/bedrock_update_params.rbi | 6 +- rbi/lib/hanzoai/models/block_key_request.rbi | 6 +- rbi/lib/hanzoai/models/block_team_request.rbi | 6 +- rbi/lib/hanzoai/models/block_users.rbi | 6 +- .../hanzoai/models/budget_create_params.rbi | 6 +- .../hanzoai/models/budget_delete_params.rbi | 6 +- rbi/lib/hanzoai/models/budget_info_params.rbi | 6 +- rbi/lib/hanzoai/models/budget_list_params.rbi | 6 +- rbi/lib/hanzoai/models/budget_new.rbi | 13 +-- .../hanzoai/models/budget_settings_params.rbi | 6 +- .../hanzoai/models/budget_update_params.rbi | 6 +- .../cache/redi_retrieve_info_params.rbi | 6 +- .../hanzoai/models/cache_delete_params.rbi | 6 +- .../hanzoai/models/cache_flush_all_params.rbi | 6 +- rbi/lib/hanzoai/models/cache_ping_params.rbi | 6 +- .../hanzoai/models/cache_ping_response.rbi | 7 +- .../models/chat/completion_create_params.rbi | 6 +- .../hanzoai/models/client_get_home_params.rbi | 6 +- .../hanzoai/models/cohere_create_params.rbi | 6 +- .../hanzoai/models/cohere_delete_params.rbi | 6 +- .../hanzoai/models/cohere_modify_params.rbi | 6 +- .../hanzoai/models/cohere_retrieve_params.rbi | 6 +- .../hanzoai/models/cohere_update_params.rbi | 6 +- .../models/completion_create_params.rbi | 6 +- .../pass_through_endpoint_create_params.rbi | 6 +- .../pass_through_endpoint_delete_params.rbi | 6 +- .../pass_through_endpoint_list_params.rbi | 6 +- .../config/pass_through_endpoint_response.rbi | 6 +- .../pass_through_endpoint_update_params.rbi | 6 +- .../config/pass_through_generic_endpoint.rbi | 6 +- ...igurable_clientside_params_custom_auth.rbi | 6 +- .../models/credential_create_params.rbi | 3 +- .../models/credential_delete_params.rbi | 6 +- rbi/lib/hanzoai/models/credential_item.rbi | 6 +- .../hanzoai/models/credential_list_params.rbi | 6 +- .../hanzoai/models/customer_block_params.rbi | 6 +- .../hanzoai/models/customer_create_params.rbi | 16 +-- .../hanzoai/models/customer_delete_params.rbi | 6 +- .../hanzoai/models/customer_list_params.rbi | 6 +- .../hanzoai/models/customer_list_response.rbi | 17 +-- .../models/customer_retrieve_info_params.rbi | 6 +- .../customer_retrieve_info_response.rbi | 17 +-- .../models/customer_unblock_params.rbi | 6 +- .../hanzoai/models/customer_update_params.rbi | 10 +- .../delete_create_allowed_ip_params.rbi | 6 +- .../models/embedding_create_params.rbi | 6 +- .../hanzoai/models/engine_complete_params.rbi | 6 +- .../hanzoai/models/engine_embed_params.rbi | 6 +- .../models/engines/chat_complete_params.rbi | 6 +- .../models/eu_assemblyai_create_params.rbi | 6 +- .../models/eu_assemblyai_delete_params.rbi | 6 +- .../models/eu_assemblyai_patch_params.rbi | 6 +- .../models/eu_assemblyai_retrieve_params.rbi | 6 +- .../models/eu_assemblyai_update_params.rbi | 6 +- rbi/lib/hanzoai/models/file_create_params.rbi | 6 +- rbi/lib/hanzoai/models/file_delete_params.rbi | 6 +- rbi/lib/hanzoai/models/file_list_params.rbi | 6 +- .../hanzoai/models/file_retrieve_params.rbi | 6 +- .../models/files/content_retrieve_params.rbi | 6 +- .../models/fine_tuning/job_create_params.rbi | 25 ++--- .../models/fine_tuning/job_list_params.rbi | 9 +- .../fine_tuning/job_retrieve_params.rbi | 9 +- .../fine_tuning/jobs/cancel_create_params.rbi | 6 +- .../hanzoai/models/gemini_create_params.rbi | 6 +- .../hanzoai/models/gemini_delete_params.rbi | 6 +- .../hanzoai/models/gemini_patch_params.rbi | 6 +- .../hanzoai/models/gemini_retrieve_params.rbi | 6 +- .../hanzoai/models/gemini_update_params.rbi | 6 +- .../hanzoai/models/generate_key_response.rbi | 7 +- .../models/global/spend_list_tags_params.rbi | 6 +- .../global/spend_list_tags_response.rbi | 19 ++-- .../models/global/spend_reset_params.rbi | 6 +- .../global/spend_retrieve_report_params.rbi | 10 +- .../global/spend_retrieve_report_response.rbi | 19 ++-- .../hanzoai/models/guardrail_list_params.rbi | 6 +- .../models/guardrail_list_response.rbi | 21 ++-- .../models/health_check_all_params.rbi | 6 +- .../models/health_check_liveliness_params.rbi | 6 +- .../models/health_check_liveness_params.rbi | 6 +- .../models/health_check_readiness_params.rbi | 6 +- .../models/health_check_services_params.rbi | 9 +- .../images/generation_create_params.rbi | 6 +- rbi/lib/hanzoai/models/ip_address.rbi | 6 +- .../models/key/regenerate_key_request.rbi | 7 +- rbi/lib/hanzoai/models/key_block_params.rbi | 6 +- rbi/lib/hanzoai/models/key_block_response.rbi | 10 +- .../models/key_check_health_params.rbi | 6 +- .../models/key_check_health_response.rbi | 18 ++-- rbi/lib/hanzoai/models/key_delete_params.rbi | 6 +- .../hanzoai/models/key_generate_params.rbi | 7 +- rbi/lib/hanzoai/models/key_list_params.rbi | 7 +- rbi/lib/hanzoai/models/key_list_response.rbi | 25 ++--- .../models/key_regenerate_by_key_params.rbi | 6 +- .../models/key_retrieve_info_params.rbi | 6 +- rbi/lib/hanzoai/models/key_unblock_params.rbi | 6 +- rbi/lib/hanzoai/models/key_update_params.rbi | 7 +- .../hanzoai/models/langfuse_create_params.rbi | 6 +- .../hanzoai/models/langfuse_delete_params.rbi | 6 +- .../hanzoai/models/langfuse_patch_params.rbi | 6 +- .../models/langfuse_retrieve_params.rbi | 6 +- .../hanzoai/models/langfuse_update_params.rbi | 6 +- rbi/lib/hanzoai/models/member.rbi | 9 +- .../hanzoai/models/model/info_list_params.rbi | 6 +- .../models/model/update_deployment.rbi | 25 ++--- .../models/model/update_full_params.rbi | 6 +- .../models/model/update_partial_params.rbi | 6 +- .../hanzoai/models/model_create_params.rbi | 25 ++--- .../hanzoai/models/model_delete_params.rbi | 6 +- .../model_group_retrieve_info_params.rbi | 6 +- rbi/lib/hanzoai/models/model_info.rbi | 10 +- rbi/lib/hanzoai/models/model_list_params.rbi | 6 +- .../models/moderation_create_params.rbi | 6 +- .../openai/deployment_complete_params.rbi | 6 +- .../models/openai/deployment_embed_params.rbi | 6 +- .../deployments/chat_complete_params.rbi | 6 +- .../hanzoai/models/openai_create_params.rbi | 6 +- .../hanzoai/models/openai_delete_params.rbi | 6 +- .../hanzoai/models/openai_patch_params.rbi | 6 +- .../hanzoai/models/openai_retrieve_params.rbi | 6 +- .../hanzoai/models/openai_update_params.rbi | 6 +- rbi/lib/hanzoai/models/org_member.rbi | 9 +- .../organization/info_deprecated_params.rbi | 6 +- .../organization/info_retrieve_params.rbi | 6 +- .../organization/info_retrieve_response.rbi | 44 +++----- .../models/organization_add_member_params.rbi | 9 +- .../organization_add_member_response.rbi | 57 ++++------ .../models/organization_create_params.rbi | 7 +- .../models/organization_create_response.rbi | 7 +- .../organization_delete_member_params.rbi | 6 +- .../models/organization_delete_params.rbi | 6 +- .../models/organization_delete_response.rbi | 44 +++----- .../models/organization_list_params.rbi | 6 +- .../models/organization_list_response.rbi | 44 +++----- .../organization_update_member_params.rbi | 10 +- .../organization_update_member_response.rbi | 14 +-- .../models/organization_update_params.rbi | 7 +- .../models/organization_update_response.rbi | 44 +++----- .../models/provider_list_budgets_params.rbi | 6 +- .../models/provider_list_budgets_response.rbi | 12 +-- .../hanzoai/models/rerank_create_params.rbi | 6 +- .../models/rerank_create_v1_params.rbi | 6 +- .../models/rerank_create_v2_params.rbi | 6 +- .../hanzoai/models/response_create_params.rbi | 6 +- .../hanzoai/models/response_delete_params.rbi | 6 +- .../models/response_retrieve_params.rbi | 6 +- .../responses/input_item_list_params.rbi | 6 +- rbi/lib/hanzoai/models/route_list_params.rbi | 6 +- .../models/setting_retrieve_params.rbi | 6 +- .../models/spend_calculate_spend_params.rbi | 6 +- .../hanzoai/models/spend_list_logs_params.rbi | 3 +- .../models/spend_list_logs_response.rbi | 19 ++-- .../hanzoai/models/spend_list_tags_params.rbi | 6 +- .../models/spend_list_tags_response.rbi | 19 ++-- .../models/team/callback_add_params.rbi | 6 +- .../models/team/callback_retrieve_params.rbi | 6 +- .../hanzoai/models/team/model_add_params.rbi | 6 +- .../models/team/model_remove_params.rbi | 6 +- .../hanzoai/models/team_add_member_params.rbi | 9 +- .../models/team_add_member_response.rbi | 58 ++++------ rbi/lib/hanzoai/models/team_block_params.rbi | 6 +- rbi/lib/hanzoai/models/team_create_params.rbi | 7 +- .../hanzoai/models/team_create_response.rbi | 16 +-- rbi/lib/hanzoai/models/team_delete_params.rbi | 6 +- .../models/team_disable_logging_params.rbi | 6 +- .../models/team_list_available_params.rbi | 6 +- rbi/lib/hanzoai/models/team_list_params.rbi | 6 +- .../models/team_remove_member_params.rbi | 6 +- .../models/team_retrieve_info_params.rbi | 6 +- .../hanzoai/models/team_unblock_params.rbi | 6 +- .../models/team_update_member_params.rbi | 6 +- .../models/team_update_member_response.rbi | 6 +- rbi/lib/hanzoai/models/team_update_params.rbi | 7 +- rbi/lib/hanzoai/models/test_ping_params.rbi | 6 +- .../hanzoai/models/thread_create_params.rbi | 6 +- .../hanzoai/models/thread_retrieve_params.rbi | 6 +- .../models/threads/message_create_params.rbi | 6 +- .../models/threads/message_list_params.rbi | 6 +- .../models/threads/run_create_params.rbi | 6 +- rbi/lib/hanzoai/models/user_create_params.rbi | 10 +- .../hanzoai/models/user_create_response.rbi | 10 +- rbi/lib/hanzoai/models/user_delete_params.rbi | 6 +- rbi/lib/hanzoai/models/user_list_params.rbi | 6 +- .../models/user_retrieve_info_params.rbi | 6 +- rbi/lib/hanzoai/models/user_update_params.rbi | 10 +- ...til_get_supported_openai_params_params.rbi | 6 +- .../models/util_token_counter_params.rbi | 6 +- .../models/util_token_counter_response.rbi | 6 +- .../models/util_transform_request_params.rbi | 9 +- .../util_transform_request_response.rbi | 3 +- .../models/vertex_ai_create_params.rbi | 6 +- .../models/vertex_ai_delete_params.rbi | 6 +- .../hanzoai/models/vertex_ai_patch_params.rbi | 6 +- .../models/vertex_ai_retrieve_params.rbi | 6 +- .../models/vertex_ai_update_params.rbi | 6 +- rbi/lib/hanzoai/request_options.rbi | 6 +- rbi/lib/hanzoai/resources/active.rbi | 6 +- rbi/lib/hanzoai/resources/add.rbi | 6 +- rbi/lib/hanzoai/resources/anthropic.rbi | 18 ++-- rbi/lib/hanzoai/resources/assemblyai.rbi | 18 ++-- rbi/lib/hanzoai/resources/assistants.rbi | 12 +-- rbi/lib/hanzoai/resources/audio.rbi | 3 +- rbi/lib/hanzoai/resources/audio/speech.rbi | 6 +- .../resources/audio/transcriptions.rbi | 6 +- rbi/lib/hanzoai/resources/azure.rbi | 18 ++-- rbi/lib/hanzoai/resources/batches.rbi | 26 ++--- rbi/lib/hanzoai/resources/batches/cancel.rbi | 6 +- rbi/lib/hanzoai/resources/bedrock.rbi | 18 ++-- rbi/lib/hanzoai/resources/budget.rbi | 23 ++-- rbi/lib/hanzoai/resources/cache.rbi | 12 +-- rbi/lib/hanzoai/resources/cache/redis.rbi | 6 +- rbi/lib/hanzoai/resources/chat.rbi | 3 +- .../hanzoai/resources/chat/completions.rbi | 6 +- rbi/lib/hanzoai/resources/cohere.rbi | 18 ++-- rbi/lib/hanzoai/resources/completions.rbi | 6 +- rbi/lib/hanzoai/resources/config.rbi | 3 +- .../config/pass_through_endpoint.rbi | 16 +-- rbi/lib/hanzoai/resources/credentials.rbi | 9 +- rbi/lib/hanzoai/resources/customer.rbi | 27 ++--- rbi/lib/hanzoai/resources/delete.rbi | 6 +- rbi/lib/hanzoai/resources/embeddings.rbi | 6 +- rbi/lib/hanzoai/resources/engines.rbi | 9 +- rbi/lib/hanzoai/resources/engines/chat.rbi | 6 +- rbi/lib/hanzoai/resources/eu_assemblyai.rbi | 18 ++-- rbi/lib/hanzoai/resources/files.rbi | 15 +-- rbi/lib/hanzoai/resources/files/content.rbi | 6 +- rbi/lib/hanzoai/resources/fine_tuning.rbi | 3 +- .../hanzoai/resources/fine_tuning/jobs.rbi | 13 +-- .../resources/fine_tuning/jobs/cancel.rbi | 6 +- rbi/lib/hanzoai/resources/gemini.rbi | 18 ++-- rbi/lib/hanzoai/resources/global.rbi | 3 +- rbi/lib/hanzoai/resources/global/spend.rbi | 14 +-- rbi/lib/hanzoai/resources/guardrails.rbi | 6 +- rbi/lib/hanzoai/resources/health.rbi | 20 ++-- rbi/lib/hanzoai/resources/images.rbi | 3 +- .../hanzoai/resources/images/generations.rbi | 6 +- rbi/lib/hanzoai/resources/key.rbi | 38 ++----- rbi/lib/hanzoai/resources/key/regenerate.rbi | 3 +- rbi/lib/hanzoai/resources/langfuse.rbi | 18 ++-- rbi/lib/hanzoai/resources/model.rbi | 10 +- rbi/lib/hanzoai/resources/model/info.rbi | 6 +- rbi/lib/hanzoai/resources/model/update.rbi | 9 +- rbi/lib/hanzoai/resources/model_group.rbi | 6 +- rbi/lib/hanzoai/resources/models.rbi | 6 +- rbi/lib/hanzoai/resources/moderations.rbi | 6 +- rbi/lib/hanzoai/resources/openai.rbi | 18 ++-- .../hanzoai/resources/openai/deployments.rbi | 9 +- .../resources/openai/deployments/chat.rbi | 6 +- rbi/lib/hanzoai/resources/organization.rbi | 27 ++--- .../hanzoai/resources/organization/info.rbi | 9 +- rbi/lib/hanzoai/resources/provider.rbi | 6 +- rbi/lib/hanzoai/resources/rerank.rbi | 12 +-- rbi/lib/hanzoai/resources/responses.rbi | 12 +-- .../resources/responses/input_items.rbi | 6 +- rbi/lib/hanzoai/resources/routes.rbi | 6 +- rbi/lib/hanzoai/resources/settings.rbi | 6 +- rbi/lib/hanzoai/resources/spend.rbi | 14 +-- rbi/lib/hanzoai/resources/team.rbi | 41 +++---- rbi/lib/hanzoai/resources/team/callback.rbi | 10 +- rbi/lib/hanzoai/resources/team/model.rbi | 9 +- rbi/lib/hanzoai/resources/test.rbi | 6 +- rbi/lib/hanzoai/resources/threads.rbi | 9 +- .../hanzoai/resources/threads/messages.rbi | 9 +- rbi/lib/hanzoai/resources/threads/runs.rbi | 6 +- rbi/lib/hanzoai/resources/user.rbi | 23 ++-- rbi/lib/hanzoai/resources/utils.rbi | 12 +-- rbi/lib/hanzoai/resources/vertex_ai.rbi | 18 ++-- 315 files changed, 1010 insertions(+), 2106 deletions(-) diff --git a/rbi/lib/hanzoai/client.rbi b/rbi/lib/hanzoai/client.rbi index 5578478e..864be404 100644 --- a/rbi/lib/hanzoai/client.rbi +++ b/rbi/lib/hanzoai/client.rbi @@ -169,13 +169,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def get_home(request_options: {}) - end + def get_home(request_options: {}); end # @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 @@ -208,7 +206,6 @@ module Hanzoai timeout: DEFAULT_TIMEOUT_IN_SECONDS, initial_retry_delay: DEFAULT_INITIAL_RETRY_DELAY, max_retry_delay: DEFAULT_MAX_RETRY_DELAY - ) - end + ); end end end diff --git a/rbi/lib/hanzoai/errors.rbi b/rbi/lib/hanzoai/errors.rbi index 2acfcc0a..2cd5a9e6 100644 --- a/rbi/lib/hanzoai/errors.rbi +++ b/rbi/lib/hanzoai/errors.rbi @@ -32,8 +32,7 @@ module Hanzoai ) .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 < Hanzoai::Errors::APIError @@ -89,8 +88,7 @@ module Hanzoai ) .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 @@ -107,8 +105,7 @@ module Hanzoai ) .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 < Hanzoai::Errors::APIStatusError diff --git a/rbi/lib/hanzoai/internal/transport/base_client.rbi b/rbi/lib/hanzoai/internal/transport/base_client.rbi index 26a798c8..6aaa4a7d 100644 --- a/rbi/lib/hanzoai/internal/transport/base_client.rbi +++ b/rbi/lib/hanzoai/internal/transport/base_client.rbi @@ -52,8 +52,7 @@ module Hanzoai class << self # @api private sig { params(req: Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape).void } - def validate!(req) - end + def validate!(req); end # @api private sig do @@ -65,8 +64,7 @@ module Hanzoai ) ).returns(T::Boolean) end - def should_retry?(status, headers:) - end + def should_retry?(status, headers:); end # @api private sig do @@ -77,8 +75,7 @@ module Hanzoai ) .returns(Hanzoai::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 @@ -88,8 +85,7 @@ module Hanzoai ) .void end - def reap_connection!(status, stream:) - end + def reap_connection!(status, stream:); end end # @api private @@ -118,18 +114,14 @@ module Hanzoai 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 @@ -140,13 +132,11 @@ module Hanzoai ) .returns(Hanzoai::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 + private def retry_delay(headers, retry_count:); end # @api private sig do @@ -158,8 +148,7 @@ module Hanzoai ) .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. @@ -200,12 +189,9 @@ module Hanzoai stream: nil, model: Hanzoai::Internal::Type::Unknown, options: {} - ) - end - + ); end sig { returns(String) } - def inspect - end + def inspect; end end end end diff --git a/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi index ec5f3361..54839407 100644 --- a/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi +++ b/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi @@ -23,13 +23,11 @@ module Hanzoai 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 @@ -39,27 +37,23 @@ module Hanzoai ) .returns(Net::HTTPGenericRequest) 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 + private def with_pool(url, deadline:, &blk); end # @api private sig do params(request: Hanzoai::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/lib/hanzoai/internal/type/array_of.rbi b/rbi/lib/hanzoai/internal/type/array_of.rbi index 064ceac2..ff71da5d 100644 --- a/rbi/lib/hanzoai/internal/type/array_of.rbi +++ b/rbi/lib/hanzoai/internal/type/array_of.rbi @@ -25,16 +25,13 @@ module Hanzoai ) .returns(T.attached_class) end - def self.[](type_info, spec = {}) - end + def self.[](type_info, spec = {}); end sig(:final) { params(other: T.anything).returns(T::Boolean) } - def ===(other) - end + def ===(other); end sig(:final) { params(other: T.anything).returns(T::Boolean) } - def ==(other) - end + def ==(other); end # @api private sig(:final) do @@ -46,8 +43,7 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::State) .returns(T.any(T::Array[T.anything], T.anything)) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig(:final) do @@ -55,18 +51,15 @@ module Hanzoai .params(value: T.any(T::Array[T.anything], T.anything)) .returns(T.any(T::Array[T.anything], T.anything)) end - def dump(value) - end + def dump(value); end # @api private sig(:final) { returns(Elem) } - protected def item_type - end + protected def item_type; end # @api private sig(:final) { returns(T::Boolean) } - protected def nilable? - end + protected def nilable?; end # @api private sig(:final) do @@ -80,8 +73,7 @@ module Hanzoai ) .void end - def initialize(type_info, spec = {}) - end + def initialize(type_info, spec = {}); end end end end diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index 6ed1fee3..37d100dc 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -20,31 +20,29 @@ module Hanzoai sig do returns( T::Hash[ - Symbol, - T.all( - Hanzoai::Internal::Type::BaseModel::KnownFieldShape, - {type_fn: T.proc.returns(Hanzoai::Internal::Type::Converter::Input)} - ) + Symbol, + T.all( + Hanzoai::Internal::Type::BaseModel::KnownFieldShape, + {type_fn: T.proc.returns(Hanzoai::Internal::Type::Converter::Input)} + ) ] ) end - def known_fields - end + def known_fields; end # @api private sig do returns( T::Hash[ - Symbol, - T.all( - Hanzoai::Internal::Type::BaseModel::KnownFieldShape, - {type: Hanzoai::Internal::Type::Converter::Input} - ) + Symbol, + T.all( + Hanzoai::Internal::Type::BaseModel::KnownFieldShape, + {type: Hanzoai::Internal::Type::Converter::Input} + ) ] ) end - def fields - end + def fields; end # @api private sig do @@ -66,8 +64,7 @@ module Hanzoai ) .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 @@ -82,8 +79,7 @@ module Hanzoai ) .void end - def required(name_sym, type_info, spec = {}) - end + def required(name_sym, type_info, spec = {}); end # @api private sig do @@ -98,32 +94,27 @@ module Hanzoai ) .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 end sig { params(other: T.anything).returns(T::Boolean) } - def ==(other) - end + def ==(other); end class << self # @api private @@ -135,8 +126,7 @@ module Hanzoai ) .returns(T.any(T.attached_class, T.anything)) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig do @@ -144,8 +134,7 @@ module Hanzoai .params(value: T.any(T.attached_class, T.anything)) .returns(T.any(T::Hash[T.anything, T.anything], T.anything)) end - def dump(value) - end + def dump(value); end end # Returns the raw value associated with the given key, if found. Otherwise, nil is @@ -155,8 +144,7 @@ module Hanzoai # 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) # @@ -167,8 +155,7 @@ module Hanzoai # This method is not recursive. The returned value is shared by the object, so it # should not be mutated. sig { overridable.returns(Hanzoai::Internal::AnyHash) } - def to_h - end + def to_h; end # Returns a Hash of the data underlying this object. O(1) # @@ -179,29 +166,23 @@ module Hanzoai # This method is not recursive. The returned value is shared by the object, so it # should not be mutated. sig { overridable.returns(Hanzoai::Internal::AnyHash) } - def to_hash - end + def to_hash; end sig { params(keys: T.nilable(T::Array[Symbol])).returns(Hanzoai::Internal::AnyHash) } - def deconstruct_keys(keys) - end + def deconstruct_keys(keys); 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 + def self.new(data = {}); end sig { returns(String) } - def inspect - end + def inspect; end end end end diff --git a/rbi/lib/hanzoai/internal/type/base_page.rbi b/rbi/lib/hanzoai/internal/type/base_page.rbi index f4d87678..b208ca7d 100644 --- a/rbi/lib/hanzoai/internal/type/base_page.rbi +++ b/rbi/lib/hanzoai/internal/type/base_page.rbi @@ -8,20 +8,16 @@ module Hanzoai 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 @@ -33,8 +29,7 @@ module Hanzoai ) .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/lib/hanzoai/internal/type/boolean.rbi b/rbi/lib/hanzoai/internal/type/boolean.rbi index 57eee187..8d3570e4 100644 --- a/rbi/lib/hanzoai/internal/type/boolean.rbi +++ b/rbi/lib/hanzoai/internal/type/boolean.rbi @@ -13,12 +13,10 @@ module Hanzoai final! sig(:final) { params(other: T.anything).returns(T::Boolean) } - def self.===(other) - end + def self.===(other); end sig(:final) { params(other: T.anything).returns(T::Boolean) } - def self.==(other) - end + def self.==(other); end class << self # @api private @@ -27,15 +25,13 @@ module Hanzoai .params(value: T.any(T::Boolean, T.anything), state: Hanzoai::Internal::Type::Converter::State) .returns(T.any(T::Boolean, T.anything)) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig(:final) do override.params(value: T.any(T::Boolean, T.anything)).returns(T.any(T::Boolean, T.anything)) end - def dump(value) - end + def dump(value); end end end end diff --git a/rbi/lib/hanzoai/internal/type/converter.rbi b/rbi/lib/hanzoai/internal/type/converter.rbi index fad47785..23338e69 100644 --- a/rbi/lib/hanzoai/internal/type/converter.rbi +++ b/rbi/lib/hanzoai/internal/type/converter.rbi @@ -23,13 +23,11 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::State ).returns(T.anything) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig { overridable.params(value: T.anything).returns(T.anything) } - def dump(value) - end + def dump(value); end class << self # @api private @@ -47,8 +45,7 @@ module Hanzoai ) .returns(T.proc.returns(T.anything)) end - def self.type_info(spec) - end + def self.type_info(spec); end # @api private # @@ -92,15 +89,12 @@ module Hanzoai # # See implementation below for more details. state: {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} - ) - end - + ); end # @api private sig do params(target: Hanzoai::Internal::Type::Converter::Input, value: T.anything).returns(T.anything) end - def self.dump(target, value) - end + def self.dump(target, value); end end end end diff --git a/rbi/lib/hanzoai/internal/type/enum.rbi b/rbi/lib/hanzoai/internal/type/enum.rbi index 5a97e155..96ce457f 100644 --- a/rbi/lib/hanzoai/internal/type/enum.rbi +++ b/rbi/lib/hanzoai/internal/type/enum.rbi @@ -20,23 +20,19 @@ module Hanzoai # 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 + def values; end # @api private # # Guard against thread safety issues by instantiating `@values`. sig { void } - private def finalize! - end + private def finalize!; 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 # @api private # @@ -52,13 +48,11 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::State) .returns(T.any(Symbol, T.anything)) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig { override.params(value: T.any(Symbol, T.anything)).returns(T.any(Symbol, T.anything)) } - def dump(value) - end + def dump(value); end end end end diff --git a/rbi/lib/hanzoai/internal/type/hash_of.rbi b/rbi/lib/hanzoai/internal/type/hash_of.rbi index 974b8c77..86723940 100644 --- a/rbi/lib/hanzoai/internal/type/hash_of.rbi +++ b/rbi/lib/hanzoai/internal/type/hash_of.rbi @@ -25,16 +25,13 @@ module Hanzoai ) .returns(T.attached_class) end - def self.[](type_info, spec = {}) - end + def self.[](type_info, spec = {}); end sig(:final) { params(other: T.anything).returns(T::Boolean) } - def ===(other) - end + def ===(other); end sig(:final) { params(other: T.anything).returns(T::Boolean) } - def ==(other) - end + def ==(other); end # @api private sig(:final) do @@ -45,8 +42,7 @@ module Hanzoai ) .returns(T.any(Hanzoai::Internal::AnyHash, T.anything)) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig(:final) do @@ -54,18 +50,15 @@ module Hanzoai .params(value: T.any(T::Hash[T.anything, T.anything], T.anything)) .returns(T.any(Hanzoai::Internal::AnyHash, T.anything)) end - def dump(value) - end + def dump(value); end # @api private sig(:final) { returns(Elem) } - protected def item_type - end + protected def item_type; end # @api private sig(:final) { returns(T::Boolean) } - protected def nilable? - end + protected def nilable?; end # @api private sig(:final) do @@ -79,8 +72,7 @@ module Hanzoai ) .void end - def initialize(type_info, spec = {}) - end + def initialize(type_info, spec = {}); end end end end diff --git a/rbi/lib/hanzoai/internal/type/request_parameters.rbi b/rbi/lib/hanzoai/internal/type/request_parameters.rbi index 6f19a8dc..43ea0d51 100644 --- a/rbi/lib/hanzoai/internal/type/request_parameters.rbi +++ b/rbi/lib/hanzoai/internal/type/request_parameters.rbi @@ -13,8 +13,7 @@ module Hanzoai module Converter # @api private sig { params(params: T.anything).returns([T.anything, Hanzoai::Internal::AnyHash]) } - def dump_request(params) - end + def dump_request(params); end end end end diff --git a/rbi/lib/hanzoai/internal/type/union.rbi b/rbi/lib/hanzoai/internal/type/union.rbi index ec1df27f..6c07b000 100644 --- a/rbi/lib/hanzoai/internal/type/union.rbi +++ b/rbi/lib/hanzoai/internal/type/union.rbi @@ -13,23 +13,19 @@ module Hanzoai sig do returns(T::Array[[T.nilable(Symbol), T.proc.returns(Hanzoai::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 @@ -39,21 +35,17 @@ module Hanzoai ) .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 # @api private sig do @@ -62,13 +54,11 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::State ).returns(T.anything) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig { override.params(value: T.anything).returns(T.anything) } - def dump(value) - end + def dump(value); end end end end diff --git a/rbi/lib/hanzoai/internal/type/unknown.rbi b/rbi/lib/hanzoai/internal/type/unknown.rbi index c68ed913..17085d9b 100644 --- a/rbi/lib/hanzoai/internal/type/unknown.rbi +++ b/rbi/lib/hanzoai/internal/type/unknown.rbi @@ -13,12 +13,10 @@ module Hanzoai final! sig(:final) { params(other: T.anything).returns(T::Boolean) } - def self.===(other) - end + def self.===(other); end sig(:final) { params(other: T.anything).returns(T::Boolean) } - def self.==(other) - end + def self.==(other); end class << self # @api private @@ -28,13 +26,11 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::State ).returns(T.anything) end - def coerce(value, state:) - end + def coerce(value, state:); end # @api private sig(:final) { override.params(value: T.anything).returns(T.anything) } - def dump(value) - end + def dump(value); end end end end diff --git a/rbi/lib/hanzoai/internal/util.rbi b/rbi/lib/hanzoai/internal/util.rbi index 16fe9ef3..44dd9549 100644 --- a/rbi/lib/hanzoai/internal/util.rbi +++ b/rbi/lib/hanzoai/internal/util.rbi @@ -6,58 +6,48 @@ module Hanzoai 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 + 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 + 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 + 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 + 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 + 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 + private def deep_merge_lr(lhs, rhs, concat: false); end # @api private # @@ -73,9 +63,7 @@ module Hanzoai sentinel: nil, # whether to merge sequences by concatenation. concat: false - ) - end - + ); end # @api private sig do params( @@ -86,35 +74,30 @@ module Hanzoai ) .returns(T.nilable(T.anything)) end - def dig(data, pick, sentinel = nil, &blk) - end + def dig(data, pick, sentinel = nil, &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 + 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)) end - def encode_query(query) - end + def encode_query(query); end end ParsedUriShape = @@ -131,21 +114,18 @@ module Hanzoai class << self # @api private sig { params(url: T.any(URI::Generic, String)).returns(Hanzoai::Internal::Util::ParsedUriShape) } - def parse_uri(url) - end + def parse_uri(url); end # @api private sig { params(parsed: Hanzoai::Internal::Util::ParsedUriShape).returns(URI::Generic) } - def unparse_uri(parsed) - end + def unparse_uri(parsed); end # @api private sig do params(lhs: Hanzoai::Internal::Util::ParsedUriShape, rhs: Hanzoai::Internal::Util::ParsedUriShape) .returns(URI::Generic) end - def join_parsed_uri(lhs, rhs) - end + def join_parsed_uri(lhs, rhs); end end class << self @@ -157,8 +137,7 @@ module Hanzoai ) .returns(T::Hash[String, String]) end - def normalized_headers(*headers) - end + def normalized_headers(*headers); end end # @api private @@ -167,13 +146,11 @@ module Hanzoai class ReadIOAdapter # @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 + def read(max_len = nil, out_string = nil); end # @api private sig do @@ -183,14 +160,12 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(stream, &blk) - end + def self.new(stream, &blk); end end class << self sig { params(blk: T.proc.params(y: Enumerator::Yielder).void).returns(T::Enumerable[String]) } - def writable_enum(&blk) - end + def writable_enum(&blk); end end class << self @@ -198,18 +173,15 @@ module Hanzoai sig do params(y: Enumerator::Yielder, boundary: String, key: T.any(Symbol, String), val: T.anything).void end - private def write_multipart_chunk(y, boundary:, key:, val:) - end + private def write_multipart_chunk(y, boundary:, key:, val:); end # @api private sig { params(body: T.anything).returns([String, T::Enumerable[String]]) } - private def encode_multipart_streaming(body) - 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 + def encode_content(headers, body); end # @api private sig do @@ -220,8 +192,7 @@ module Hanzoai ) .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 @@ -232,13 +203,11 @@ module Hanzoai 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 @@ -248,8 +217,7 @@ module Hanzoai ) .returns(T::Enumerable[T.anything]) end - def chain_fused(enum, &blk) - end + def chain_fused(enum, &blk); end end ServerSentEvent = @@ -265,8 +233,7 @@ module Hanzoai class << self # @api private sig { params(enum: T::Enumerable[String]).returns(T::Enumerable[String]) } - def decode_lines(enum) - end + def decode_lines(enum); end # @api private # @@ -274,8 +241,7 @@ module Hanzoai sig do params(lines: T::Enumerable[String]).returns(T::Enumerable[Hanzoai::Internal::Util::ServerSentEvent]) end - def decode_sse(lines) - end + def decode_sse(lines); end end end end diff --git a/rbi/lib/hanzoai/models/active_list_callbacks_params.rbi b/rbi/lib/hanzoai/models/active_list_callbacks_params.rbi index 87c30d59..8dceb932 100644 --- a/rbi/lib/hanzoai/models/active_list_callbacks_params.rbi +++ b/rbi/lib/hanzoai/models/active_list_callbacks_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/add_add_allowed_ip_params.rbi b/rbi/lib/hanzoai/models/add_add_allowed_ip_params.rbi index 2242b6e7..01030501 100644 --- a/rbi/lib/hanzoai/models/add_add_allowed_ip_params.rbi +++ b/rbi/lib/hanzoai/models/add_add_allowed_ip_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/anthropic_create_params.rbi b/rbi/lib/hanzoai/models/anthropic_create_params.rbi index 67c2fb04..a39cdb2b 100644 --- a/rbi/lib/hanzoai/models/anthropic_create_params.rbi +++ b/rbi/lib/hanzoai/models/anthropic_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/anthropic_delete_params.rbi b/rbi/lib/hanzoai/models/anthropic_delete_params.rbi index b0e29e80..1bd51e96 100644 --- a/rbi/lib/hanzoai/models/anthropic_delete_params.rbi +++ b/rbi/lib/hanzoai/models/anthropic_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/anthropic_modify_params.rbi b/rbi/lib/hanzoai/models/anthropic_modify_params.rbi index 3e7e16e4..bcfb8f8b 100644 --- a/rbi/lib/hanzoai/models/anthropic_modify_params.rbi +++ b/rbi/lib/hanzoai/models/anthropic_modify_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/anthropic_retrieve_params.rbi b/rbi/lib/hanzoai/models/anthropic_retrieve_params.rbi index b3b59f1e..079fc075 100644 --- a/rbi/lib/hanzoai/models/anthropic_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/anthropic_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/anthropic_update_params.rbi b/rbi/lib/hanzoai/models/anthropic_update_params.rbi index b99451d9..85befe5a 100644 --- a/rbi/lib/hanzoai/models/anthropic_update_params.rbi +++ b/rbi/lib/hanzoai/models/anthropic_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assemblyai_create_params.rbi b/rbi/lib/hanzoai/models/assemblyai_create_params.rbi index 03c64810..5518d7ed 100644 --- a/rbi/lib/hanzoai/models/assemblyai_create_params.rbi +++ b/rbi/lib/hanzoai/models/assemblyai_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assemblyai_delete_params.rbi b/rbi/lib/hanzoai/models/assemblyai_delete_params.rbi index acc65532..dc8925da 100644 --- a/rbi/lib/hanzoai/models/assemblyai_delete_params.rbi +++ b/rbi/lib/hanzoai/models/assemblyai_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assemblyai_patch_params.rbi b/rbi/lib/hanzoai/models/assemblyai_patch_params.rbi index 8da77efd..38a3cac8 100644 --- a/rbi/lib/hanzoai/models/assemblyai_patch_params.rbi +++ b/rbi/lib/hanzoai/models/assemblyai_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assemblyai_retrieve_params.rbi b/rbi/lib/hanzoai/models/assemblyai_retrieve_params.rbi index 0892129d..a4a1a9d7 100644 --- a/rbi/lib/hanzoai/models/assemblyai_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/assemblyai_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assemblyai_update_params.rbi b/rbi/lib/hanzoai/models/assemblyai_update_params.rbi index 506744d9..9bcc3f30 100644 --- a/rbi/lib/hanzoai/models/assemblyai_update_params.rbi +++ b/rbi/lib/hanzoai/models/assemblyai_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assistant_create_params.rbi b/rbi/lib/hanzoai/models/assistant_create_params.rbi index a19adbb7..4cae7180 100644 --- a/rbi/lib/hanzoai/models/assistant_create_params.rbi +++ b/rbi/lib/hanzoai/models/assistant_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assistant_delete_params.rbi b/rbi/lib/hanzoai/models/assistant_delete_params.rbi index a537a99c..5ca9078b 100644 --- a/rbi/lib/hanzoai/models/assistant_delete_params.rbi +++ b/rbi/lib/hanzoai/models/assistant_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/assistant_list_params.rbi b/rbi/lib/hanzoai/models/assistant_list_params.rbi index f96e5f07..b4156045 100644 --- a/rbi/lib/hanzoai/models/assistant_list_params.rbi +++ b/rbi/lib/hanzoai/models/assistant_list_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/audio/speech_create_params.rbi b/rbi/lib/hanzoai/models/audio/speech_create_params.rbi index 5ad8427a..0b7e3be6 100644 --- a/rbi/lib/hanzoai/models/audio/speech_create_params.rbi +++ b/rbi/lib/hanzoai/models/audio/speech_create_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi b/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi index 9f9cd905..1ddce5b4 100644 --- a/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi +++ b/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(file:, request_options: {}) - end + def self.new(file:, request_options: {}); end sig { override.returns({file: T.any(IO, StringIO), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/azure_call_params.rbi b/rbi/lib/hanzoai/models/azure_call_params.rbi index d87ec04c..14ef3365 100644 --- a/rbi/lib/hanzoai/models/azure_call_params.rbi +++ b/rbi/lib/hanzoai/models/azure_call_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/azure_create_params.rbi b/rbi/lib/hanzoai/models/azure_create_params.rbi index 1cac62b5..75a21aad 100644 --- a/rbi/lib/hanzoai/models/azure_create_params.rbi +++ b/rbi/lib/hanzoai/models/azure_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/azure_delete_params.rbi b/rbi/lib/hanzoai/models/azure_delete_params.rbi index a636f105..d1cc6d60 100644 --- a/rbi/lib/hanzoai/models/azure_delete_params.rbi +++ b/rbi/lib/hanzoai/models/azure_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/azure_patch_params.rbi b/rbi/lib/hanzoai/models/azure_patch_params.rbi index de829dbd..299d9b6d 100644 --- a/rbi/lib/hanzoai/models/azure_patch_params.rbi +++ b/rbi/lib/hanzoai/models/azure_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/azure_update_params.rbi b/rbi/lib/hanzoai/models/azure_update_params.rbi index a2b0a37c..b0b33d91 100644 --- a/rbi/lib/hanzoai/models/azure_update_params.rbi +++ b/rbi/lib/hanzoai/models/azure_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batch_cancel_with_provider_params.rbi b/rbi/lib/hanzoai/models/batch_cancel_with_provider_params.rbi index 869446fe..5bb95eb2 100644 --- a/rbi/lib/hanzoai/models/batch_cancel_with_provider_params.rbi +++ b/rbi/lib/hanzoai/models/batch_cancel_with_provider_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(provider:, request_options: {}) - end + def self.new(provider:, request_options: {}); end sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batch_create_params.rbi b/rbi/lib/hanzoai/models/batch_create_params.rbi index 51154a95..ba3ff4f3 100644 --- a/rbi/lib/hanzoai/models/batch_create_params.rbi +++ b/rbi/lib/hanzoai/models/batch_create_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(provider: nil, request_options: {}) - end + def self.new(provider: nil, request_options: {}); end sig { override.returns({provider: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batch_create_with_provider_params.rbi b/rbi/lib/hanzoai/models/batch_create_with_provider_params.rbi index b0360415..232dfe3c 100644 --- a/rbi/lib/hanzoai/models/batch_create_with_provider_params.rbi +++ b/rbi/lib/hanzoai/models/batch_create_with_provider_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batch_list_params.rbi b/rbi/lib/hanzoai/models/batch_list_params.rbi index 964cabe1..a17dbda0 100644 --- a/rbi/lib/hanzoai/models/batch_list_params.rbi +++ b/rbi/lib/hanzoai/models/batch_list_params.rbi @@ -24,8 +24,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, provider: nil, request_options: {}) - end + def self.new(after: nil, limit: nil, provider: nil, request_options: {}); end sig do override @@ -38,8 +37,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batch_list_with_provider_params.rbi b/rbi/lib/hanzoai/models/batch_list_with_provider_params.rbi index e27e9274..47872d12 100644 --- a/rbi/lib/hanzoai/models/batch_list_with_provider_params.rbi +++ b/rbi/lib/hanzoai/models/batch_list_with_provider_params.rbi @@ -20,8 +20,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, request_options: {}) - end + def self.new(after: nil, limit: nil, request_options: {}); end sig do override @@ -31,8 +30,7 @@ module Hanzoai request_options: Hanzoai::RequestOptions }) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batch_retrieve_params.rbi b/rbi/lib/hanzoai/models/batch_retrieve_params.rbi index 47edaee6..e88751e6 100644 --- a/rbi/lib/hanzoai/models/batch_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/batch_retrieve_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(provider: nil, request_options: {}) - end + def self.new(provider: nil, request_options: {}); end sig { override.returns({provider: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batch_retrieve_with_provider_params.rbi b/rbi/lib/hanzoai/models/batch_retrieve_with_provider_params.rbi index 61969d70..8eec40ba 100644 --- a/rbi/lib/hanzoai/models/batch_retrieve_with_provider_params.rbi +++ b/rbi/lib/hanzoai/models/batch_retrieve_with_provider_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(provider:, request_options: {}) - end + def self.new(provider:, request_options: {}); end sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/batches/cancel_cancel_params.rbi b/rbi/lib/hanzoai/models/batches/cancel_cancel_params.rbi index 18209f2b..3c0093e3 100644 --- a/rbi/lib/hanzoai/models/batches/cancel_cancel_params.rbi +++ b/rbi/lib/hanzoai/models/batches/cancel_cancel_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(provider: nil, request_options: {}) - end + def self.new(provider: nil, request_options: {}); end sig { override.returns({provider: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/bedrock_create_params.rbi b/rbi/lib/hanzoai/models/bedrock_create_params.rbi index b448d308..8d0ae47d 100644 --- a/rbi/lib/hanzoai/models/bedrock_create_params.rbi +++ b/rbi/lib/hanzoai/models/bedrock_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/bedrock_delete_params.rbi b/rbi/lib/hanzoai/models/bedrock_delete_params.rbi index f2ea6948..41af6125 100644 --- a/rbi/lib/hanzoai/models/bedrock_delete_params.rbi +++ b/rbi/lib/hanzoai/models/bedrock_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/bedrock_patch_params.rbi b/rbi/lib/hanzoai/models/bedrock_patch_params.rbi index 633ec3a5..1788e8bb 100644 --- a/rbi/lib/hanzoai/models/bedrock_patch_params.rbi +++ b/rbi/lib/hanzoai/models/bedrock_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/bedrock_retrieve_params.rbi b/rbi/lib/hanzoai/models/bedrock_retrieve_params.rbi index e4b2fc93..4f1f872d 100644 --- a/rbi/lib/hanzoai/models/bedrock_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/bedrock_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/bedrock_update_params.rbi b/rbi/lib/hanzoai/models/bedrock_update_params.rbi index a24de227..0bc294e3 100644 --- a/rbi/lib/hanzoai/models/bedrock_update_params.rbi +++ b/rbi/lib/hanzoai/models/bedrock_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/block_key_request.rbi b/rbi/lib/hanzoai/models/block_key_request.rbi index 2ca6f67c..cf28a886 100644 --- a/rbi/lib/hanzoai/models/block_key_request.rbi +++ b/rbi/lib/hanzoai/models/block_key_request.rbi @@ -7,12 +7,10 @@ module Hanzoai attr_accessor :key sig { params(key: String).returns(T.attached_class) } - def self.new(key:) - end + def self.new(key:); end sig { override.returns({key: String}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/block_team_request.rbi b/rbi/lib/hanzoai/models/block_team_request.rbi index d9353c19..8bedccf6 100644 --- a/rbi/lib/hanzoai/models/block_team_request.rbi +++ b/rbi/lib/hanzoai/models/block_team_request.rbi @@ -7,12 +7,10 @@ module Hanzoai attr_accessor :team_id sig { params(team_id: String).returns(T.attached_class) } - def self.new(team_id:) - end + def self.new(team_id:); end sig { override.returns({team_id: String}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/block_users.rbi b/rbi/lib/hanzoai/models/block_users.rbi index 6aa77e31..434f4899 100644 --- a/rbi/lib/hanzoai/models/block_users.rbi +++ b/rbi/lib/hanzoai/models/block_users.rbi @@ -7,12 +7,10 @@ module Hanzoai attr_accessor :user_ids sig { params(user_ids: T::Array[String]).returns(T.attached_class) } - def self.new(user_ids:) - end + def self.new(user_ids:); end sig { override.returns({user_ids: T::Array[String]}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/budget_create_params.rbi b/rbi/lib/hanzoai/models/budget_create_params.rbi index f87fcf6d..d4971470 100644 --- a/rbi/lib/hanzoai/models/budget_create_params.rbi +++ b/rbi/lib/hanzoai/models/budget_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/budget_delete_params.rbi b/rbi/lib/hanzoai/models/budget_delete_params.rbi index 89c983ce..dbf0f805 100644 --- a/rbi/lib/hanzoai/models/budget_delete_params.rbi +++ b/rbi/lib/hanzoai/models/budget_delete_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(id:, request_options: {}) - end + def self.new(id:, request_options: {}); end sig { override.returns({id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/budget_info_params.rbi b/rbi/lib/hanzoai/models/budget_info_params.rbi index 4375f8b3..16c95c56 100644 --- a/rbi/lib/hanzoai/models/budget_info_params.rbi +++ b/rbi/lib/hanzoai/models/budget_info_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(budgets:, request_options: {}) - end + def self.new(budgets:, request_options: {}); end sig { override.returns({budgets: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/budget_list_params.rbi b/rbi/lib/hanzoai/models/budget_list_params.rbi index 1ebeb9af..2207fb15 100644 --- a/rbi/lib/hanzoai/models/budget_list_params.rbi +++ b/rbi/lib/hanzoai/models/budget_list_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/budget_new.rbi b/rbi/lib/hanzoai/models/budget_new.rbi index 49830ca1..26d3e970 100644 --- a/rbi/lib/hanzoai/models/budget_new.rbi +++ b/rbi/lib/hanzoai/models/budget_new.rbi @@ -58,9 +58,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -76,8 +74,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -101,8 +98,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil) - end + def self.new(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil); end sig do override @@ -115,8 +111,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/budget_settings_params.rbi b/rbi/lib/hanzoai/models/budget_settings_params.rbi index c5042f50..39ef7fef 100644 --- a/rbi/lib/hanzoai/models/budget_settings_params.rbi +++ b/rbi/lib/hanzoai/models/budget_settings_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(budget_id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(budget_id:, request_options: {}) - end + def self.new(budget_id:, request_options: {}); end sig { override.returns({budget_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/budget_update_params.rbi b/rbi/lib/hanzoai/models/budget_update_params.rbi index f5e4730b..658ec2f4 100644 --- a/rbi/lib/hanzoai/models/budget_update_params.rbi +++ b/rbi/lib/hanzoai/models/budget_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cache/redi_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/cache/redi_retrieve_info_params.rbi index 84ddb1ae..1549a299 100644 --- a/rbi/lib/hanzoai/models/cache/redi_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/cache/redi_retrieve_info_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cache_delete_params.rbi b/rbi/lib/hanzoai/models/cache_delete_params.rbi index 79de27ab..32780b6d 100644 --- a/rbi/lib/hanzoai/models/cache_delete_params.rbi +++ b/rbi/lib/hanzoai/models/cache_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cache_flush_all_params.rbi b/rbi/lib/hanzoai/models/cache_flush_all_params.rbi index 80b3b250..1ee43962 100644 --- a/rbi/lib/hanzoai/models/cache_flush_all_params.rbi +++ b/rbi/lib/hanzoai/models/cache_flush_all_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cache_ping_params.rbi b/rbi/lib/hanzoai/models/cache_ping_params.rbi index e09a1093..ff40f0a4 100644 --- a/rbi/lib/hanzoai/models/cache_ping_params.rbi +++ b/rbi/lib/hanzoai/models/cache_ping_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cache_ping_response.rbi b/rbi/lib/hanzoai/models/cache_ping_response.rbi index 7713be4c..37b48a19 100644 --- a/rbi/lib/hanzoai/models/cache_ping_response.rbi +++ b/rbi/lib/hanzoai/models/cache_ping_response.rbi @@ -39,9 +39,7 @@ module Hanzoai llm_cache_params: nil, ping_response: nil, set_cache_response: nil - ) - end - + ); end sig do override .returns( @@ -55,8 +53,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/chat/completion_create_params.rbi b/rbi/lib/hanzoai/models/chat/completion_create_params.rbi index 2e3457a3..2247bfad 100644 --- a/rbi/lib/hanzoai/models/chat/completion_create_params.rbi +++ b/rbi/lib/hanzoai/models/chat/completion_create_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(model: nil, request_options: {}) - end + def self.new(model: nil, request_options: {}); end sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/client_get_home_params.rbi b/rbi/lib/hanzoai/models/client_get_home_params.rbi index fd63ecf8..fc0df592 100644 --- a/rbi/lib/hanzoai/models/client_get_home_params.rbi +++ b/rbi/lib/hanzoai/models/client_get_home_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cohere_create_params.rbi b/rbi/lib/hanzoai/models/cohere_create_params.rbi index cbb03831..18d5f3cf 100644 --- a/rbi/lib/hanzoai/models/cohere_create_params.rbi +++ b/rbi/lib/hanzoai/models/cohere_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cohere_delete_params.rbi b/rbi/lib/hanzoai/models/cohere_delete_params.rbi index 115c2ace..381ed98e 100644 --- a/rbi/lib/hanzoai/models/cohere_delete_params.rbi +++ b/rbi/lib/hanzoai/models/cohere_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cohere_modify_params.rbi b/rbi/lib/hanzoai/models/cohere_modify_params.rbi index d5438ca5..82bbc989 100644 --- a/rbi/lib/hanzoai/models/cohere_modify_params.rbi +++ b/rbi/lib/hanzoai/models/cohere_modify_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cohere_retrieve_params.rbi b/rbi/lib/hanzoai/models/cohere_retrieve_params.rbi index 39514925..eb60e0df 100644 --- a/rbi/lib/hanzoai/models/cohere_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/cohere_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/cohere_update_params.rbi b/rbi/lib/hanzoai/models/cohere_update_params.rbi index f0b26fd3..1b647171 100644 --- a/rbi/lib/hanzoai/models/cohere_update_params.rbi +++ b/rbi/lib/hanzoai/models/cohere_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/completion_create_params.rbi b/rbi/lib/hanzoai/models/completion_create_params.rbi index 4aac8a30..2e7c51e3 100644 --- a/rbi/lib/hanzoai/models/completion_create_params.rbi +++ b/rbi/lib/hanzoai/models/completion_create_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(model: nil, request_options: {}) - end + def self.new(model: nil, request_options: {}); end sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_create_params.rbi b/rbi/lib/hanzoai/models/config/pass_through_endpoint_create_params.rbi index 71fa7afe..eeeaef41 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_endpoint_create_params.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_endpoint_create_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rbi b/rbi/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rbi index bd5c1189..fb78a196 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(endpoint_id:, request_options: {}) - end + def self.new(endpoint_id:, request_options: {}); end sig { override.returns({endpoint_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_list_params.rbi b/rbi/lib/hanzoai/models/config/pass_through_endpoint_list_params.rbi index 3be67082..cb9238ee 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_endpoint_list_params.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_endpoint_list_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(endpoint_id: nil, request_options: {}) - end + def self.new(endpoint_id: nil, request_options: {}); end sig { override.returns({endpoint_id: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_response.rbi b/rbi/lib/hanzoai/models/config/pass_through_endpoint_response.rbi index a7c4e44b..9f7be0fb 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_endpoint_response.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_endpoint_response.rbi @@ -13,12 +13,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(endpoints:) - end + def self.new(endpoints:); end sig { override.returns({endpoints: T::Array[Hanzoai::Models::Config::PassThroughGenericEndpoint]}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_update_params.rbi b/rbi/lib/hanzoai/models/config/pass_through_endpoint_update_params.rbi index 7eef34c4..00416df2 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_endpoint_update_params.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_endpoint_update_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi b/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi index 475f5ef4..4041fd62 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi @@ -18,12 +18,10 @@ module Hanzoai attr_accessor :target sig { params(headers: T.anything, path: String, target: String).returns(T.attached_class) } - def self.new(headers:, path:, target:) - end + def self.new(headers:, path:, target:); end sig { override.returns({headers: T.anything, path: String, target: String}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/configurable_clientside_params_custom_auth.rbi b/rbi/lib/hanzoai/models/configurable_clientside_params_custom_auth.rbi index 9cfe8653..e84d3df1 100644 --- a/rbi/lib/hanzoai/models/configurable_clientside_params_custom_auth.rbi +++ b/rbi/lib/hanzoai/models/configurable_clientside_params_custom_auth.rbi @@ -7,12 +7,10 @@ module Hanzoai attr_accessor :api_base sig { params(api_base: String).returns(T.attached_class) } - def self.new(api_base:) - end + def self.new(api_base:); end sig { override.returns({api_base: String}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/credential_create_params.rbi b/rbi/lib/hanzoai/models/credential_create_params.rbi index 6ee653ea..019cdab4 100644 --- a/rbi/lib/hanzoai/models/credential_create_params.rbi +++ b/rbi/lib/hanzoai/models/credential_create_params.rbi @@ -49,8 +49,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/credential_delete_params.rbi b/rbi/lib/hanzoai/models/credential_delete_params.rbi index 322086c3..ece86dd7 100644 --- a/rbi/lib/hanzoai/models/credential_delete_params.rbi +++ b/rbi/lib/hanzoai/models/credential_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/credential_item.rbi b/rbi/lib/hanzoai/models/credential_item.rbi index 10236b53..e9bf6de1 100644 --- a/rbi/lib/hanzoai/models/credential_item.rbi +++ b/rbi/lib/hanzoai/models/credential_item.rbi @@ -16,8 +16,7 @@ module Hanzoai params(credential_info: T.anything, credential_name: String, credential_values: T.anything) .returns(T.attached_class) end - def self.new(credential_info:, credential_name:, credential_values:) - end + def self.new(credential_info:, credential_name:, credential_values:); end sig do override.returns( @@ -28,8 +27,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/credential_list_params.rbi b/rbi/lib/hanzoai/models/credential_list_params.rbi index 5db0f430..89d44c87 100644 --- a/rbi/lib/hanzoai/models/credential_list_params.rbi +++ b/rbi/lib/hanzoai/models/credential_list_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_block_params.rbi b/rbi/lib/hanzoai/models/customer_block_params.rbi index c3c0c64e..a3b57316 100644 --- a/rbi/lib/hanzoai/models/customer_block_params.rbi +++ b/rbi/lib/hanzoai/models/customer_block_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_create_params.rbi b/rbi/lib/hanzoai/models/customer_create_params.rbi index 5df08c44..3d02ae58 100644 --- a/rbi/lib/hanzoai/models/customer_create_params.rbi +++ b/rbi/lib/hanzoai/models/customer_create_params.rbi @@ -92,9 +92,7 @@ module Hanzoai soft_budget: nil, tpm_limit: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -116,8 +114,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum @@ -130,8 +127,7 @@ module Hanzoai US = T.let(:us, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol]) } - def self.values - end + def self.values; end end class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel @@ -156,8 +152,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil) - end + def self.new(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil); end sig do override @@ -170,8 +165,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_delete_params.rbi b/rbi/lib/hanzoai/models/customer_delete_params.rbi index 7901802a..2052e32a 100644 --- a/rbi/lib/hanzoai/models/customer_delete_params.rbi +++ b/rbi/lib/hanzoai/models/customer_delete_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(user_ids:, request_options: {}) - end + def self.new(user_ids:, request_options: {}); end sig { override.returns({user_ids: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_list_params.rbi b/rbi/lib/hanzoai/models/customer_list_params.rbi index 98aae8df..1de860a7 100644 --- a/rbi/lib/hanzoai/models/customer_list_params.rbi +++ b/rbi/lib/hanzoai/models/customer_list_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_list_response.rbi b/rbi/lib/hanzoai/models/customer_list_response.rbi index 30edfdf1..d87f9f51 100644 --- a/rbi/lib/hanzoai/models/customer_list_response.rbi +++ b/rbi/lib/hanzoai/models/customer_list_response.rbi @@ -56,9 +56,7 @@ module Hanzoai default_model: nil, llm_budget_table: nil, spend: nil - ) - end - + ); end sig do override .returns( @@ -73,8 +71,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum @@ -88,8 +85,7 @@ module Hanzoai US = T.let(:us, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol]) } - def self.values - end + def self.values; end end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -135,9 +131,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -152,8 +146,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end diff --git a/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi index 6ee732ad..16fd6d5e 100644 --- a/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(end_user_id:, request_options: {}) - end + def self.new(end_user_id:, request_options: {}); end sig { override.returns({end_user_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi b/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi index b13f411f..9472b368 100644 --- a/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi +++ b/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi @@ -60,9 +60,7 @@ module Hanzoai default_model: nil, llm_budget_table: nil, spend: nil - ) - end - + ); end sig do override .returns( @@ -77,8 +75,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum @@ -94,8 +91,7 @@ module Hanzoai sig do override.returns(T::Array[Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol]) end - def self.values - end + def self.values; end end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -141,9 +137,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -158,8 +152,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_unblock_params.rbi b/rbi/lib/hanzoai/models/customer_unblock_params.rbi index 9cadf3f6..2ebcd38c 100644 --- a/rbi/lib/hanzoai/models/customer_unblock_params.rbi +++ b/rbi/lib/hanzoai/models/customer_unblock_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/customer_update_params.rbi b/rbi/lib/hanzoai/models/customer_update_params.rbi index c014c5ea..b65d43af 100644 --- a/rbi/lib/hanzoai/models/customer_update_params.rbi +++ b/rbi/lib/hanzoai/models/customer_update_params.rbi @@ -52,9 +52,7 @@ module Hanzoai default_model: nil, max_budget: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -70,8 +68,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum @@ -84,8 +81,7 @@ module Hanzoai US = T.let(:us, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/delete_create_allowed_ip_params.rbi b/rbi/lib/hanzoai/models/delete_create_allowed_ip_params.rbi index d742eed6..830e28cc 100644 --- a/rbi/lib/hanzoai/models/delete_create_allowed_ip_params.rbi +++ b/rbi/lib/hanzoai/models/delete_create_allowed_ip_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/embedding_create_params.rbi b/rbi/lib/hanzoai/models/embedding_create_params.rbi index 65857746..64815e05 100644 --- a/rbi/lib/hanzoai/models/embedding_create_params.rbi +++ b/rbi/lib/hanzoai/models/embedding_create_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(model: nil, request_options: {}) - end + def self.new(model: nil, request_options: {}); end sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/engine_complete_params.rbi b/rbi/lib/hanzoai/models/engine_complete_params.rbi index 05ce5a6f..5c619344 100644 --- a/rbi/lib/hanzoai/models/engine_complete_params.rbi +++ b/rbi/lib/hanzoai/models/engine_complete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/engine_embed_params.rbi b/rbi/lib/hanzoai/models/engine_embed_params.rbi index 434a058f..fe3c7b0e 100644 --- a/rbi/lib/hanzoai/models/engine_embed_params.rbi +++ b/rbi/lib/hanzoai/models/engine_embed_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/engines/chat_complete_params.rbi b/rbi/lib/hanzoai/models/engines/chat_complete_params.rbi index 66a05445..4a81a9ec 100644 --- a/rbi/lib/hanzoai/models/engines/chat_complete_params.rbi +++ b/rbi/lib/hanzoai/models/engines/chat_complete_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_create_params.rbi b/rbi/lib/hanzoai/models/eu_assemblyai_create_params.rbi index f2cc90b4..bd3dbd6a 100644 --- a/rbi/lib/hanzoai/models/eu_assemblyai_create_params.rbi +++ b/rbi/lib/hanzoai/models/eu_assemblyai_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_delete_params.rbi b/rbi/lib/hanzoai/models/eu_assemblyai_delete_params.rbi index 4cb7e9c5..fb79c3c0 100644 --- a/rbi/lib/hanzoai/models/eu_assemblyai_delete_params.rbi +++ b/rbi/lib/hanzoai/models/eu_assemblyai_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_patch_params.rbi b/rbi/lib/hanzoai/models/eu_assemblyai_patch_params.rbi index b8438f0a..6a097ccb 100644 --- a/rbi/lib/hanzoai/models/eu_assemblyai_patch_params.rbi +++ b/rbi/lib/hanzoai/models/eu_assemblyai_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_retrieve_params.rbi b/rbi/lib/hanzoai/models/eu_assemblyai_retrieve_params.rbi index 33ed691d..eebee6e0 100644 --- a/rbi/lib/hanzoai/models/eu_assemblyai_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/eu_assemblyai_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_update_params.rbi b/rbi/lib/hanzoai/models/eu_assemblyai_update_params.rbi index 44248feb..8fb3b66e 100644 --- a/rbi/lib/hanzoai/models/eu_assemblyai_update_params.rbi +++ b/rbi/lib/hanzoai/models/eu_assemblyai_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/file_create_params.rbi b/rbi/lib/hanzoai/models/file_create_params.rbi index aba5b98c..8bb47fc2 100644 --- a/rbi/lib/hanzoai/models/file_create_params.rbi +++ b/rbi/lib/hanzoai/models/file_create_params.rbi @@ -27,8 +27,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(file:, purpose:, custom_llm_provider: nil, request_options: {}) - end + def self.new(file:, purpose:, custom_llm_provider: nil, request_options: {}); end sig do override @@ -41,8 +40,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/file_delete_params.rbi b/rbi/lib/hanzoai/models/file_delete_params.rbi index cf7b965e..b648dded 100644 --- a/rbi/lib/hanzoai/models/file_delete_params.rbi +++ b/rbi/lib/hanzoai/models/file_delete_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(provider:, request_options: {}) - end + def self.new(provider:, request_options: {}); end sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/file_list_params.rbi b/rbi/lib/hanzoai/models/file_list_params.rbi index 51733961..52677c1a 100644 --- a/rbi/lib/hanzoai/models/file_list_params.rbi +++ b/rbi/lib/hanzoai/models/file_list_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(purpose: nil, request_options: {}) - end + def self.new(purpose: nil, request_options: {}); end sig { override.returns({purpose: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/file_retrieve_params.rbi b/rbi/lib/hanzoai/models/file_retrieve_params.rbi index 2e4d4e67..a91ea1e1 100644 --- a/rbi/lib/hanzoai/models/file_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/file_retrieve_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(provider:, request_options: {}) - end + def self.new(provider:, request_options: {}); end sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/files/content_retrieve_params.rbi b/rbi/lib/hanzoai/models/files/content_retrieve_params.rbi index 3441ee1d..2c7f22e9 100644 --- a/rbi/lib/hanzoai/models/files/content_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/files/content_retrieve_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(provider:, request_options: {}) - end + def self.new(provider:, request_options: {}); end sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi b/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi index cf33d50a..177c134c 100644 --- a/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi +++ b/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi @@ -67,9 +67,7 @@ module Hanzoai suffix: nil, validation_file: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -86,8 +84,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module CustomLlmProvider extend Hanzoai::Internal::Type::Enum @@ -103,8 +100,7 @@ module Hanzoai T.let(:vertex_ai, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol]) } - def self.values - end + def self.values; end end class Hyperparameters < Hanzoai::Internal::Type::BaseModel @@ -125,8 +121,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) - end + def self.new(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil); end sig do override @@ -138,31 +133,27 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module BatchSize extend Hanzoai::Internal::Type::Union sig { override.returns([String, Integer]) } - def self.variants - end + def self.variants; end end module LearningRateMultiplier extend Hanzoai::Internal::Type::Union sig { override.returns([String, Float]) } - def self.variants - end + def self.variants; end end module NEpochs extend Hanzoai::Internal::Type::Union sig { override.returns([String, Integer]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi b/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi index 23c9d001..a790f51d 100644 --- a/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi +++ b/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi @@ -25,8 +25,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(custom_llm_provider:, after: nil, limit: nil, request_options: {}) - end + def self.new(custom_llm_provider:, after: nil, limit: nil, request_options: {}); end sig do override @@ -39,8 +38,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module CustomLlmProvider extend Hanzoai::Internal::Type::Enum @@ -54,8 +52,7 @@ module Hanzoai AZURE = T.let(:azure, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi b/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi index 8200c2bb..939b4ff2 100644 --- a/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi @@ -17,8 +17,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(custom_llm_provider:, request_options: {}) - end + def self.new(custom_llm_provider:, request_options: {}); end sig do override @@ -29,8 +28,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module CustomLlmProvider extend Hanzoai::Internal::Type::Enum @@ -46,8 +44,7 @@ module Hanzoai sig do override.returns(T::Array[Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol]) end - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi b/rbi/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi index 1afc8eb3..4b3b6000 100644 --- a/rbi/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi +++ b/rbi/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi @@ -12,12 +12,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/gemini_create_params.rbi b/rbi/lib/hanzoai/models/gemini_create_params.rbi index fddb79ec..1a6b7873 100644 --- a/rbi/lib/hanzoai/models/gemini_create_params.rbi +++ b/rbi/lib/hanzoai/models/gemini_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/gemini_delete_params.rbi b/rbi/lib/hanzoai/models/gemini_delete_params.rbi index b6073e72..f30833ba 100644 --- a/rbi/lib/hanzoai/models/gemini_delete_params.rbi +++ b/rbi/lib/hanzoai/models/gemini_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/gemini_patch_params.rbi b/rbi/lib/hanzoai/models/gemini_patch_params.rbi index 92251050..f884984f 100644 --- a/rbi/lib/hanzoai/models/gemini_patch_params.rbi +++ b/rbi/lib/hanzoai/models/gemini_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/gemini_retrieve_params.rbi b/rbi/lib/hanzoai/models/gemini_retrieve_params.rbi index 7c23117e..702724ee 100644 --- a/rbi/lib/hanzoai/models/gemini_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/gemini_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/gemini_update_params.rbi b/rbi/lib/hanzoai/models/gemini_update_params.rbi index b8b73e09..99cf278b 100644 --- a/rbi/lib/hanzoai/models/gemini_update_params.rbi +++ b/rbi/lib/hanzoai/models/gemini_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/generate_key_response.rbi b/rbi/lib/hanzoai/models/generate_key_response.rbi index 27af0521..0d7926d0 100644 --- a/rbi/lib/hanzoai/models/generate_key_response.rbi +++ b/rbi/lib/hanzoai/models/generate_key_response.rbi @@ -172,9 +172,7 @@ module Hanzoai tpm_limit: nil, updated_by: nil, user_id: nil - ) - end - + ); end sig do override .returns( @@ -214,8 +212,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi b/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi index 57980551..fc945327 100644 --- a/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi +++ b/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi @@ -28,8 +28,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(end_date: nil, start_date: nil, tags: nil, request_options: {}) - end + def self.new(end_date: nil, start_date: nil, tags: nil, request_options: {}); end sig do override @@ -42,8 +41,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/global/spend_list_tags_response.rbi b/rbi/lib/hanzoai/models/global/spend_list_tags_response.rbi index ac4aa56f..0f711d16 100644 --- a/rbi/lib/hanzoai/models/global/spend_list_tags_response.rbi +++ b/rbi/lib/hanzoai/models/global/spend_list_tags_response.rbi @@ -111,9 +111,7 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ) - end - + ); end sig do override .returns( @@ -140,23 +138,20 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end module Messages extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -169,8 +164,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -183,8 +177,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end end diff --git a/rbi/lib/hanzoai/models/global/spend_reset_params.rbi b/rbi/lib/hanzoai/models/global/spend_reset_params.rbi index c11cab5f..ef706e2a 100644 --- a/rbi/lib/hanzoai/models/global/spend_reset_params.rbi +++ b/rbi/lib/hanzoai/models/global/spend_reset_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi index 5f5039ca..93f52c99 100644 --- a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi +++ b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi @@ -58,9 +58,7 @@ module Hanzoai start_date: nil, team_id: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -76,8 +74,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end # Group spend by internal team or customer or api_key module GroupBy @@ -93,8 +90,7 @@ module Hanzoai API_KEY = T.let(:api_key, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/global/spend_retrieve_report_response.rbi b/rbi/lib/hanzoai/models/global/spend_retrieve_report_response.rbi index 8a29f3a7..20d4e636 100644 --- a/rbi/lib/hanzoai/models/global/spend_retrieve_report_response.rbi +++ b/rbi/lib/hanzoai/models/global/spend_retrieve_report_response.rbi @@ -111,9 +111,7 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ) - end - + ); end sig do override .returns( @@ -140,23 +138,20 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end module Messages extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -169,8 +164,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -183,8 +177,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end end diff --git a/rbi/lib/hanzoai/models/guardrail_list_params.rbi b/rbi/lib/hanzoai/models/guardrail_list_params.rbi index 6c52f212..176ec41e 100644 --- a/rbi/lib/hanzoai/models/guardrail_list_params.rbi +++ b/rbi/lib/hanzoai/models/guardrail_list_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/guardrail_list_response.rbi b/rbi/lib/hanzoai/models/guardrail_list_response.rbi index da995efe..ef09d769 100644 --- a/rbi/lib/hanzoai/models/guardrail_list_response.rbi +++ b/rbi/lib/hanzoai/models/guardrail_list_response.rbi @@ -12,12 +12,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(guardrails:) - end + def self.new(guardrails:); end sig { override.returns({guardrails: T::Array[Hanzoai::Models::GuardrailListResponse::Guardrail]}) } - def to_hash - end + def to_hash; end class Guardrail < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(T.anything)) } @@ -46,8 +44,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(guardrail_info:, guardrail_name:, llm_params:) - end + def self.new(guardrail_info:, guardrail_name:, llm_params:); end sig do override @@ -59,8 +56,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmParams < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -80,8 +76,7 @@ module Hanzoai params(guardrail: String, mode: T.any(String, T::Array[String]), default_on: T::Boolean) .returns(T.attached_class) end - def self.new(guardrail:, mode:, default_on: nil) - end + def self.new(guardrail:, mode:, default_on: nil); end sig do override.returns( @@ -92,15 +87,13 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Mode extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[String]]) } - def self.variants - end + def self.variants; end StringArray = T.let(Hanzoai::Internal::Type::ArrayOf[String], Hanzoai::Internal::Type::Converter) end diff --git a/rbi/lib/hanzoai/models/health_check_all_params.rbi b/rbi/lib/hanzoai/models/health_check_all_params.rbi index 4ba8d5b2..caca8af2 100644 --- a/rbi/lib/hanzoai/models/health_check_all_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_all_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(model: nil, request_options: {}) - end + def self.new(model: nil, request_options: {}); end sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/health_check_liveliness_params.rbi b/rbi/lib/hanzoai/models/health_check_liveliness_params.rbi index 3b42c2ea..651273ba 100644 --- a/rbi/lib/hanzoai/models/health_check_liveliness_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_liveliness_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/health_check_liveness_params.rbi b/rbi/lib/hanzoai/models/health_check_liveness_params.rbi index 0b4c43ae..8396fc0a 100644 --- a/rbi/lib/hanzoai/models/health_check_liveness_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_liveness_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/health_check_readiness_params.rbi b/rbi/lib/hanzoai/models/health_check_readiness_params.rbi index b33a3418..120a1903 100644 --- a/rbi/lib/hanzoai/models/health_check_readiness_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_readiness_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/health_check_services_params.rbi b/rbi/lib/hanzoai/models/health_check_services_params.rbi index 62263128..dc5e9a06 100644 --- a/rbi/lib/hanzoai/models/health_check_services_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_services_params.rbi @@ -17,8 +17,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(service:, request_options: {}) - end + def self.new(service:, request_options: {}); end sig do override @@ -29,16 +28,14 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end # Specify the service being hit. module Service extend Hanzoai::Internal::Type::Union sig { override.returns([Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String]) } - def self.variants - end + def self.variants; end TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::HealthCheckServicesParams::Service) } OrSymbol = diff --git a/rbi/lib/hanzoai/models/images/generation_create_params.rbi b/rbi/lib/hanzoai/models/images/generation_create_params.rbi index 2992d22b..0fa3adc5 100644 --- a/rbi/lib/hanzoai/models/images/generation_create_params.rbi +++ b/rbi/lib/hanzoai/models/images/generation_create_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/ip_address.rbi b/rbi/lib/hanzoai/models/ip_address.rbi index d70d6409..7b6db37f 100644 --- a/rbi/lib/hanzoai/models/ip_address.rbi +++ b/rbi/lib/hanzoai/models/ip_address.rbi @@ -7,12 +7,10 @@ module Hanzoai attr_accessor :ip sig { params(ip: String).returns(T.attached_class) } - def self.new(ip:) - end + def self.new(ip:); end sig { override.returns({ip: String}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key/regenerate_key_request.rbi b/rbi/lib/hanzoai/models/key/regenerate_key_request.rbi index fa1ee656..aac9271b 100644 --- a/rbi/lib/hanzoai/models/key/regenerate_key_request.rbi +++ b/rbi/lib/hanzoai/models/key/regenerate_key_request.rbi @@ -150,9 +150,7 @@ module Hanzoai team_id: nil, tpm_limit: nil, user_id: nil - ) - end - + ); end sig do override .returns( @@ -188,8 +186,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_block_params.rbi b/rbi/lib/hanzoai/models/key_block_params.rbi index 5e1fed0d..5995c685 100644 --- a/rbi/lib/hanzoai/models/key_block_params.rbi +++ b/rbi/lib/hanzoai/models/key_block_params.rbi @@ -21,12 +21,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_changed_by: nil, request_options: {}) - end + def self.new(llm_changed_by: nil, request_options: {}); end sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_block_response.rbi b/rbi/lib/hanzoai/models/key_block_response.rbi index bfdd4645..c3c6ca7c 100644 --- a/rbi/lib/hanzoai/models/key_block_response.rbi +++ b/rbi/lib/hanzoai/models/key_block_response.rbi @@ -181,9 +181,7 @@ module Hanzoai updated_at: nil, updated_by: nil, user_id: nil - ) - end - + ); end sig do override .returns( @@ -220,15 +218,13 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Expires extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/key_check_health_params.rbi b/rbi/lib/hanzoai/models/key_check_health_params.rbi index 9d2e46ea..69a92fea 100644 --- a/rbi/lib/hanzoai/models/key_check_health_params.rbi +++ b/rbi/lib/hanzoai/models/key_check_health_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_check_health_response.rbi b/rbi/lib/hanzoai/models/key_check_health_response.rbi index bd75a7e5..7d137be1 100644 --- a/rbi/lib/hanzoai/models/key_check_health_response.rbi +++ b/rbi/lib/hanzoai/models/key_check_health_response.rbi @@ -27,8 +27,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(key: nil, logging_callbacks: nil) - end + def self.new(key: nil, logging_callbacks: nil); end sig do override @@ -39,8 +38,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Key extend Hanzoai::Internal::Type::Enum @@ -53,8 +51,7 @@ module Hanzoai UNHEALTHY = T.let(:unhealthy, Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol]) } - def self.values - end + def self.values; end end class LoggingCallbacks < Hanzoai::Internal::Type::BaseModel @@ -81,8 +78,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(callbacks: nil, details: nil, status: nil) - end + def self.new(callbacks: nil, details: nil, status: nil); end sig do override @@ -94,8 +90,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Status extend Hanzoai::Internal::Type::Enum @@ -113,8 +108,7 @@ module Hanzoai sig do override.returns(T::Array[Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol]) end - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/key_delete_params.rbi b/rbi/lib/hanzoai/models/key_delete_params.rbi index e245f429..9e624888 100644 --- a/rbi/lib/hanzoai/models/key_delete_params.rbi +++ b/rbi/lib/hanzoai/models/key_delete_params.rbi @@ -29,8 +29,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) - end + def self.new(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}); end sig do override @@ -43,8 +42,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_generate_params.rbi b/rbi/lib/hanzoai/models/key_generate_params.rbi index a37b3b36..808faf7f 100644 --- a/rbi/lib/hanzoai/models/key_generate_params.rbi +++ b/rbi/lib/hanzoai/models/key_generate_params.rbi @@ -159,9 +159,7 @@ module Hanzoai user_id: nil, llm_changed_by: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -198,8 +196,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_list_params.rbi b/rbi/lib/hanzoai/models/key_list_params.rbi index a67f0925..8288d5f6 100644 --- a/rbi/lib/hanzoai/models/key_list_params.rbi +++ b/rbi/lib/hanzoai/models/key_list_params.rbi @@ -74,9 +74,7 @@ module Hanzoai team_id: nil, user_id: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -93,8 +91,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_list_response.rbi b/rbi/lib/hanzoai/models/key_list_response.rbi index f56e1559..c1165db3 100644 --- a/rbi/lib/hanzoai/models/key_list_response.rbi +++ b/rbi/lib/hanzoai/models/key_list_response.rbi @@ -32,8 +32,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(current_page: nil, keys: nil, total_count: nil, total_pages: nil) - end + def self.new(current_page: nil, keys: nil, total_count: nil, total_pages: nil); end sig do override @@ -46,8 +45,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end # Return the row in the db module Key @@ -390,9 +388,7 @@ module Hanzoai user_role: nil, user_rpm_limit: nil, user_tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -455,8 +451,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum @@ -479,16 +474,14 @@ module Hanzoai override .returns(T::Array[Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol]) end - def self.values - end + def self.values; end end module Expires extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can @@ -528,14 +521,12 @@ module Hanzoai T.let(:customer, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol]) } - def self.values - end + def self.values; end end end sig { override.returns([String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi b/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi index 6a8a5966..fc19df63 100644 --- a/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi +++ b/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi @@ -21,12 +21,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_changed_by: nil, request_options: {}) - end + def self.new(llm_changed_by: nil, request_options: {}); end sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi index 279081d7..c668cbec 100644 --- a/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(key: nil, request_options: {}) - end + def self.new(key: nil, request_options: {}); end sig { override.returns({key: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_unblock_params.rbi b/rbi/lib/hanzoai/models/key_unblock_params.rbi index 23056372..a791aa1d 100644 --- a/rbi/lib/hanzoai/models/key_unblock_params.rbi +++ b/rbi/lib/hanzoai/models/key_unblock_params.rbi @@ -21,12 +21,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_changed_by: nil, request_options: {}) - end + def self.new(llm_changed_by: nil, request_options: {}); end sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/key_update_params.rbi b/rbi/lib/hanzoai/models/key_update_params.rbi index 8629c64a..b97fcf18 100644 --- a/rbi/lib/hanzoai/models/key_update_params.rbi +++ b/rbi/lib/hanzoai/models/key_update_params.rbi @@ -159,9 +159,7 @@ module Hanzoai user_id: nil, llm_changed_by: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -198,8 +196,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/langfuse_create_params.rbi b/rbi/lib/hanzoai/models/langfuse_create_params.rbi index 2c9c952e..55d213e9 100644 --- a/rbi/lib/hanzoai/models/langfuse_create_params.rbi +++ b/rbi/lib/hanzoai/models/langfuse_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/langfuse_delete_params.rbi b/rbi/lib/hanzoai/models/langfuse_delete_params.rbi index c6f8c3a7..91f59574 100644 --- a/rbi/lib/hanzoai/models/langfuse_delete_params.rbi +++ b/rbi/lib/hanzoai/models/langfuse_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/langfuse_patch_params.rbi b/rbi/lib/hanzoai/models/langfuse_patch_params.rbi index b4a0be18..c87bfb52 100644 --- a/rbi/lib/hanzoai/models/langfuse_patch_params.rbi +++ b/rbi/lib/hanzoai/models/langfuse_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/langfuse_retrieve_params.rbi b/rbi/lib/hanzoai/models/langfuse_retrieve_params.rbi index 719adbbe..0532930b 100644 --- a/rbi/lib/hanzoai/models/langfuse_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/langfuse_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/langfuse_update_params.rbi b/rbi/lib/hanzoai/models/langfuse_update_params.rbi index f2cf0128..8c534601 100644 --- a/rbi/lib/hanzoai/models/langfuse_update_params.rbi +++ b/rbi/lib/hanzoai/models/langfuse_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/member.rbi b/rbi/lib/hanzoai/models/member.rbi index 343803db..c2fc3a1b 100644 --- a/rbi/lib/hanzoai/models/member.rbi +++ b/rbi/lib/hanzoai/models/member.rbi @@ -20,8 +20,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(role:, user_email: nil, user_id: nil) - end + def self.new(role:, user_email: nil, user_id: nil); end sig do override @@ -29,8 +28,7 @@ module Hanzoai {role: Hanzoai::Models::Member::Role::OrSymbol, user_email: T.nilable(String), user_id: T.nilable(String)} ) end - def to_hash - end + def to_hash; end module Role extend Hanzoai::Internal::Type::Enum @@ -42,8 +40,7 @@ module Hanzoai USER = T.let(:user, Hanzoai::Models::Member::Role::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::Member::Role::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/model/info_list_params.rbi b/rbi/lib/hanzoai/models/model/info_list_params.rbi index f1f34a3b..0c8adcc1 100644 --- a/rbi/lib/hanzoai/models/model/info_list_params.rbi +++ b/rbi/lib/hanzoai/models/model/info_list_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_model_id: nil, request_options: {}) - end + def self.new(llm_model_id: nil, request_options: {}); end sig { override.returns({llm_model_id: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/model/update_deployment.rbi b/rbi/lib/hanzoai/models/model/update_deployment.rbi index b89a68cf..541d4657 100644 --- a/rbi/lib/hanzoai/models/model/update_deployment.rbi +++ b/rbi/lib/hanzoai/models/model/update_deployment.rbi @@ -32,8 +32,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_params: nil, model_info: nil, model_name: nil) - end + def self.new(llm_params: nil, model_info: nil, model_name: nil); end sig do override @@ -45,8 +44,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmParams < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -212,9 +210,7 @@ module Hanzoai vertex_location: nil, vertex_project: nil, watsonx_region_name: nil - ) - end - + ); end sig do override .returns( @@ -253,39 +249,34 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union sig { override.returns([String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth]) } - def self.variants - end + def self.variants; end end module StreamTimeout extend Hanzoai::Internal::Type::Union sig { override.returns([Float, String]) } - def self.variants - end + def self.variants; end end module Timeout extend Hanzoai::Internal::Type::Union sig { override.returns([Float, String]) } - def self.variants - end + def self.variants; end end module VertexCredentials extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/model/update_full_params.rbi b/rbi/lib/hanzoai/models/model/update_full_params.rbi index 3dddfbe7..7d3a92cc 100644 --- a/rbi/lib/hanzoai/models/model/update_full_params.rbi +++ b/rbi/lib/hanzoai/models/model/update_full_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/model/update_partial_params.rbi b/rbi/lib/hanzoai/models/model/update_partial_params.rbi index 5e658df6..c4be1651 100644 --- a/rbi/lib/hanzoai/models/model/update_partial_params.rbi +++ b/rbi/lib/hanzoai/models/model/update_partial_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/model_create_params.rbi b/rbi/lib/hanzoai/models/model_create_params.rbi index 8fb15934..f450b57e 100644 --- a/rbi/lib/hanzoai/models/model_create_params.rbi +++ b/rbi/lib/hanzoai/models/model_create_params.rbi @@ -31,8 +31,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_params:, model_info:, model_name:, request_options: {}) - end + def self.new(llm_params:, model_info:, model_name:, request_options: {}); end sig do override @@ -45,8 +44,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmParams < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -213,9 +211,7 @@ module Hanzoai vertex_location: nil, vertex_project: nil, watsonx_region_name: nil - ) - end - + ); end sig do override .returns( @@ -254,39 +250,34 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union sig { override.returns([String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth]) } - def self.variants - end + def self.variants; end end module StreamTimeout extend Hanzoai::Internal::Type::Union sig { override.returns([Float, String]) } - def self.variants - end + def self.variants; end end module Timeout extend Hanzoai::Internal::Type::Union sig { override.returns([Float, String]) } - def self.variants - end + def self.variants; end end module VertexCredentials extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/model_delete_params.rbi b/rbi/lib/hanzoai/models/model_delete_params.rbi index a60d5f5e..d5f15d9a 100644 --- a/rbi/lib/hanzoai/models/model_delete_params.rbi +++ b/rbi/lib/hanzoai/models/model_delete_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(id:, request_options: {}) - end + def self.new(id:, request_options: {}); end sig { override.returns({id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/model_group_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/model_group_retrieve_info_params.rbi index 6b7ee0b0..db2f84aa 100644 --- a/rbi/lib/hanzoai/models/model_group_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/model_group_retrieve_info_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(model_group: nil, request_options: {}) - end + def self.new(model_group: nil, request_options: {}); end sig { override.returns({model_group: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/model_info.rbi b/rbi/lib/hanzoai/models/model_info.rbi index 3f884656..eed7105c 100644 --- a/rbi/lib/hanzoai/models/model_info.rbi +++ b/rbi/lib/hanzoai/models/model_info.rbi @@ -62,9 +62,7 @@ module Hanzoai tier: nil, updated_at: nil, updated_by: nil - ) - end - + ); end sig do override .returns( @@ -82,8 +80,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Tier extend Hanzoai::Internal::Type::Enum @@ -95,8 +92,7 @@ module Hanzoai PAID = T.let(:paid, Hanzoai::Models::ModelInfo::Tier::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::ModelInfo::Tier::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/model_list_params.rbi b/rbi/lib/hanzoai/models/model_list_params.rbi index ea1a2ace..1e04cd50 100644 --- a/rbi/lib/hanzoai/models/model_list_params.rbi +++ b/rbi/lib/hanzoai/models/model_list_params.rbi @@ -20,8 +20,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(return_wildcard_routes: nil, team_id: nil, request_options: {}) - end + def self.new(return_wildcard_routes: nil, team_id: nil, request_options: {}); end sig do override @@ -33,8 +32,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/moderation_create_params.rbi b/rbi/lib/hanzoai/models/moderation_create_params.rbi index d7a2da1d..582cace8 100644 --- a/rbi/lib/hanzoai/models/moderation_create_params.rbi +++ b/rbi/lib/hanzoai/models/moderation_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai/deployment_complete_params.rbi b/rbi/lib/hanzoai/models/openai/deployment_complete_params.rbi index 6e35c0e2..d27af69c 100644 --- a/rbi/lib/hanzoai/models/openai/deployment_complete_params.rbi +++ b/rbi/lib/hanzoai/models/openai/deployment_complete_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai/deployment_embed_params.rbi b/rbi/lib/hanzoai/models/openai/deployment_embed_params.rbi index d543af66..46b47b35 100644 --- a/rbi/lib/hanzoai/models/openai/deployment_embed_params.rbi +++ b/rbi/lib/hanzoai/models/openai/deployment_embed_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai/deployments/chat_complete_params.rbi b/rbi/lib/hanzoai/models/openai/deployments/chat_complete_params.rbi index 24056c67..4be28c47 100644 --- a/rbi/lib/hanzoai/models/openai/deployments/chat_complete_params.rbi +++ b/rbi/lib/hanzoai/models/openai/deployments/chat_complete_params.rbi @@ -12,12 +12,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai_create_params.rbi b/rbi/lib/hanzoai/models/openai_create_params.rbi index 248bacfd..9f8edd8d 100644 --- a/rbi/lib/hanzoai/models/openai_create_params.rbi +++ b/rbi/lib/hanzoai/models/openai_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai_delete_params.rbi b/rbi/lib/hanzoai/models/openai_delete_params.rbi index eac8396b..3ca26222 100644 --- a/rbi/lib/hanzoai/models/openai_delete_params.rbi +++ b/rbi/lib/hanzoai/models/openai_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai_patch_params.rbi b/rbi/lib/hanzoai/models/openai_patch_params.rbi index 5edec312..283019c6 100644 --- a/rbi/lib/hanzoai/models/openai_patch_params.rbi +++ b/rbi/lib/hanzoai/models/openai_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai_retrieve_params.rbi b/rbi/lib/hanzoai/models/openai_retrieve_params.rbi index eacc0a4b..254ef8ec 100644 --- a/rbi/lib/hanzoai/models/openai_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/openai_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/openai_update_params.rbi b/rbi/lib/hanzoai/models/openai_update_params.rbi index e40e0e24..06f7942a 100644 --- a/rbi/lib/hanzoai/models/openai_update_params.rbi +++ b/rbi/lib/hanzoai/models/openai_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/org_member.rbi b/rbi/lib/hanzoai/models/org_member.rbi index f77e85ee..221e418f 100644 --- a/rbi/lib/hanzoai/models/org_member.rbi +++ b/rbi/lib/hanzoai/models/org_member.rbi @@ -20,8 +20,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(role:, user_email: nil, user_id: nil) - end + def self.new(role:, user_email: nil, user_id: nil); end sig do override @@ -29,8 +28,7 @@ module Hanzoai {role: Hanzoai::Models::OrgMember::Role::OrSymbol, user_email: T.nilable(String), user_id: T.nilable(String)} ) end - def to_hash - end + def to_hash; end module Role extend Hanzoai::Internal::Type::Enum @@ -43,8 +41,7 @@ module Hanzoai INTERNAL_USER_VIEWER = T.let(:internal_user_viewer, Hanzoai::Models::OrgMember::Role::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::OrgMember::Role::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/organization/info_deprecated_params.rbi b/rbi/lib/hanzoai/models/organization/info_deprecated_params.rbi index c8e3d49c..ff7d37d8 100644 --- a/rbi/lib/hanzoai/models/organization/info_deprecated_params.rbi +++ b/rbi/lib/hanzoai/models/organization/info_deprecated_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(organizations:, request_options: {}) - end + def self.new(organizations:, request_options: {}); end sig { override.returns({organizations: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization/info_retrieve_params.rbi b/rbi/lib/hanzoai/models/organization/info_retrieve_params.rbi index d6de71d2..7197e256 100644 --- a/rbi/lib/hanzoai/models/organization/info_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/organization/info_retrieve_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(organization_id:, request_options: {}) - end + def self.new(organization_id:, request_options: {}); end sig { override.returns({organization_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi index 8f95fa66..b5e86ebe 100644 --- a/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi +++ b/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi @@ -108,9 +108,7 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ) - end - + ); end sig do override .returns( @@ -131,8 +129,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -177,9 +174,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -194,8 +189,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel @@ -277,9 +271,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -296,8 +288,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -342,9 +333,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -359,8 +348,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end @@ -499,9 +487,7 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -528,8 +514,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -549,8 +534,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) - end + def self.new(created_by:, updated_by:, model_aliases: nil); end sig do override @@ -560,15 +544,13 @@ module Hanzoai model_aliases: T.nilable(T.any(T.anything, String)) }) end - def to_hash - end + def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/organization_add_member_params.rbi b/rbi/lib/hanzoai/models/organization_add_member_params.rbi index 66b65cf6..21a039a7 100644 --- a/rbi/lib/hanzoai/models/organization_add_member_params.rbi +++ b/rbi/lib/hanzoai/models/organization_add_member_params.rbi @@ -28,8 +28,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) - end + def self.new(member:, organization_id:, max_budget_in_organization: nil, request_options: {}); end sig do override @@ -42,15 +41,13 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Member extend Hanzoai::Internal::Type::Union sig { override.returns([T::Array[Hanzoai::Models::OrgMember], Hanzoai::Models::OrgMember]) } - def self.variants - end + def self.variants; end OrgMemberArray = T.let(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrgMember], Hanzoai::Internal::Type::Converter) diff --git a/rbi/lib/hanzoai/models/organization_add_member_response.rbi b/rbi/lib/hanzoai/models/organization_add_member_response.rbi index 2d4d84c9..26e71624 100644 --- a/rbi/lib/hanzoai/models/organization_add_member_response.rbi +++ b/rbi/lib/hanzoai/models/organization_add_member_response.rbi @@ -16,17 +16,16 @@ module Hanzoai params( organization_id: String, updated_organization_memberships: T::Array[ - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership, - Hanzoai::Internal::AnyHash - ) + T.any( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership, + Hanzoai::Internal::AnyHash + ) ], updated_users: T::Array[T.any(Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser, Hanzoai::Internal::AnyHash)] ) .returns(T.attached_class) end - def self.new(organization_id:, updated_organization_memberships:, updated_users:) - end + def self.new(organization_id:, updated_organization_memberships:, updated_users:); end sig do override @@ -38,8 +37,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel sig { returns(Time) } @@ -124,9 +122,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -143,8 +139,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -189,9 +184,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -206,8 +199,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end @@ -285,10 +277,10 @@ module Hanzoai models: T::Array[T.anything], organization_memberships: T.nilable( T::Array[ - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership, - Hanzoai::Internal::AnyHash - ) + T.any( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership, + Hanzoai::Internal::AnyHash + ) ] ), rpm_limit: T.nilable(Integer), @@ -318,9 +310,7 @@ module Hanzoai tpm_limit: nil, user_email: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -344,8 +334,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class OrganizationMembership < Hanzoai::Internal::Type::BaseModel sig { returns(Time) } @@ -432,9 +421,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -453,8 +440,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -499,9 +485,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -516,8 +500,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_create_params.rbi b/rbi/lib/hanzoai/models/organization_create_params.rbi index bd46e799..fa8a49eb 100644 --- a/rbi/lib/hanzoai/models/organization_create_params.rbi +++ b/rbi/lib/hanzoai/models/organization_create_params.rbi @@ -77,9 +77,7 @@ module Hanzoai soft_budget: nil, tpm_limit: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -100,8 +98,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_create_response.rbi b/rbi/lib/hanzoai/models/organization_create_response.rbi index be1fab76..4e6e91fa 100644 --- a/rbi/lib/hanzoai/models/organization_create_response.rbi +++ b/rbi/lib/hanzoai/models/organization_create_response.rbi @@ -62,9 +62,7 @@ module Hanzoai metadata: nil, organization_alias: nil, spend: nil - ) - end - + ); end sig do override .returns( @@ -82,8 +80,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_delete_member_params.rbi b/rbi/lib/hanzoai/models/organization_delete_member_params.rbi index 6f85546c..5aaf33d2 100644 --- a/rbi/lib/hanzoai/models/organization_delete_member_params.rbi +++ b/rbi/lib/hanzoai/models/organization_delete_member_params.rbi @@ -24,8 +24,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(organization_id:, user_email: nil, user_id: nil, request_options: {}) - end + def self.new(organization_id:, user_email: nil, user_id: nil, request_options: {}); end sig do override @@ -38,8 +37,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_delete_params.rbi b/rbi/lib/hanzoai/models/organization_delete_params.rbi index 929f545e..98595202 100644 --- a/rbi/lib/hanzoai/models/organization_delete_params.rbi +++ b/rbi/lib/hanzoai/models/organization_delete_params.rbi @@ -16,12 +16,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(organization_ids:, request_options: {}) - end + def self.new(organization_ids:, request_options: {}); end sig { override.returns({organization_ids: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_delete_response.rbi b/rbi/lib/hanzoai/models/organization_delete_response.rbi index 4ad74446..ce33879c 100644 --- a/rbi/lib/hanzoai/models/organization_delete_response.rbi +++ b/rbi/lib/hanzoai/models/organization_delete_response.rbi @@ -107,9 +107,7 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ) - end - + ); end sig do override .returns( @@ -130,8 +128,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -176,9 +173,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -193,8 +188,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel @@ -270,9 +264,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -289,8 +281,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -335,9 +326,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -352,8 +341,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end @@ -486,9 +474,7 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -515,8 +501,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -536,8 +521,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) - end + def self.new(created_by:, updated_by:, model_aliases: nil); end sig do override @@ -547,15 +531,13 @@ module Hanzoai model_aliases: T.nilable(T.any(T.anything, String)) }) end - def to_hash - end + def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/organization_list_params.rbi b/rbi/lib/hanzoai/models/organization_list_params.rbi index fc752041..b0322532 100644 --- a/rbi/lib/hanzoai/models/organization_list_params.rbi +++ b/rbi/lib/hanzoai/models/organization_list_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_list_response.rbi b/rbi/lib/hanzoai/models/organization_list_response.rbi index 0adf648b..2d34ff66 100644 --- a/rbi/lib/hanzoai/models/organization_list_response.rbi +++ b/rbi/lib/hanzoai/models/organization_list_response.rbi @@ -107,9 +107,7 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ) - end - + ); end sig do override .returns( @@ -130,8 +128,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -176,9 +173,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -193,8 +188,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel @@ -270,9 +264,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -289,8 +281,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -335,9 +326,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -352,8 +341,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end @@ -486,9 +474,7 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -515,8 +501,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -536,8 +521,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) - end + def self.new(created_by:, updated_by:, model_aliases: nil); end sig do override @@ -547,15 +531,13 @@ module Hanzoai model_aliases: T.nilable(T.any(T.anything, String)) }) end - def to_hash - end + def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/organization_update_member_params.rbi b/rbi/lib/hanzoai/models/organization_update_member_params.rbi index 8dc63cbb..83dca5c7 100644 --- a/rbi/lib/hanzoai/models/organization_update_member_params.rbi +++ b/rbi/lib/hanzoai/models/organization_update_member_params.rbi @@ -50,9 +50,7 @@ module Hanzoai user_email: nil, user_id: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -66,8 +64,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can # login, view all own keys, view all spend ORG_ADMIN: admin over a specific @@ -99,8 +96,7 @@ module Hanzoai CUSTOMER = T.let(:customer, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/organization_update_member_response.rbi b/rbi/lib/hanzoai/models/organization_update_member_response.rbi index 75ddd9e7..defb9576 100644 --- a/rbi/lib/hanzoai/models/organization_update_member_response.rbi +++ b/rbi/lib/hanzoai/models/organization_update_member_response.rbi @@ -75,9 +75,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -94,8 +92,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -140,9 +137,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -157,8 +152,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_update_params.rbi b/rbi/lib/hanzoai/models/organization_update_params.rbi index 5433a20f..27b09896 100644 --- a/rbi/lib/hanzoai/models/organization_update_params.rbi +++ b/rbi/lib/hanzoai/models/organization_update_params.rbi @@ -49,9 +49,7 @@ module Hanzoai spend: nil, updated_by: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -67,8 +65,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/organization_update_response.rbi b/rbi/lib/hanzoai/models/organization_update_response.rbi index fb7e4f72..3507b5db 100644 --- a/rbi/lib/hanzoai/models/organization_update_response.rbi +++ b/rbi/lib/hanzoai/models/organization_update_response.rbi @@ -103,9 +103,7 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ) - end - + ); end sig do override .returns( @@ -126,8 +124,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -172,9 +169,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -189,8 +184,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel @@ -266,9 +260,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -285,8 +277,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -331,9 +322,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -348,8 +337,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end @@ -482,9 +470,7 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -511,8 +497,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -532,8 +517,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) - end + def self.new(created_by:, updated_by:, model_aliases: nil); end sig do override @@ -543,15 +527,13 @@ module Hanzoai model_aliases: T.nilable(T.any(T.anything, String)) }) end - def to_hash - end + def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/provider_list_budgets_params.rbi b/rbi/lib/hanzoai/models/provider_list_budgets_params.rbi index ff54c46e..60d10c81 100644 --- a/rbi/lib/hanzoai/models/provider_list_budgets_params.rbi +++ b/rbi/lib/hanzoai/models/provider_list_budgets_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi b/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi index 862fb1d9..7e2ce88d 100644 --- a/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi +++ b/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi @@ -22,12 +22,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(providers: nil) - end + def self.new(providers: nil); end sig { override.returns({providers: T::Hash[Symbol, Hanzoai::Models::ProviderListBudgetsResponse::Provider]}) } - def to_hash - end + def to_hash; end class Provider < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(Float)) } @@ -52,8 +50,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(budget_limit:, time_period:, budget_reset_at: nil, spend: nil) - end + def self.new(budget_limit:, time_period:, budget_reset_at: nil, spend: nil); end sig do override @@ -66,8 +63,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/rerank_create_params.rbi b/rbi/lib/hanzoai/models/rerank_create_params.rbi index 370c6248..987385ce 100644 --- a/rbi/lib/hanzoai/models/rerank_create_params.rbi +++ b/rbi/lib/hanzoai/models/rerank_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/rerank_create_v1_params.rbi b/rbi/lib/hanzoai/models/rerank_create_v1_params.rbi index 5e7feaa4..51c1ecdd 100644 --- a/rbi/lib/hanzoai/models/rerank_create_v1_params.rbi +++ b/rbi/lib/hanzoai/models/rerank_create_v1_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/rerank_create_v2_params.rbi b/rbi/lib/hanzoai/models/rerank_create_v2_params.rbi index 6b3217d2..dd0f87c5 100644 --- a/rbi/lib/hanzoai/models/rerank_create_v2_params.rbi +++ b/rbi/lib/hanzoai/models/rerank_create_v2_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/response_create_params.rbi b/rbi/lib/hanzoai/models/response_create_params.rbi index a5950352..f123dfd1 100644 --- a/rbi/lib/hanzoai/models/response_create_params.rbi +++ b/rbi/lib/hanzoai/models/response_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/response_delete_params.rbi b/rbi/lib/hanzoai/models/response_delete_params.rbi index 7e02f105..6b1ce857 100644 --- a/rbi/lib/hanzoai/models/response_delete_params.rbi +++ b/rbi/lib/hanzoai/models/response_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/response_retrieve_params.rbi b/rbi/lib/hanzoai/models/response_retrieve_params.rbi index eec8bf00..d0fe1e26 100644 --- a/rbi/lib/hanzoai/models/response_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/response_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/responses/input_item_list_params.rbi b/rbi/lib/hanzoai/models/responses/input_item_list_params.rbi index c7baf5bf..e0d0a4f5 100644 --- a/rbi/lib/hanzoai/models/responses/input_item_list_params.rbi +++ b/rbi/lib/hanzoai/models/responses/input_item_list_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/route_list_params.rbi b/rbi/lib/hanzoai/models/route_list_params.rbi index 8f45b3c0..e2710be6 100644 --- a/rbi/lib/hanzoai/models/route_list_params.rbi +++ b/rbi/lib/hanzoai/models/route_list_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/setting_retrieve_params.rbi b/rbi/lib/hanzoai/models/setting_retrieve_params.rbi index 62b33a76..4c7cc48d 100644 --- a/rbi/lib/hanzoai/models/setting_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/setting_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/spend_calculate_spend_params.rbi b/rbi/lib/hanzoai/models/spend_calculate_spend_params.rbi index 8e8ba167..517cfef5 100644 --- a/rbi/lib/hanzoai/models/spend_calculate_spend_params.rbi +++ b/rbi/lib/hanzoai/models/spend_calculate_spend_params.rbi @@ -24,8 +24,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(completion_response: nil, messages: nil, model: nil, request_options: {}) - end + def self.new(completion_response: nil, messages: nil, model: nil, request_options: {}); end sig do override @@ -38,8 +37,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/spend_list_logs_params.rbi b/rbi/lib/hanzoai/models/spend_list_logs_params.rbi index 982671de..9e40cd13 100644 --- a/rbi/lib/hanzoai/models/spend_list_logs_params.rbi +++ b/rbi/lib/hanzoai/models/spend_list_logs_params.rbi @@ -61,8 +61,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/spend_list_logs_response.rbi b/rbi/lib/hanzoai/models/spend_list_logs_response.rbi index 6759f44b..280608f8 100644 --- a/rbi/lib/hanzoai/models/spend_list_logs_response.rbi +++ b/rbi/lib/hanzoai/models/spend_list_logs_response.rbi @@ -110,9 +110,7 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ) - end - + ); end sig do override .returns( @@ -139,23 +137,20 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end module Messages extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -168,8 +163,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -182,8 +176,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end end diff --git a/rbi/lib/hanzoai/models/spend_list_tags_params.rbi b/rbi/lib/hanzoai/models/spend_list_tags_params.rbi index cc206875..3819e38d 100644 --- a/rbi/lib/hanzoai/models/spend_list_tags_params.rbi +++ b/rbi/lib/hanzoai/models/spend_list_tags_params.rbi @@ -22,8 +22,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(end_date: nil, start_date: nil, request_options: {}) - end + def self.new(end_date: nil, start_date: nil, request_options: {}); end sig do override @@ -35,8 +34,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/spend_list_tags_response.rbi b/rbi/lib/hanzoai/models/spend_list_tags_response.rbi index 8d56f315..b2e6af86 100644 --- a/rbi/lib/hanzoai/models/spend_list_tags_response.rbi +++ b/rbi/lib/hanzoai/models/spend_list_tags_response.rbi @@ -110,9 +110,7 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ) - end - + ); end sig do override .returns( @@ -139,23 +137,20 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end module Messages extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -168,8 +163,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants - end + def self.variants; end UnionMember1Array = T.let( @@ -182,8 +176,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Union sig { override.returns([String, Time]) } - def self.variants - end + def self.variants; end end end diff --git a/rbi/lib/hanzoai/models/team/callback_add_params.rbi b/rbi/lib/hanzoai/models/team/callback_add_params.rbi index 5234c977..1965a0f8 100644 --- a/rbi/lib/hanzoai/models/team/callback_add_params.rbi +++ b/rbi/lib/hanzoai/models/team/callback_add_params.rbi @@ -55,8 +55,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module CallbackType extend Hanzoai::Internal::Type::Enum @@ -71,8 +70,7 @@ module Hanzoai T.let(:success_and_failure, Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/team/callback_retrieve_params.rbi b/rbi/lib/hanzoai/models/team/callback_retrieve_params.rbi index 67d736bf..9bac5bc5 100644 --- a/rbi/lib/hanzoai/models/team/callback_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/team/callback_retrieve_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team/model_add_params.rbi b/rbi/lib/hanzoai/models/team/model_add_params.rbi index 8f765b75..08db5440 100644 --- a/rbi/lib/hanzoai/models/team/model_add_params.rbi +++ b/rbi/lib/hanzoai/models/team/model_add_params.rbi @@ -21,8 +21,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(models:, team_id:, request_options: {}) - end + def self.new(models:, team_id:, request_options: {}); end sig do override.returns( @@ -33,8 +32,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team/model_remove_params.rbi b/rbi/lib/hanzoai/models/team/model_remove_params.rbi index 9819cf0a..a1ebb700 100644 --- a/rbi/lib/hanzoai/models/team/model_remove_params.rbi +++ b/rbi/lib/hanzoai/models/team/model_remove_params.rbi @@ -21,8 +21,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(models:, team_id:, request_options: {}) - end + def self.new(models:, team_id:, request_options: {}); end sig do override.returns( @@ -33,8 +32,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_add_member_params.rbi b/rbi/lib/hanzoai/models/team_add_member_params.rbi index bacaa2c9..ad1f3f27 100644 --- a/rbi/lib/hanzoai/models/team_add_member_params.rbi +++ b/rbi/lib/hanzoai/models/team_add_member_params.rbi @@ -28,8 +28,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(member:, team_id:, max_budget_in_team: nil, request_options: {}) - end + def self.new(member:, team_id:, max_budget_in_team: nil, request_options: {}); end sig do override @@ -42,15 +41,13 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Member extend Hanzoai::Internal::Type::Union sig { override.returns([T::Array[Hanzoai::Models::Member], Hanzoai::Models::Member]) } - def self.variants - end + def self.variants; end MemberArray = T.let(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member], Hanzoai::Internal::Type::Converter) diff --git a/rbi/lib/hanzoai/models/team_add_member_response.rbi b/rbi/lib/hanzoai/models/team_add_member_response.rbi index 581701bd..689c3df6 100644 --- a/rbi/lib/hanzoai/models/team_add_member_response.rbi +++ b/rbi/lib/hanzoai/models/team_add_member_response.rbi @@ -137,9 +137,7 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -168,8 +166,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -212,8 +209,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(budget_id:, llm_budget_table:, team_id:, user_id:) - end + def self.new(budget_id:, llm_budget_table:, team_id:, user_id:); end sig do override @@ -226,8 +222,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -272,9 +267,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -289,8 +282,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end @@ -364,10 +356,10 @@ module Hanzoai models: T::Array[T.anything], organization_memberships: T.nilable( T::Array[ - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership, - Hanzoai::Internal::AnyHash - ) + T.any( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership, + Hanzoai::Internal::AnyHash + ) ] ), rpm_limit: T.nilable(Integer), @@ -397,9 +389,7 @@ module Hanzoai tpm_limit: nil, user_email: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -423,8 +413,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class OrganizationMembership < Hanzoai::Internal::Type::BaseModel sig { returns(Time) } @@ -509,9 +498,7 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -528,8 +515,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel sig { returns(T.nilable(String)) } @@ -574,9 +560,7 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -591,8 +575,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end @@ -611,8 +594,7 @@ module Hanzoai params(created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String))) .returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) - end + def self.new(created_by:, updated_by:, model_aliases: nil); end sig do override @@ -622,15 +604,13 @@ module Hanzoai model_aliases: T.nilable(T.any(T.anything, String)) }) end - def to_hash - end + def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/team_block_params.rbi b/rbi/lib/hanzoai/models/team_block_params.rbi index f593d079..9f83545b 100644 --- a/rbi/lib/hanzoai/models/team_block_params.rbi +++ b/rbi/lib/hanzoai/models/team_block_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_create_params.rbi b/rbi/lib/hanzoai/models/team_create_params.rbi index 825b1a95..f29f1979 100644 --- a/rbi/lib/hanzoai/models/team_create_params.rbi +++ b/rbi/lib/hanzoai/models/team_create_params.rbi @@ -119,9 +119,7 @@ module Hanzoai tpm_limit: nil, llm_changed_by: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -147,8 +145,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_create_response.rbi b/rbi/lib/hanzoai/models/team_create_response.rbi index 5561877d..d31a4f67 100644 --- a/rbi/lib/hanzoai/models/team_create_response.rbi +++ b/rbi/lib/hanzoai/models/team_create_response.rbi @@ -127,9 +127,7 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ) - end - + ); end sig do override .returns( @@ -156,8 +154,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel sig { returns(String) } @@ -173,8 +170,7 @@ module Hanzoai params(created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String))) .returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) - end + def self.new(created_by:, updated_by:, model_aliases: nil); end sig do override @@ -184,15 +180,13 @@ module Hanzoai model_aliases: T.nilable(T.any(T.anything, String)) }) end - def to_hash - end + def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union sig { override.returns([T.anything, String]) } - def self.variants - end + def self.variants; end end end end diff --git a/rbi/lib/hanzoai/models/team_delete_params.rbi b/rbi/lib/hanzoai/models/team_delete_params.rbi index 77e2f778..0d5ee0fb 100644 --- a/rbi/lib/hanzoai/models/team_delete_params.rbi +++ b/rbi/lib/hanzoai/models/team_delete_params.rbi @@ -25,8 +25,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(team_ids:, llm_changed_by: nil, request_options: {}) - end + def self.new(team_ids:, llm_changed_by: nil, request_options: {}); end sig do override @@ -36,8 +35,7 @@ module Hanzoai request_options: Hanzoai::RequestOptions }) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_disable_logging_params.rbi b/rbi/lib/hanzoai/models/team_disable_logging_params.rbi index 86a6d1c8..e3026e08 100644 --- a/rbi/lib/hanzoai/models/team_disable_logging_params.rbi +++ b/rbi/lib/hanzoai/models/team_disable_logging_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_list_available_params.rbi b/rbi/lib/hanzoai/models/team_list_available_params.rbi index 4a342a69..d2d59b8f 100644 --- a/rbi/lib/hanzoai/models/team_list_available_params.rbi +++ b/rbi/lib/hanzoai/models/team_list_available_params.rbi @@ -19,12 +19,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(response_model: nil, request_options: {}) - end + def self.new(response_model: nil, request_options: {}); end sig { override.returns({response_model: T.anything, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_list_params.rbi b/rbi/lib/hanzoai/models/team_list_params.rbi index b9b538e2..309ca325 100644 --- a/rbi/lib/hanzoai/models/team_list_params.rbi +++ b/rbi/lib/hanzoai/models/team_list_params.rbi @@ -21,8 +21,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(organization_id: nil, user_id: nil, request_options: {}) - end + def self.new(organization_id: nil, user_id: nil, request_options: {}); end sig do override @@ -34,8 +33,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_remove_member_params.rbi b/rbi/lib/hanzoai/models/team_remove_member_params.rbi index 725bd8f3..1fc3920d 100644 --- a/rbi/lib/hanzoai/models/team_remove_member_params.rbi +++ b/rbi/lib/hanzoai/models/team_remove_member_params.rbi @@ -24,8 +24,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(team_id:, user_email: nil, user_id: nil, request_options: {}) - end + def self.new(team_id:, user_email: nil, user_id: nil, request_options: {}); end sig do override @@ -38,8 +37,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi index 397d18de..e32477dd 100644 --- a/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi @@ -17,12 +17,10 @@ module Hanzoai params(team_id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(team_id: nil, request_options: {}) - end + def self.new(team_id: nil, request_options: {}); end sig { override.returns({team_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_unblock_params.rbi b/rbi/lib/hanzoai/models/team_unblock_params.rbi index 01d32cc1..79f0d320 100644 --- a/rbi/lib/hanzoai/models/team_unblock_params.rbi +++ b/rbi/lib/hanzoai/models/team_unblock_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_update_member_params.rbi b/rbi/lib/hanzoai/models/team_update_member_params.rbi index 0ed8ff5f..6e3be1bd 100644 --- a/rbi/lib/hanzoai/models/team_update_member_params.rbi +++ b/rbi/lib/hanzoai/models/team_update_member_params.rbi @@ -55,8 +55,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module Role extend Hanzoai::Internal::Type::Enum @@ -69,8 +68,7 @@ module Hanzoai USER = T.let(:user, Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/team_update_member_response.rbi b/rbi/lib/hanzoai/models/team_update_member_response.rbi index 489f4a83..29779097 100644 --- a/rbi/lib/hanzoai/models/team_update_member_response.rbi +++ b/rbi/lib/hanzoai/models/team_update_member_response.rbi @@ -24,8 +24,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(team_id:, user_id:, max_budget_in_team: nil, user_email: nil) - end + def self.new(team_id:, user_id:, max_budget_in_team: nil, user_email: nil); end sig do override @@ -38,8 +37,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/team_update_params.rbi b/rbi/lib/hanzoai/models/team_update_params.rbi index d55bb5c1..054f35a3 100644 --- a/rbi/lib/hanzoai/models/team_update_params.rbi +++ b/rbi/lib/hanzoai/models/team_update_params.rbi @@ -89,9 +89,7 @@ module Hanzoai tpm_limit: nil, llm_changed_by: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -114,8 +112,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/test_ping_params.rbi b/rbi/lib/hanzoai/models/test_ping_params.rbi index 3159fecb..0f58fed3 100644 --- a/rbi/lib/hanzoai/models/test_ping_params.rbi +++ b/rbi/lib/hanzoai/models/test_ping_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/thread_create_params.rbi b/rbi/lib/hanzoai/models/thread_create_params.rbi index a4893885..222c4af9 100644 --- a/rbi/lib/hanzoai/models/thread_create_params.rbi +++ b/rbi/lib/hanzoai/models/thread_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/thread_retrieve_params.rbi b/rbi/lib/hanzoai/models/thread_retrieve_params.rbi index 266a8345..8ed7fc30 100644 --- a/rbi/lib/hanzoai/models/thread_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/thread_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/threads/message_create_params.rbi b/rbi/lib/hanzoai/models/threads/message_create_params.rbi index a54c889f..a3218934 100644 --- a/rbi/lib/hanzoai/models/threads/message_create_params.rbi +++ b/rbi/lib/hanzoai/models/threads/message_create_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/threads/message_list_params.rbi b/rbi/lib/hanzoai/models/threads/message_list_params.rbi index 9158d368..70ca2403 100644 --- a/rbi/lib/hanzoai/models/threads/message_list_params.rbi +++ b/rbi/lib/hanzoai/models/threads/message_list_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/threads/run_create_params.rbi b/rbi/lib/hanzoai/models/threads/run_create_params.rbi index fcd63252..0012ec74 100644 --- a/rbi/lib/hanzoai/models/threads/run_create_params.rbi +++ b/rbi/lib/hanzoai/models/threads/run_create_params.rbi @@ -11,12 +11,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/user_create_params.rbi b/rbi/lib/hanzoai/models/user_create_params.rbi index 40726c2e..1315fa29 100644 --- a/rbi/lib/hanzoai/models/user_create_params.rbi +++ b/rbi/lib/hanzoai/models/user_create_params.rbi @@ -152,9 +152,7 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -190,8 +188,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module UserRole extend Hanzoai::Internal::Type::Enum @@ -208,8 +205,7 @@ module Hanzoai T.let(:internal_user_viewer, Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/user_create_response.rbi b/rbi/lib/hanzoai/models/user_create_response.rbi index f78641b0..3d01bf9d 100644 --- a/rbi/lib/hanzoai/models/user_create_response.rbi +++ b/rbi/lib/hanzoai/models/user_create_response.rbi @@ -192,9 +192,7 @@ module Hanzoai user_email: nil, user_id: nil, user_role: nil - ) - end - + ); end sig do override .returns( @@ -238,8 +236,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module UserRole extend Hanzoai::Internal::Type::Enum @@ -256,8 +253,7 @@ module Hanzoai T.let(:internal_user_viewer, Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/user_delete_params.rbi b/rbi/lib/hanzoai/models/user_delete_params.rbi index 162929ce..681d52c8 100644 --- a/rbi/lib/hanzoai/models/user_delete_params.rbi +++ b/rbi/lib/hanzoai/models/user_delete_params.rbi @@ -25,8 +25,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(user_ids:, llm_changed_by: nil, request_options: {}) - end + def self.new(user_ids:, llm_changed_by: nil, request_options: {}); end sig do override @@ -36,8 +35,7 @@ module Hanzoai request_options: Hanzoai::RequestOptions }) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/user_list_params.rbi b/rbi/lib/hanzoai/models/user_list_params.rbi index 114bc136..14c10613 100644 --- a/rbi/lib/hanzoai/models/user_list_params.rbi +++ b/rbi/lib/hanzoai/models/user_list_params.rbi @@ -38,8 +38,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}) - end + def self.new(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}); end sig do override @@ -53,8 +52,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi index 3d8f4d03..b3848a84 100644 --- a/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi @@ -17,12 +17,10 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(user_id: nil, request_options: {}) - end + def self.new(user_id: nil, request_options: {}); end sig { override.returns({user_id: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/user_update_params.rbi b/rbi/lib/hanzoai/models/user_update_params.rbi index c2d2b1c5..9575c477 100644 --- a/rbi/lib/hanzoai/models/user_update_params.rbi +++ b/rbi/lib/hanzoai/models/user_update_params.rbi @@ -134,9 +134,7 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -169,8 +167,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module UserRole extend Hanzoai::Internal::Type::Enum @@ -187,8 +184,7 @@ module Hanzoai T.let(:internal_user_viewer, Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/util_get_supported_openai_params_params.rbi b/rbi/lib/hanzoai/models/util_get_supported_openai_params_params.rbi index 48c4f510..3ca666f3 100644 --- a/rbi/lib/hanzoai/models/util_get_supported_openai_params_params.rbi +++ b/rbi/lib/hanzoai/models/util_get_supported_openai_params_params.rbi @@ -13,12 +13,10 @@ module Hanzoai params(model: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(model:, request_options: {}) - end + def self.new(model:, request_options: {}); end sig { override.returns({model: String, request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/util_token_counter_params.rbi b/rbi/lib/hanzoai/models/util_token_counter_params.rbi index 2d07a2c8..281aff47 100644 --- a/rbi/lib/hanzoai/models/util_token_counter_params.rbi +++ b/rbi/lib/hanzoai/models/util_token_counter_params.rbi @@ -24,8 +24,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(model:, messages: nil, prompt: nil, request_options: {}) - end + def self.new(model:, messages: nil, prompt: nil, request_options: {}); end sig do override @@ -38,8 +37,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/util_token_counter_response.rbi b/rbi/lib/hanzoai/models/util_token_counter_response.rbi index c6500b4c..49dff275 100644 --- a/rbi/lib/hanzoai/models/util_token_counter_response.rbi +++ b/rbi/lib/hanzoai/models/util_token_counter_response.rbi @@ -19,15 +19,13 @@ module Hanzoai params(model_used: String, request_model: String, tokenizer_type: String, total_tokens: Integer) .returns(T.attached_class) end - def self.new(model_used:, request_model:, tokenizer_type:, total_tokens:) - end + def self.new(model_used:, request_model:, tokenizer_type:, total_tokens:); end sig do override .returns({model_used: String, request_model: String, tokenizer_type: String, total_tokens: Integer}) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/util_transform_request_params.rbi b/rbi/lib/hanzoai/models/util_transform_request_params.rbi index e084d2cc..0c418239 100644 --- a/rbi/lib/hanzoai/models/util_transform_request_params.rbi +++ b/rbi/lib/hanzoai/models/util_transform_request_params.rbi @@ -20,8 +20,7 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(call_type:, request_body:, request_options: {}) - end + def self.new(call_type:, request_body:, request_options: {}); end sig do override @@ -33,8 +32,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end module CallType extend Hanzoai::Internal::Type::Enum @@ -140,8 +138,7 @@ module Hanzoai ARESPONSES = T.let(:aresponses, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) sig { override.returns(T::Array[Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol]) } - def self.values - end + def self.values; end end end end diff --git a/rbi/lib/hanzoai/models/util_transform_request_response.rbi b/rbi/lib/hanzoai/models/util_transform_request_response.rbi index e5f03985..a9669348 100644 --- a/rbi/lib/hanzoai/models/util_transform_request_response.rbi +++ b/rbi/lib/hanzoai/models/util_transform_request_response.rbi @@ -38,8 +38,7 @@ module Hanzoai } ) end - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/vertex_ai_create_params.rbi b/rbi/lib/hanzoai/models/vertex_ai_create_params.rbi index 071edd40..a660a591 100644 --- a/rbi/lib/hanzoai/models/vertex_ai_create_params.rbi +++ b/rbi/lib/hanzoai/models/vertex_ai_create_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/vertex_ai_delete_params.rbi b/rbi/lib/hanzoai/models/vertex_ai_delete_params.rbi index 515359be..e68ae63d 100644 --- a/rbi/lib/hanzoai/models/vertex_ai_delete_params.rbi +++ b/rbi/lib/hanzoai/models/vertex_ai_delete_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/vertex_ai_patch_params.rbi b/rbi/lib/hanzoai/models/vertex_ai_patch_params.rbi index b084bfc8..32d907dd 100644 --- a/rbi/lib/hanzoai/models/vertex_ai_patch_params.rbi +++ b/rbi/lib/hanzoai/models/vertex_ai_patch_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/vertex_ai_retrieve_params.rbi b/rbi/lib/hanzoai/models/vertex_ai_retrieve_params.rbi index 8c53ba96..cc0394e5 100644 --- a/rbi/lib/hanzoai/models/vertex_ai_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/vertex_ai_retrieve_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/models/vertex_ai_update_params.rbi b/rbi/lib/hanzoai/models/vertex_ai_update_params.rbi index 94d89800..1da4bdac 100644 --- a/rbi/lib/hanzoai/models/vertex_ai_update_params.rbi +++ b/rbi/lib/hanzoai/models/vertex_ai_update_params.rbi @@ -10,12 +10,10 @@ module Hanzoai params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(request_options: {}) - end + def self.new(request_options: {}); end sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash - end + def to_hash; end end end end diff --git a/rbi/lib/hanzoai/request_options.rbi b/rbi/lib/hanzoai/request_options.rbi index 1873f541..eec65282 100644 --- a/rbi/lib/hanzoai/request_options.rbi +++ b/rbi/lib/hanzoai/request_options.rbi @@ -9,8 +9,7 @@ module Hanzoai class RequestOptions < Hanzoai::Internal::Type::BaseModel # @api private sig { params(opts: T.any(T.self_type, T::Hash[Symbol, T.anything])).void } - def self.validate!(opts) - end + def self.validate!(opts); end # Idempotency key to send with request and all associated retries. Will only be # sent for write requests. @@ -42,7 +41,6 @@ module Hanzoai # Returns a new instance of RequestOptions. sig { params(values: Hanzoai::Internal::AnyHash).returns(T.attached_class) } - def self.new(values = {}) - end + def self.new(values = {}); end end end diff --git a/rbi/lib/hanzoai/resources/active.rbi b/rbi/lib/hanzoai/resources/active.rbi index 19cff5fc..21a1538c 100644 --- a/rbi/lib/hanzoai/resources/active.rbi +++ b/rbi/lib/hanzoai/resources/active.rbi @@ -30,13 +30,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def list_callbacks(request_options: {}) - end + def list_callbacks(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/add.rbi b/rbi/lib/hanzoai/resources/add.rbi index 18776834..24e4c294 100644 --- a/rbi/lib/hanzoai/resources/add.rbi +++ b/rbi/lib/hanzoai/resources/add.rbi @@ -16,13 +16,11 @@ module Hanzoai ) .returns(T.anything) end - def add_allowed_ip(ip:, request_options: {}) - end + def add_allowed_ip(ip:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/anthropic.rbi b/rbi/lib/hanzoai/resources/anthropic.rbi index 11a835a7..7de30280 100644 --- a/rbi/lib/hanzoai/resources/anthropic.rbi +++ b/rbi/lib/hanzoai/resources/anthropic.rbi @@ -11,8 +11,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) sig do @@ -22,8 +21,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) sig do @@ -33,8 +31,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) sig do @@ -44,8 +41,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) sig do @@ -55,13 +51,11 @@ module Hanzoai ) .returns(T.anything) end - def modify(endpoint, request_options: {}) - end + def modify(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/assemblyai.rbi b/rbi/lib/hanzoai/resources/assemblyai.rbi index bb834751..79687779 100644 --- a/rbi/lib/hanzoai/resources/assemblyai.rbi +++ b/rbi/lib/hanzoai/resources/assemblyai.rbi @@ -11,8 +11,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -22,8 +21,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -33,8 +31,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -44,8 +41,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -55,13 +51,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/assistants.rbi b/rbi/lib/hanzoai/resources/assistants.rbi index c50e9982..8c41beb7 100644 --- a/rbi/lib/hanzoai/resources/assistants.rbi +++ b/rbi/lib/hanzoai/resources/assistants.rbi @@ -11,8 +11,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create(request_options: {}) - end + def create(request_options: {}); end # Returns a list of assistants. # @@ -22,8 +21,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def list(request_options: {}) - end + def list(request_options: {}); end # Delete assistant # @@ -36,13 +34,11 @@ module Hanzoai ) .returns(T.anything) end - def delete(assistant_id, request_options: {}) - end + def delete(assistant_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/audio.rbi b/rbi/lib/hanzoai/resources/audio.rbi index df73790e..4a4c3c55 100644 --- a/rbi/lib/hanzoai/resources/audio.rbi +++ b/rbi/lib/hanzoai/resources/audio.rbi @@ -11,8 +11,7 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/audio/speech.rbi b/rbi/lib/hanzoai/resources/audio/speech.rbi index ba29948d..c3a14edc 100644 --- a/rbi/lib/hanzoai/resources/audio/speech.rbi +++ b/rbi/lib/hanzoai/resources/audio/speech.rbi @@ -11,13 +11,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create(request_options: {}) - end + def create(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi index 4ce6b210..5d9cf1de 100644 --- a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi +++ b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi @@ -14,13 +14,11 @@ module Hanzoai ) .returns(T.anything) end - def create(file:, request_options: {}) - end + def create(file:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/azure.rbi b/rbi/lib/hanzoai/resources/azure.rbi index 445e308e..1663f274 100644 --- a/rbi/lib/hanzoai/resources/azure.rbi +++ b/rbi/lib/hanzoai/resources/azure.rbi @@ -13,8 +13,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # @@ -26,8 +25,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # @@ -39,8 +37,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # @@ -52,8 +49,7 @@ module Hanzoai ) .returns(T.anything) end - def call(endpoint, request_options: {}) - end + def call(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # @@ -65,13 +61,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/batches.rbi b/rbi/lib/hanzoai/resources/batches.rbi index 8d982a57..89677f97 100644 --- a/rbi/lib/hanzoai/resources/batches.rbi +++ b/rbi/lib/hanzoai/resources/batches.rbi @@ -26,8 +26,7 @@ module Hanzoai ) .returns(T.anything) end - def create(provider: nil, request_options: {}) - end + def create(provider: nil, request_options: {}); end # Retrieves a batch. This is the equivalent of GET # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: @@ -51,9 +50,7 @@ module Hanzoai batch_id, provider: nil, request_options: {} - ) - end - + ); end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list # @@ -71,8 +68,7 @@ module Hanzoai ) .returns(T.anything) end - def list(after: nil, limit: nil, provider: nil, request_options: {}) - end + def list(after: nil, limit: nil, provider: nil, request_options: {}); end # Cancel a batch. This is the equivalent of POST # https://api.openai.com/v1/batches/{batch_id}/cancel @@ -94,8 +90,7 @@ module Hanzoai ) .returns(T.anything) end - def cancel_with_provider(batch_id, provider:, request_options: {}) - end + def cancel_with_provider(batch_id, provider:, request_options: {}); end # Create large batches of API requests for asynchronous processing. This is the # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: @@ -117,8 +112,7 @@ module Hanzoai ) .returns(T.anything) end - def create_with_provider(provider, request_options: {}) - end + def create_with_provider(provider, request_options: {}); end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list @@ -137,8 +131,7 @@ module Hanzoai ) .returns(T.anything) end - def list_with_provider(provider, after: nil, limit: nil, request_options: {}) - end + def list_with_provider(provider, after: nil, limit: nil, request_options: {}); end # Retrieves a batch. This is the equivalent of GET # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: @@ -162,13 +155,10 @@ module Hanzoai batch_id, provider:, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/batches/cancel.rbi b/rbi/lib/hanzoai/resources/batches/cancel.rbi index 71b6f78e..3436dbbd 100644 --- a/rbi/lib/hanzoai/resources/batches/cancel.rbi +++ b/rbi/lib/hanzoai/resources/batches/cancel.rbi @@ -24,13 +24,11 @@ module Hanzoai ) .returns(T.anything) end - def cancel(batch_id, provider: nil, request_options: {}) - end + def cancel(batch_id, provider: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/bedrock.rbi b/rbi/lib/hanzoai/resources/bedrock.rbi index 4f9cf603..c32f28ed 100644 --- a/rbi/lib/hanzoai/resources/bedrock.rbi +++ b/rbi/lib/hanzoai/resources/bedrock.rbi @@ -11,8 +11,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) sig do @@ -22,8 +21,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) sig do @@ -33,8 +31,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) sig do @@ -44,8 +41,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) sig do @@ -55,13 +51,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/budget.rbi b/rbi/lib/hanzoai/resources/budget.rbi index 730df4c7..79637d57 100644 --- a/rbi/lib/hanzoai/resources/budget.rbi +++ b/rbi/lib/hanzoai/resources/budget.rbi @@ -52,9 +52,7 @@ module Hanzoai # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} - ) - end - + ); end # Update an existing budget object. # # Parameters: @@ -104,16 +102,13 @@ module Hanzoai # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} - ) - end - + ); end # List all the created budgets in proxy db. Used on Admin UI. sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def list(request_options: {}) - end + def list(request_options: {}); end # Delete budget # @@ -132,8 +127,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(id:, request_options: {}) - end + def delete(id:, request_options: {}); end # Get the budget id specific information # @@ -147,8 +141,7 @@ module Hanzoai ) .returns(T.anything) end - def info(budgets:, request_options: {}) - end + def info(budgets:, request_options: {}); end # Get list of configurable params + current value for a budget item + description # of each field @@ -165,13 +158,11 @@ module Hanzoai ) .returns(T.anything) end - def settings(budget_id:, request_options: {}) - end + def settings(budget_id:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/cache.rbi b/rbi/lib/hanzoai/resources/cache.rbi index 93b6ab08..d4075b8c 100644 --- a/rbi/lib/hanzoai/resources/cache.rbi +++ b/rbi/lib/hanzoai/resources/cache.rbi @@ -21,8 +21,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def delete(request_options: {}) - end + def delete(request_options: {}); end # A function to flush all items from the cache. (All items will be deleted from # the cache with this) Raises HTTPException if the cache is not initialized or if @@ -38,21 +37,18 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def flush_all(request_options: {}) - end + def flush_all(request_options: {}); end # Endpoint for checking if cache can be pinged sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(Hanzoai::Models::CachePingResponse) end - def ping(request_options: {}) - end + def ping(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/cache/redis.rbi b/rbi/lib/hanzoai/resources/cache/redis.rbi index 94b355fc..9b5c0c1a 100644 --- a/rbi/lib/hanzoai/resources/cache/redis.rbi +++ b/rbi/lib/hanzoai/resources/cache/redis.rbi @@ -9,13 +9,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def retrieve_info(request_options: {}) - end + def retrieve_info(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/chat.rbi b/rbi/lib/hanzoai/resources/chat.rbi index 6b9e564e..314d1dba 100644 --- a/rbi/lib/hanzoai/resources/chat.rbi +++ b/rbi/lib/hanzoai/resources/chat.rbi @@ -8,8 +8,7 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/chat/completions.rbi b/rbi/lib/hanzoai/resources/chat/completions.rbi index 5a8e252f..d966ae69 100644 --- a/rbi/lib/hanzoai/resources/chat/completions.rbi +++ b/rbi/lib/hanzoai/resources/chat/completions.rbi @@ -28,13 +28,11 @@ module Hanzoai ) .returns(T.anything) end - def create(model: nil, request_options: {}) - end + def create(model: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/cohere.rbi b/rbi/lib/hanzoai/resources/cohere.rbi index 137b4875..cd9a4206 100644 --- a/rbi/lib/hanzoai/resources/cohere.rbi +++ b/rbi/lib/hanzoai/resources/cohere.rbi @@ -11,8 +11,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) sig do @@ -22,8 +21,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) sig do @@ -33,8 +31,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) sig do @@ -44,8 +41,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) sig do @@ -55,13 +51,11 @@ module Hanzoai ) .returns(T.anything) end - def modify(endpoint, request_options: {}) - end + def modify(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/completions.rbi b/rbi/lib/hanzoai/resources/completions.rbi index c3bd92d3..43e2bc38 100644 --- a/rbi/lib/hanzoai/resources/completions.rbi +++ b/rbi/lib/hanzoai/resources/completions.rbi @@ -24,13 +24,11 @@ module Hanzoai ) .returns(T.anything) end - def create(model: nil, request_options: {}) - end + def create(model: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/config.rbi b/rbi/lib/hanzoai/resources/config.rbi index d44ffc75..4644834c 100644 --- a/rbi/lib/hanzoai/resources/config.rbi +++ b/rbi/lib/hanzoai/resources/config.rbi @@ -8,8 +8,7 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi b/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi index 0753875b..005c131f 100644 --- a/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi +++ b/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi @@ -23,9 +23,7 @@ module Hanzoai # The URL to which requests for this path should be forwarded. target:, request_options: {} - ) - end - + ); end # Update a pass-through endpoint sig do params( @@ -34,8 +32,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint_id, request_options: {}) - end + def update(endpoint_id, request_options: {}); end # GET configured pass through endpoint. # @@ -47,8 +44,7 @@ module Hanzoai ) .returns(Hanzoai::Models::Config::PassThroughEndpointResponse) end - def list(endpoint_id: nil, request_options: {}) - end + def list(endpoint_id: nil, request_options: {}); end # Delete a pass-through endpoint # @@ -60,13 +56,11 @@ module Hanzoai ) .returns(Hanzoai::Models::Config::PassThroughEndpointResponse) end - def delete(endpoint_id:, request_options: {}) - end + def delete(endpoint_id:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/credentials.rbi b/rbi/lib/hanzoai/resources/credentials.rbi index 5598fe79..f83e895e 100644 --- a/rbi/lib/hanzoai/resources/credentials.rbi +++ b/rbi/lib/hanzoai/resources/credentials.rbi @@ -29,8 +29,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def list(request_options: {}) - end + def list(request_options: {}); end # [BETA] endpoint. This might change unexpectedly. sig do @@ -40,13 +39,11 @@ module Hanzoai ) .returns(T.anything) end - def delete(credential_name, request_options: {}) - end + def delete(credential_name, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/customer.rbi b/rbi/lib/hanzoai/resources/customer.rbi index b6d8ef86..769daf34 100644 --- a/rbi/lib/hanzoai/resources/customer.rbi +++ b/rbi/lib/hanzoai/resources/customer.rbi @@ -98,9 +98,7 @@ module Hanzoai # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} - ) - end - + ); end # Example curl # # Parameters: @@ -147,9 +145,7 @@ module Hanzoai default_model: nil, max_budget: nil, request_options: {} - ) - end - + ); end # [Admin-only] List all available customers # # Example curl: @@ -161,8 +157,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T::Array[Hanzoai::Models::CustomerListResponseItem]) end - def list(request_options: {}) - end + def list(request_options: {}); end # Delete multiple end-users. # @@ -186,8 +181,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(user_ids:, request_options: {}) - end + def delete(user_ids:, request_options: {}); end # [BETA] Reject calls with this end-user id # @@ -212,8 +206,7 @@ module Hanzoai ) .returns(T.anything) end - def block(user_ids:, request_options: {}) - end + def block(user_ids:, request_options: {}); end # Get information about an end-user. An `end_user` is a customer (external user) # of the proxy. @@ -238,9 +231,7 @@ module Hanzoai # End User ID in the request parameters end_user_id:, request_options: {} - ) - end - + ); end # [BETA] Unblock calls with this user id # # Example @@ -259,13 +250,11 @@ module Hanzoai ) .returns(T.anything) end - def unblock(user_ids:, request_options: {}) - end + def unblock(user_ids:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/delete.rbi b/rbi/lib/hanzoai/resources/delete.rbi index 8c6e6742..1dae07a5 100644 --- a/rbi/lib/hanzoai/resources/delete.rbi +++ b/rbi/lib/hanzoai/resources/delete.rbi @@ -16,13 +16,11 @@ module Hanzoai ) .returns(T.anything) end - def create_allowed_ip(ip:, request_options: {}) - end + def create_allowed_ip(ip:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/embeddings.rbi b/rbi/lib/hanzoai/resources/embeddings.rbi index 78947275..7f8e5b03 100644 --- a/rbi/lib/hanzoai/resources/embeddings.rbi +++ b/rbi/lib/hanzoai/resources/embeddings.rbi @@ -22,13 +22,11 @@ module Hanzoai ) .returns(T.anything) end - def create(model: nil, request_options: {}) - end + def create(model: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/engines.rbi b/rbi/lib/hanzoai/resources/engines.rbi index 33123b33..20a22c57 100644 --- a/rbi/lib/hanzoai/resources/engines.rbi +++ b/rbi/lib/hanzoai/resources/engines.rbi @@ -27,8 +27,7 @@ module Hanzoai ) .returns(T.anything) end - def complete(model, request_options: {}) - end + def complete(model, request_options: {}); end # Follows the exact same API spec as # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` @@ -49,13 +48,11 @@ module Hanzoai ) .returns(T.anything) end - def embed(model, request_options: {}) - end + def embed(model, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/engines/chat.rbi b/rbi/lib/hanzoai/resources/engines/chat.rbi index 54aa4cd7..7296ab5e 100644 --- a/rbi/lib/hanzoai/resources/engines/chat.rbi +++ b/rbi/lib/hanzoai/resources/engines/chat.rbi @@ -28,13 +28,11 @@ module Hanzoai ) .returns(T.anything) end - def complete(model, request_options: {}) - end + def complete(model, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/eu_assemblyai.rbi b/rbi/lib/hanzoai/resources/eu_assemblyai.rbi index b6ad53cb..5be92ab2 100644 --- a/rbi/lib/hanzoai/resources/eu_assemblyai.rbi +++ b/rbi/lib/hanzoai/resources/eu_assemblyai.rbi @@ -11,8 +11,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -22,8 +21,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -33,8 +31,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -44,8 +41,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # Assemblyai Proxy Route sig do @@ -55,13 +51,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/files.rbi b/rbi/lib/hanzoai/resources/files.rbi index f533d3cc..64a1b78e 100644 --- a/rbi/lib/hanzoai/resources/files.rbi +++ b/rbi/lib/hanzoai/resources/files.rbi @@ -28,8 +28,7 @@ module Hanzoai ) .returns(T.anything) end - def create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}) - end + def create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}); end # Returns information about a specific file. that can be used across - Assistants # API, Batch API This is the equivalent of GET @@ -52,8 +51,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(file_id, provider:, request_options: {}) - end + def retrieve(file_id, provider:, request_options: {}); end # Returns information about a specific file. that can be used across - Assistants # API, Batch API This is the equivalent of GET https://api.openai.com/v1/files/ @@ -75,8 +73,7 @@ module Hanzoai ) .returns(T.anything) end - def list(provider, purpose: nil, request_options: {}) - end + def list(provider, purpose: nil, request_options: {}); end # Deletes a specified file. that can be used across - Assistants API, Batch API # This is the equivalent of DELETE https://api.openai.com/v1/files/{file_id} @@ -98,13 +95,11 @@ module Hanzoai ) .returns(T.anything) end - def delete(file_id, provider:, request_options: {}) - end + def delete(file_id, provider:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/files/content.rbi b/rbi/lib/hanzoai/resources/files/content.rbi index 6b4f77d0..0c167da3 100644 --- a/rbi/lib/hanzoai/resources/files/content.rbi +++ b/rbi/lib/hanzoai/resources/files/content.rbi @@ -25,13 +25,11 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(file_id, provider:, request_options: {}) - end + def retrieve(file_id, provider:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/fine_tuning.rbi b/rbi/lib/hanzoai/resources/fine_tuning.rbi index 4ce565bc..132ef958 100644 --- a/rbi/lib/hanzoai/resources/fine_tuning.rbi +++ b/rbi/lib/hanzoai/resources/fine_tuning.rbi @@ -8,8 +8,7 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi b/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi index d00c9f43..f5efdae5 100644 --- a/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi +++ b/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi @@ -51,9 +51,7 @@ module Hanzoai suffix: nil, validation_file: nil, request_options: {} - ) - end - + ); end # Retrieves a fine-tuning job. This is the equivalent of GET # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id} # @@ -69,8 +67,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}) - end + def retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}); end # Lists fine-tuning jobs for the organization. This is the equivalent of GET # https://api.openai.com/v1/fine_tuning/jobs @@ -89,13 +86,11 @@ module Hanzoai ) .returns(T.anything) end - def list(custom_llm_provider:, after: nil, limit: nil, request_options: {}) - end + def list(custom_llm_provider:, after: nil, limit: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi b/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi index d28566dd..394cfd86 100644 --- a/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi +++ b/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi @@ -21,13 +21,11 @@ module Hanzoai ) .returns(T.anything) end - def create(fine_tuning_job_id, request_options: {}) - end + def create(fine_tuning_job_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/gemini.rbi b/rbi/lib/hanzoai/resources/gemini.rbi index eff8215f..c970ac60 100644 --- a/rbi/lib/hanzoai/resources/gemini.rbi +++ b/rbi/lib/hanzoai/resources/gemini.rbi @@ -11,8 +11,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) sig do @@ -22,8 +21,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) sig do @@ -33,8 +31,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) sig do @@ -44,8 +41,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) sig do @@ -55,13 +51,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/global.rbi b/rbi/lib/hanzoai/resources/global.rbi index a4a13a1f..3a626114 100644 --- a/rbi/lib/hanzoai/resources/global.rbi +++ b/rbi/lib/hanzoai/resources/global.rbi @@ -8,8 +8,7 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/global/spend.rbi b/rbi/lib/hanzoai/resources/global/spend.rbi index 16fe21b4..97d2b60f 100644 --- a/rbi/lib/hanzoai/resources/global/spend.rbi +++ b/rbi/lib/hanzoai/resources/global/spend.rbi @@ -34,9 +34,7 @@ module Hanzoai # comman separated tags to filter on tags: nil, request_options: {} - ) - end - + ); end # ADMIN ONLY / MASTER KEY Only Endpoint # # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs @@ -49,8 +47,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def reset(request_options: {}) - end + def reset(request_options: {}); end # Get Daily Spend per Team, based on specific startTime and endTime. Per team, # view usage by each key, model [ { "group-by-day": "2024-05-10", "teams": [ { @@ -88,13 +85,10 @@ module Hanzoai # View spend for a specific team_id. Example team_id='1234 team_id: nil, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/guardrails.rbi b/rbi/lib/hanzoai/resources/guardrails.rbi index ddde25a9..495cdbcf 100644 --- a/rbi/lib/hanzoai/resources/guardrails.rbi +++ b/rbi/lib/hanzoai/resources/guardrails.rbi @@ -41,13 +41,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(Hanzoai::Models::GuardrailListResponse) end - def list(request_options: {}) - end + def list(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/health.rbi b/rbi/lib/hanzoai/resources/health.rbi index 657912b6..3362e627 100644 --- a/rbi/lib/hanzoai/resources/health.rbi +++ b/rbi/lib/hanzoai/resources/health.rbi @@ -29,32 +29,27 @@ module Hanzoai # Specify the model name (optional) model: nil, request_options: {} - ) - end - + ); end # Unprotected endpoint for checking if worker is alive sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def check_liveliness(request_options: {}) - end + def check_liveliness(request_options: {}); end # Unprotected endpoint for checking if worker is alive sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def check_liveness(request_options: {}) - end + def check_liveness(request_options: {}); end # Unprotected endpoint for checking if worker can receive requests sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def check_readiness(request_options: {}) - end + def check_readiness(request_options: {}); end # Use this admin-only endpoint to check if the service is healthy. # @@ -74,13 +69,10 @@ module Hanzoai # Specify the service being hit. service:, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/images.rbi b/rbi/lib/hanzoai/resources/images.rbi index 6cbc3db1..826ba73a 100644 --- a/rbi/lib/hanzoai/resources/images.rbi +++ b/rbi/lib/hanzoai/resources/images.rbi @@ -8,8 +8,7 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/images/generations.rbi b/rbi/lib/hanzoai/resources/images/generations.rbi index 73d216b2..0bbeaf99 100644 --- a/rbi/lib/hanzoai/resources/images/generations.rbi +++ b/rbi/lib/hanzoai/resources/images/generations.rbi @@ -9,13 +9,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create(request_options: {}) - end + def create(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/key.rbi b/rbi/lib/hanzoai/resources/key.rbi index ffb320e2..34cd430b 100644 --- a/rbi/lib/hanzoai/resources/key.rbi +++ b/rbi/lib/hanzoai/resources/key.rbi @@ -157,9 +157,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # List all keys for a given user / team / organization. # # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, @@ -196,9 +194,7 @@ module Hanzoai # Filter keys by user ID user_id: nil, request_options: {} - ) - end - + ); end # Delete a key from the key management system. # # Parameters:: @@ -243,9 +239,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # Block an Virtual key from making any requests. # # Parameters: @@ -278,9 +272,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # Check the health of the key # # Checks: @@ -324,8 +316,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(Hanzoai::Models::KeyCheckHealthResponse) end - def check_health(request_options: {}) - end + def check_health(request_options: {}); end # Generate an API key based on the provided data. # @@ -504,9 +495,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # Regenerate an existing API key while optionally updating its parameters. # # Parameters: @@ -657,9 +646,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # Retrieve information about a key. Parameters: key: Optional[str] = Query # parameter representing the key in the request user_api_key_dict: UserAPIKeyAuth # = Dependency representing the user's API key Returns: Dict containing the key @@ -688,9 +675,7 @@ module Hanzoai # Key in the request parameters key: nil, request_options: {} - ) - end - + ); end # Unblock a Virtual key to allow it to make requests again. # # Parameters: @@ -723,13 +708,10 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/key/regenerate.rbi b/rbi/lib/hanzoai/resources/key/regenerate.rbi index 4e788c3d..bcbe9fb6 100644 --- a/rbi/lib/hanzoai/resources/key/regenerate.rbi +++ b/rbi/lib/hanzoai/resources/key/regenerate.rbi @@ -6,8 +6,7 @@ module Hanzoai class Regenerate # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/langfuse.rbi b/rbi/lib/hanzoai/resources/langfuse.rbi index 9d832452..d65e5522 100644 --- a/rbi/lib/hanzoai/resources/langfuse.rbi +++ b/rbi/lib/hanzoai/resources/langfuse.rbi @@ -13,8 +13,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # @@ -26,8 +25,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # @@ -39,8 +37,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # @@ -52,8 +49,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # @@ -65,13 +61,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/model.rbi b/rbi/lib/hanzoai/resources/model.rbi index 7cdcaa31..59b2154f 100644 --- a/rbi/lib/hanzoai/resources/model.rbi +++ b/rbi/lib/hanzoai/resources/model.rbi @@ -25,9 +25,7 @@ module Hanzoai model_info:, model_name:, request_options: {} - ) - end - + ); end # Allows deleting models in the model list in the config.yaml sig do params( @@ -41,13 +39,11 @@ module Hanzoai ) .returns(T.anything) end - def delete(id:, request_options: {}) - end + def delete(id:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/model/info.rbi b/rbi/lib/hanzoai/resources/model/info.rbi index 12b4dfea..95aa3c01 100644 --- a/rbi/lib/hanzoai/resources/model/info.rbi +++ b/rbi/lib/hanzoai/resources/model/info.rbi @@ -41,13 +41,11 @@ module Hanzoai ) .returns(T.anything) end - def list(llm_model_id: nil, request_options: {}) - end + def list(llm_model_id: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/model/update.rbi b/rbi/lib/hanzoai/resources/model/update.rbi index 36059ea1..9f5587dd 100644 --- a/rbi/lib/hanzoai/resources/model/update.rbi +++ b/rbi/lib/hanzoai/resources/model/update.rbi @@ -14,8 +14,7 @@ module Hanzoai ) .returns(T.anything) end - def full(llm_params: nil, model_info: nil, model_name: nil, request_options: {}) - end + def full(llm_params: nil, model_info: nil, model_name: nil, request_options: {}); end # PATCH Endpoint for partial model updates. # @@ -39,13 +38,11 @@ module Hanzoai ) .returns(T.anything) end - def partial(model_id, llm_params: nil, model_info: nil, model_name: nil, request_options: {}) - end + def partial(model_id, llm_params: nil, model_info: nil, model_name: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/model_group.rbi b/rbi/lib/hanzoai/resources/model_group.rbi index 6f5f33b5..a965bc37 100644 --- a/rbi/lib/hanzoai/resources/model_group.rbi +++ b/rbi/lib/hanzoai/resources/model_group.rbi @@ -152,13 +152,11 @@ module Hanzoai ) .returns(T.anything) end - def retrieve_info(model_group: nil, request_options: {}) - end + def retrieve_info(model_group: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/models.rbi b/rbi/lib/hanzoai/resources/models.rbi index e098d884..d13ca199 100644 --- a/rbi/lib/hanzoai/resources/models.rbi +++ b/rbi/lib/hanzoai/resources/models.rbi @@ -15,13 +15,11 @@ module Hanzoai ) .returns(T.anything) end - def list(return_wildcard_routes: nil, team_id: nil, request_options: {}) - end + def list(return_wildcard_routes: nil, team_id: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/moderations.rbi b/rbi/lib/hanzoai/resources/moderations.rbi index 9a81c79f..d8ff0158 100644 --- a/rbi/lib/hanzoai/resources/moderations.rbi +++ b/rbi/lib/hanzoai/resources/moderations.rbi @@ -15,13 +15,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create(request_options: {}) - end + def create(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/openai.rbi b/rbi/lib/hanzoai/resources/openai.rbi index d80697bf..2a9fe604 100644 --- a/rbi/lib/hanzoai/resources/openai.rbi +++ b/rbi/lib/hanzoai/resources/openai.rbi @@ -15,8 +15,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. @@ -27,8 +26,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. @@ -39,8 +37,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. @@ -51,8 +48,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. @@ -63,13 +59,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/openai/deployments.rbi b/rbi/lib/hanzoai/resources/openai/deployments.rbi index b3350b54..5b96104f 100644 --- a/rbi/lib/hanzoai/resources/openai/deployments.rbi +++ b/rbi/lib/hanzoai/resources/openai/deployments.rbi @@ -28,8 +28,7 @@ module Hanzoai ) .returns(T.anything) end - def complete(model, request_options: {}) - end + def complete(model, request_options: {}); end # Follows the exact same API spec as # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` @@ -50,13 +49,11 @@ module Hanzoai ) .returns(T.anything) end - def embed(model, request_options: {}) - end + def embed(model, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi b/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi index 767652da..f1e3167a 100644 --- a/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi +++ b/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi @@ -29,13 +29,11 @@ module Hanzoai ) .returns(T.anything) end - def complete(model, request_options: {}) - end + def complete(model, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/organization.rbi b/rbi/lib/hanzoai/resources/organization.rbi index 0578cd46..f8a6dfc0 100644 --- a/rbi/lib/hanzoai/resources/organization.rbi +++ b/rbi/lib/hanzoai/resources/organization.rbi @@ -102,9 +102,7 @@ module Hanzoai soft_budget: nil, tpm_limit: nil, request_options: {} - ) - end - + ); end # Update an organization sig do params( @@ -128,9 +126,7 @@ module Hanzoai spend: nil, updated_by: nil, request_options: {} - ) - end - + ); end # ``` # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' # ``` @@ -138,8 +134,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T::Array[Hanzoai::Models::OrganizationListResponseItem]) end - def list(request_options: {}) - end + def list(request_options: {}); end # Delete an organization # @@ -153,8 +148,7 @@ module Hanzoai ) .returns(T::Array[Hanzoai::Models::OrganizationDeleteResponseItem]) end - def delete(organization_ids:, request_options: {}) - end + def delete(organization_ids:, request_options: {}); end # [BETA] # @@ -206,8 +200,7 @@ module Hanzoai ) .returns(Hanzoai::Models::OrganizationAddMemberResponse) end - def add_member(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) - end + def add_member(member:, organization_id:, max_budget_in_organization: nil, request_options: {}); end # Delete a member from an organization sig do @@ -219,8 +212,7 @@ module Hanzoai ) .returns(T.anything) end - def delete_member(organization_id:, user_email: nil, user_id: nil, request_options: {}) - end + def delete_member(organization_id:, user_email: nil, user_id: nil, request_options: {}); end # Update a member's role in an organization sig do @@ -252,13 +244,10 @@ module Hanzoai user_email: nil, user_id: nil, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/organization/info.rbi b/rbi/lib/hanzoai/resources/organization/info.rbi index 3456b580..73ffe43b 100644 --- a/rbi/lib/hanzoai/resources/organization/info.rbi +++ b/rbi/lib/hanzoai/resources/organization/info.rbi @@ -12,8 +12,7 @@ module Hanzoai ) .returns(Hanzoai::Models::Organization::InfoRetrieveResponse) end - def retrieve(organization_id:, request_options: {}) - end + def retrieve(organization_id:, request_options: {}); end # DEPRECATED: Use GET /organization/info instead sig do @@ -23,13 +22,11 @@ module Hanzoai ) .returns(T.anything) end - def deprecated(organizations:, request_options: {}) - end + def deprecated(organizations:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/provider.rbi b/rbi/lib/hanzoai/resources/provider.rbi index ab6d1d2c..63ab5e61 100644 --- a/rbi/lib/hanzoai/resources/provider.rbi +++ b/rbi/lib/hanzoai/resources/provider.rbi @@ -51,13 +51,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(Hanzoai::Models::ProviderListBudgetsResponse) end - def list_budgets(request_options: {}) - end + def list_budgets(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/rerank.rbi b/rbi/lib/hanzoai/resources/rerank.rbi index 375acb38..c7e90b81 100644 --- a/rbi/lib/hanzoai/resources/rerank.rbi +++ b/rbi/lib/hanzoai/resources/rerank.rbi @@ -8,29 +8,25 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create(request_options: {}) - end + def create(request_options: {}); end # Rerank sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create_v1(request_options: {}) - end + def create_v1(request_options: {}); end # Rerank sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create_v2(request_options: {}) - end + def create_v2(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/responses.rbi b/rbi/lib/hanzoai/resources/responses.rbi index 0d367ed2..5e3505fc 100644 --- a/rbi/lib/hanzoai/resources/responses.rbi +++ b/rbi/lib/hanzoai/resources/responses.rbi @@ -19,8 +19,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create(request_options: {}) - end + def create(request_options: {}); end # Get a response by ID. # @@ -37,8 +36,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(response_id, request_options: {}) - end + def retrieve(response_id, request_options: {}); end # Delete a response by ID. # @@ -55,13 +53,11 @@ module Hanzoai ) .returns(T.anything) end - def delete(response_id, request_options: {}) - end + def delete(response_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/responses/input_items.rbi b/rbi/lib/hanzoai/resources/responses/input_items.rbi index c620f452..3e9c152f 100644 --- a/rbi/lib/hanzoai/resources/responses/input_items.rbi +++ b/rbi/lib/hanzoai/resources/responses/input_items.rbi @@ -19,13 +19,11 @@ module Hanzoai ) .returns(T.anything) end - def list(response_id, request_options: {}) - end + def list(response_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/routes.rbi b/rbi/lib/hanzoai/resources/routes.rbi index cdb7ee44..348d3c32 100644 --- a/rbi/lib/hanzoai/resources/routes.rbi +++ b/rbi/lib/hanzoai/resources/routes.rbi @@ -8,13 +8,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def list(request_options: {}) - end + def list(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/settings.rbi b/rbi/lib/hanzoai/resources/settings.rbi index 9a242582..c5beaa4b 100644 --- a/rbi/lib/hanzoai/resources/settings.rbi +++ b/rbi/lib/hanzoai/resources/settings.rbi @@ -30,13 +30,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def retrieve(request_options: {}) - end + def retrieve(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/spend.rbi b/rbi/lib/hanzoai/resources/spend.rbi index e6868bf5..90326c91 100644 --- a/rbi/lib/hanzoai/resources/spend.rbi +++ b/rbi/lib/hanzoai/resources/spend.rbi @@ -59,8 +59,7 @@ module Hanzoai ) .returns(T.anything) end - def calculate_spend(completion_response: nil, messages: nil, model: nil, request_options: {}) - end + def calculate_spend(completion_response: nil, messages: nil, model: nil, request_options: {}); end # View all spend logs, if request_id is provided, only logs for that request_id # will be returned @@ -112,9 +111,7 @@ module Hanzoai # Get spend logs based on user_id user_id: nil, request_options: {} - ) - end - + ); end # LLM Enterprise - View Spend Per Request Tag # # Example Request: @@ -142,13 +139,10 @@ module Hanzoai # Time from which to start viewing key spend start_date: nil, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/team.rbi b/rbi/lib/hanzoai/resources/team.rbi index 6a293bba..092f6d6f 100644 --- a/rbi/lib/hanzoai/resources/team.rbi +++ b/rbi/lib/hanzoai/resources/team.rbi @@ -136,9 +136,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # Use `/team/member_add` AND `/team/member/delete` to add/remove new team members # # You can now update team budget / rate limits via /team/update @@ -242,9 +240,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # ``` # curl --location --request GET 'http://0.0.0.0:4000/team/list' --header 'Authorization: Bearer sk-1234' # ``` @@ -269,9 +265,7 @@ module Hanzoai # Only return teams which this 'user_id' belongs to user_id: nil, request_options: {} - ) - end - + ); end # delete team and associated team keys # # Parameters: @@ -300,9 +294,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # [BETA] # # Add new members (either via user_email or user_id) to a team @@ -329,8 +321,7 @@ module Hanzoai ) .returns(Hanzoai::Models::TeamAddMemberResponse) end - def add_member(member:, team_id:, max_budget_in_team: nil, request_options: {}) - end + def add_member(member:, team_id:, max_budget_in_team: nil, request_options: {}); end # Blocks all calls from keys with this team id. # @@ -356,8 +347,7 @@ module Hanzoai ) .returns(T.anything) end - def block(team_id:, request_options: {}) - end + def block(team_id:, request_options: {}); end # Disable all logging callbacks for a team # @@ -377,8 +367,7 @@ module Hanzoai ) .returns(T.anything) end - def disable_logging(team_id, request_options: {}) - end + def disable_logging(team_id, request_options: {}); end # List Available Teams sig do @@ -388,8 +377,7 @@ module Hanzoai ) .returns(T.anything) end - def list_available(response_model: nil, request_options: {}) - end + def list_available(response_model: nil, request_options: {}); end # [BETA] # @@ -415,8 +403,7 @@ module Hanzoai ) .returns(T.anything) end - def remove_member(team_id:, user_email: nil, user_id: nil, request_options: {}) - end + def remove_member(team_id:, user_email: nil, user_id: nil, request_options: {}); end # get info on team + related keys # @@ -438,9 +425,7 @@ module Hanzoai # Team ID in the request parameters team_id: nil, request_options: {} - ) - end - + ); end # Blocks all calls from keys with this team id. # # Parameters: @@ -461,8 +446,7 @@ module Hanzoai ) .returns(T.anything) end - def unblock(team_id:, request_options: {}) - end + def unblock(team_id:, request_options: {}); end # [BETA] # @@ -490,8 +474,7 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/team/callback.rbi b/rbi/lib/hanzoai/resources/team/callback.rbi index 528a8a26..269c7bdc 100644 --- a/rbi/lib/hanzoai/resources/team/callback.rbi +++ b/rbi/lib/hanzoai/resources/team/callback.rbi @@ -30,8 +30,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(team_id, request_options: {}) - end + def retrieve(team_id, request_options: {}); end # Add a success/failure callback to a team # @@ -98,13 +97,10 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/team/model.rbi b/rbi/lib/hanzoai/resources/team/model.rbi index c6a2fd8e..d7d91251 100644 --- a/rbi/lib/hanzoai/resources/team/model.rbi +++ b/rbi/lib/hanzoai/resources/team/model.rbi @@ -28,8 +28,7 @@ module Hanzoai ) .returns(T.anything) end - def add(models:, team_id:, request_options: {}) - end + def add(models:, team_id:, request_options: {}); end # Remove models from a team's allowed model list. Only proxy admin or team admin # can remove models. @@ -55,13 +54,11 @@ module Hanzoai ) .returns(T.anything) end - def remove(models:, team_id:, request_options: {}) - end + def remove(models:, team_id:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/test.rbi b/rbi/lib/hanzoai/resources/test.rbi index d32d3781..6dcc0e30 100644 --- a/rbi/lib/hanzoai/resources/test.rbi +++ b/rbi/lib/hanzoai/resources/test.rbi @@ -14,13 +14,11 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def ping(request_options: {}) - end + def ping(request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/threads.rbi b/rbi/lib/hanzoai/resources/threads.rbi index 22c885ce..6582d108 100644 --- a/rbi/lib/hanzoai/resources/threads.rbi +++ b/rbi/lib/hanzoai/resources/threads.rbi @@ -17,8 +17,7 @@ module Hanzoai params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) end - def create(request_options: {}) - end + def create(request_options: {}); end # Retrieves a thread. # @@ -30,13 +29,11 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(thread_id, request_options: {}) - end + def retrieve(thread_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/threads/messages.rbi b/rbi/lib/hanzoai/resources/threads/messages.rbi index ec4fb476..e1af53a9 100644 --- a/rbi/lib/hanzoai/resources/threads/messages.rbi +++ b/rbi/lib/hanzoai/resources/threads/messages.rbi @@ -15,8 +15,7 @@ module Hanzoai ) .returns(T.anything) end - def create(thread_id, request_options: {}) - end + def create(thread_id, request_options: {}); end # Returns a list of messages for a given thread. # @@ -29,13 +28,11 @@ module Hanzoai ) .returns(T.anything) end - def list(thread_id, request_options: {}) - end + def list(thread_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/threads/runs.rbi b/rbi/lib/hanzoai/resources/threads/runs.rbi index 18316977..57189a96 100644 --- a/rbi/lib/hanzoai/resources/threads/runs.rbi +++ b/rbi/lib/hanzoai/resources/threads/runs.rbi @@ -14,13 +14,11 @@ module Hanzoai ) .returns(T.anything) end - def create(thread_id, request_options: {}) - end + def create(thread_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/user.rbi b/rbi/lib/hanzoai/resources/user.rbi index dc2602c6..5abbd7da 100644 --- a/rbi/lib/hanzoai/resources/user.rbi +++ b/rbi/lib/hanzoai/resources/user.rbi @@ -147,9 +147,7 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ) - end - + ); end # Example curl # # ``` @@ -262,9 +260,7 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ) - end - + ); end # Get a paginated list of users, optionally filtered by role. # # Used by the UI to populate the user lists. @@ -302,9 +298,7 @@ module Hanzoai # Get list of users by user_ids user_ids: nil, request_options: {} - ) - end - + ); end # delete user and associated user keys # # ``` @@ -335,9 +329,7 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end # [10/07/2024] Note: To get all users (+pagination), use `/user/list` endpoint. # # Use this to get user information. (user row + all user key info) @@ -358,13 +350,10 @@ module Hanzoai # User ID in the request parameters user_id: nil, request_options: {} - ) - end - + ); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/utils.rbi b/rbi/lib/hanzoai/resources/utils.rbi index 619c19ee..2c0ae394 100644 --- a/rbi/lib/hanzoai/resources/utils.rbi +++ b/rbi/lib/hanzoai/resources/utils.rbi @@ -19,8 +19,7 @@ module Hanzoai ) .returns(T.anything) end - def get_supported_openai_params(model:, request_options: {}) - end + def get_supported_openai_params(model:, request_options: {}); end # Token Counter sig do @@ -32,8 +31,7 @@ module Hanzoai ) .returns(Hanzoai::Models::UtilTokenCounterResponse) end - def token_counter(model:, messages: nil, prompt: nil, request_options: {}) - end + def token_counter(model:, messages: nil, prompt: nil, request_options: {}); end # Transform Request sig do @@ -44,13 +42,11 @@ module Hanzoai ) .returns(Hanzoai::Models::UtilTransformRequestResponse) end - def transform_request(call_type:, request_body:, request_options: {}) - end + def transform_request(call_type:, request_body:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end diff --git a/rbi/lib/hanzoai/resources/vertex_ai.rbi b/rbi/lib/hanzoai/resources/vertex_ai.rbi index d6488565..83be29d4 100644 --- a/rbi/lib/hanzoai/resources/vertex_ai.rbi +++ b/rbi/lib/hanzoai/resources/vertex_ai.rbi @@ -13,8 +13,7 @@ module Hanzoai ) .returns(T.anything) end - def create(endpoint, request_options: {}) - end + def create(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # @@ -26,8 +25,7 @@ module Hanzoai ) .returns(T.anything) end - def retrieve(endpoint, request_options: {}) - end + def retrieve(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # @@ -39,8 +37,7 @@ module Hanzoai ) .returns(T.anything) end - def update(endpoint, request_options: {}) - end + def update(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # @@ -52,8 +49,7 @@ module Hanzoai ) .returns(T.anything) end - def delete(endpoint, request_options: {}) - end + def delete(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # @@ -65,13 +61,11 @@ module Hanzoai ) .returns(T.anything) end - def patch(endpoint, request_options: {}) - end + def patch(endpoint, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:) - end + def self.new(client:); end end end end From 10f4fc63092cbd4efb26c00f57fb43a1ced63bf3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:27:14 +0000 Subject: [PATCH 010/139] chore: update yard comment formatting (#52) --- .solargraph.yml | 1 + lib/hanzoai/client.rb | 8 +- lib/hanzoai/internal/transport/base_client.rb | 2 +- .../transport/pooled_net_requester.rb | 2 +- lib/hanzoai/internal/type/base_model.rb | 22 +- lib/hanzoai/internal/type/converter.rb | 40 +- lib/hanzoai/internal/type/enum.rb | 16 +- lib/hanzoai/internal/util.rb | 2 +- lib/hanzoai/models/budget_new.rb | 2 +- .../config/pass_through_generic_endpoint.rb | 2 +- lib/hanzoai/models/customer_create_params.rb | 2 +- .../global/spend_retrieve_report_params.rb | 2 +- lib/hanzoai/models/key_block_params.rb | 2 +- lib/hanzoai/models/key_delete_params.rb | 2 +- lib/hanzoai/models/key_generate_params.rb | 2 +- lib/hanzoai/models/key_list_response.rb | 28 +- .../models/key_regenerate_by_key_params.rb | 2 +- lib/hanzoai/models/key_unblock_params.rb | 2 +- lib/hanzoai/models/key_update_params.rb | 2 +- .../organization/info_retrieve_response.rb | 2 +- .../organization_add_member_response.rb | 4 +- .../models/organization_delete_response.rb | 2 +- .../models/organization_list_response.rb | 2 +- .../organization_update_member_params.rb | 28 +- .../organization_update_member_response.rb | 2 +- .../models/organization_update_response.rb | 2 +- .../models/provider_list_budgets_response.rb | 2 +- lib/hanzoai/models/spend_list_logs_params.rb | 2 +- .../models/team/callback_add_params.rb | 2 +- .../models/team_add_member_response.rb | 2 +- lib/hanzoai/models/team_create_params.rb | 2 +- lib/hanzoai/models/team_delete_params.rb | 2 +- lib/hanzoai/models/team_update_params.rb | 2 +- lib/hanzoai/models/user_delete_params.rb | 2 +- lib/hanzoai/request_options.rb | 14 +- lib/hanzoai/resources/active.rb | 42 +- lib/hanzoai/resources/assistants.rb | 12 +- lib/hanzoai/resources/audio/speech.rb | 2 +- lib/hanzoai/resources/audio/transcriptions.rb | 2 +- lib/hanzoai/resources/azure.rb | 10 +- lib/hanzoai/resources/batches.rb | 98 ++-- lib/hanzoai/resources/batches/cancel.rb | 14 +- lib/hanzoai/resources/budget.rb | 72 +-- lib/hanzoai/resources/cache.rb | 28 +- lib/hanzoai/resources/chat/completions.rb | 30 +- lib/hanzoai/resources/completions.rb | 24 +- .../resources/config/pass_through_endpoint.rb | 4 +- lib/hanzoai/resources/credentials.rb | 2 +- lib/hanzoai/resources/customer.rb | 208 +++---- lib/hanzoai/resources/embeddings.rb | 20 +- lib/hanzoai/resources/engines.rb | 44 +- lib/hanzoai/resources/engines/chat.rb | 30 +- lib/hanzoai/resources/files.rb | 58 +- lib/hanzoai/resources/files/content.rb | 16 +- lib/hanzoai/resources/fine_tuning/jobs.rb | 46 +- .../resources/fine_tuning/jobs/cancel.rb | 10 +- lib/hanzoai/resources/global/spend.rb | 36 +- lib/hanzoai/resources/guardrails.rb | 54 +- lib/hanzoai/resources/health.rb | 26 +- lib/hanzoai/resources/key.rb | 528 ++++++++--------- lib/hanzoai/resources/langfuse.rb | 10 +- lib/hanzoai/resources/model/info.rb | 46 +- lib/hanzoai/resources/model/update.rb | 14 +- lib/hanzoai/resources/model_group.rb | 262 ++++----- lib/hanzoai/resources/models.rb | 4 +- lib/hanzoai/resources/moderations.rb | 10 +- lib/hanzoai/resources/openai.rb | 10 +- lib/hanzoai/resources/openai/deployments.rb | 44 +- .../resources/openai/deployments/chat.rb | 30 +- lib/hanzoai/resources/organization.rb | 184 +++--- lib/hanzoai/resources/provider.rb | 72 +-- lib/hanzoai/resources/responses.rb | 34 +- .../resources/responses/input_items.rb | 10 +- lib/hanzoai/resources/settings.rb | 42 +- lib/hanzoai/resources/spend.rb | 140 ++--- lib/hanzoai/resources/team.rb | 352 +++++------ lib/hanzoai/resources/team/callback.rb | 100 ++-- lib/hanzoai/resources/team/model.rb | 44 +- lib/hanzoai/resources/test.rb | 6 +- lib/hanzoai/resources/threads.rb | 6 +- lib/hanzoai/resources/threads/messages.rb | 8 +- lib/hanzoai/resources/threads/runs.rb | 2 +- lib/hanzoai/resources/user.rb | 322 +++++----- lib/hanzoai/resources/utils.rb | 10 +- lib/hanzoai/resources/vertex_ai.rb | 10 +- rbi/lib/hanzoai/client.rbi | 8 +- rbi/lib/hanzoai/internal.rbi | 2 +- .../internal/transport/base_client.rbi | 2 +- .../transport/pooled_net_requester.rbi | 2 +- rbi/lib/hanzoai/internal/type/base_model.rbi | 32 +- rbi/lib/hanzoai/internal/type/converter.rbi | 40 +- rbi/lib/hanzoai/internal/type/enum.rbi | 16 +- rbi/lib/hanzoai/internal/util.rbi | 2 +- rbi/lib/hanzoai/models/budget_new.rbi | 2 +- .../config/pass_through_generic_endpoint.rbi | 2 +- .../hanzoai/models/customer_create_params.rbi | 2 +- .../global/spend_retrieve_report_params.rbi | 2 +- rbi/lib/hanzoai/models/key_block_params.rbi | 2 +- rbi/lib/hanzoai/models/key_delete_params.rbi | 2 +- .../hanzoai/models/key_generate_params.rbi | 2 +- rbi/lib/hanzoai/models/key_list_response.rbi | 28 +- .../models/key_regenerate_by_key_params.rbi | 2 +- rbi/lib/hanzoai/models/key_unblock_params.rbi | 2 +- rbi/lib/hanzoai/models/key_update_params.rbi | 2 +- .../organization/info_retrieve_response.rbi | 2 +- .../organization_add_member_response.rbi | 4 +- .../models/organization_delete_response.rbi | 2 +- .../models/organization_list_response.rbi | 2 +- .../organization_update_member_params.rbi | 28 +- .../organization_update_member_response.rbi | 2 +- .../models/organization_update_response.rbi | 2 +- .../models/provider_list_budgets_response.rbi | 2 +- .../hanzoai/models/spend_list_logs_params.rbi | 2 +- .../models/team/callback_add_params.rbi | 2 +- .../models/team_add_member_response.rbi | 2 +- rbi/lib/hanzoai/models/team_create_params.rbi | 2 +- rbi/lib/hanzoai/models/team_delete_params.rbi | 2 +- rbi/lib/hanzoai/models/team_update_params.rbi | 2 +- rbi/lib/hanzoai/models/user_delete_params.rbi | 2 +- rbi/lib/hanzoai/request_options.rbi | 14 +- rbi/lib/hanzoai/resources/active.rbi | 38 +- rbi/lib/hanzoai/resources/assistants.rbi | 12 +- rbi/lib/hanzoai/resources/audio/speech.rbi | 2 +- .../resources/audio/transcriptions.rbi | 2 +- rbi/lib/hanzoai/resources/azure.rbi | 10 +- rbi/lib/hanzoai/resources/batches.rbi | 106 ++-- rbi/lib/hanzoai/resources/batches/cancel.rbi | 14 +- rbi/lib/hanzoai/resources/budget.rbi | 72 +-- rbi/lib/hanzoai/resources/cache.rbi | 28 +- .../hanzoai/resources/chat/completions.rbi | 30 +- rbi/lib/hanzoai/resources/completions.rbi | 24 +- .../config/pass_through_endpoint.rbi | 6 +- rbi/lib/hanzoai/resources/credentials.rbi | 2 +- rbi/lib/hanzoai/resources/customer.rbi | 202 +++---- rbi/lib/hanzoai/resources/embeddings.rbi | 20 +- rbi/lib/hanzoai/resources/engines.rbi | 44 +- rbi/lib/hanzoai/resources/engines/chat.rbi | 30 +- rbi/lib/hanzoai/resources/files.rbi | 58 +- rbi/lib/hanzoai/resources/files/content.rbi | 16 +- .../hanzoai/resources/fine_tuning/jobs.rbi | 46 +- .../resources/fine_tuning/jobs/cancel.rbi | 10 +- rbi/lib/hanzoai/resources/global/spend.rbi | 38 +- rbi/lib/hanzoai/resources/guardrails.rbi | 54 +- rbi/lib/hanzoai/resources/health.rbi | 26 +- rbi/lib/hanzoai/resources/key.rbi | 552 +++++++++--------- rbi/lib/hanzoai/resources/langfuse.rbi | 10 +- rbi/lib/hanzoai/resources/model/info.rbi | 46 +- rbi/lib/hanzoai/resources/model/update.rbi | 14 +- rbi/lib/hanzoai/resources/model_group.rbi | 262 ++++----- rbi/lib/hanzoai/resources/models.rbi | 4 +- rbi/lib/hanzoai/resources/moderations.rbi | 10 +- rbi/lib/hanzoai/resources/openai.rbi | 10 +- .../hanzoai/resources/openai/deployments.rbi | 44 +- .../resources/openai/deployments/chat.rbi | 30 +- rbi/lib/hanzoai/resources/organization.rbi | 198 +++---- rbi/lib/hanzoai/resources/provider.rbi | 72 +-- rbi/lib/hanzoai/resources/responses.rbi | 34 +- .../resources/responses/input_items.rbi | 10 +- rbi/lib/hanzoai/resources/settings.rbi | 38 +- rbi/lib/hanzoai/resources/spend.rbi | 142 ++--- rbi/lib/hanzoai/resources/team.rbi | 364 ++++++------ rbi/lib/hanzoai/resources/team/callback.rbi | 92 +-- rbi/lib/hanzoai/resources/team/model.rbi | 44 +- rbi/lib/hanzoai/resources/test.rbi | 6 +- rbi/lib/hanzoai/resources/threads.rbi | 6 +- .../hanzoai/resources/threads/messages.rbi | 8 +- rbi/lib/hanzoai/resources/threads/runs.rbi | 2 +- rbi/lib/hanzoai/resources/user.rbi | 310 +++++----- rbi/lib/hanzoai/resources/utils.rbi | 10 +- rbi/lib/hanzoai/resources/vertex_ai.rbi | 10 +- 170 files changed, 3422 insertions(+), 3421 deletions(-) diff --git a/.solargraph.yml b/.solargraph.yml index 322c289c..f5b57ab2 100644 --- a/.solargraph.yml +++ b/.solargraph.yml @@ -5,6 +5,7 @@ include: - 'Rakefile' - 'examples/**/*.rb' - 'lib/**/*.rb' + - 'test/hanzoai/resource_namespaces.rb' - 'test/hanzoai/test_helper.rb' exclude: - 'rbi/**/*' diff --git a/lib/hanzoai/client.rb b/lib/hanzoai/client.rb index 52a79530..22b2a10d 100644 --- a/lib/hanzoai/client.rb +++ b/lib/hanzoai/client.rb @@ -196,14 +196,14 @@ def get_home(params = {}) # Creates and returns a new client for interacting with the API. # # @param api_key [String, nil] The default name of the subscription key header of Azure Defaults to - # `ENV["HANZO_API_KEY"]` + # `ENV["HANZO_API_KEY"]` # # @param environment [:production, :sandbox, nil] Specifies the environment to use for the API. # - # Each environment maps to a different base URL: + # Each environment maps to a different base URL: # - # - `production` corresponds to `https://api.hanzo.ai` - # - `sandbox` corresponds to `https://api.sandbox.hanzo.ai` + # - `production` corresponds to `https://api.hanzo.ai` + # - `sandbox` corresponds to `https://api.sandbox.hanzo.ai` # # @param base_url [String, nil] Override the default base URL for the API, e.g., `"https://api.example.com/v2/"` # diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 686d106e..77ce4e16 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -393,7 +393,7 @@ def initialize( end # Execute the request specified by `req`. This is the method that all resource - # methods call into. + # methods call into. # # @overload request(method, path, query: {}, headers: {}, body: nil, unwrap: nil, page: nil, stream: nil, model: Hanzoai::Internal::Type::Unknown, options: {}) # diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index dbe2a525..8c7ce21e 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -6,7 +6,7 @@ module Transport # @api private class PooledNetRequester # from the golang stdlib - # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49 + # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49 KEEP_ALIVE_TIMEOUT = 30 class << self diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index c32569ac..7845d613 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -19,7 +19,7 @@ class << self # @api private # # Assumes superclass fields are totally defined before fields are accessed / - # defined on subclasses. + # defined on subclasses. # # @return [Hash{Symbol=>Hash{Symbol=>Object}}] def known_fields @@ -150,7 +150,7 @@ def optional(name_sym, type_info, spec = {}) # @api private # # `request_only` attributes not excluded from `.#coerce` when receiving responses - # even if well behaved servers should not send them + # even if well behaved servers should not send them # # @param blk [Proc] private def request_only(&blk) @@ -298,11 +298,11 @@ def dump(value) end # Returns the raw value associated with the given key, if found. Otherwise, nil is - # returned. + # returned. # - # It is valid to lookup keys that are not in the API spec, for example to access - # undocumented features. This method does not parse response data into - # higher-level types. Lookup by anything other than a Symbol is an ArgumentError. + # It is valid to lookup keys that are not in the API spec, for example to access + # undocumented features. This method does not parse response data into + # higher-level types. Lookup by anything other than a Symbol is an ArgumentError. # # @param key [Symbol] # @@ -317,12 +317,12 @@ def [](key) # 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 - # value indicates which values were ever set on the object. i.e. there will be a - # key in this hash if they ever were, even if the set value was nil. + # Keys are Symbols and values are the raw values from the response. The return + # value indicates which values were ever set on the object. i.e. there will be a + # key in this hash if they ever were, even if the set value was nil. # - # This method is not recursive. The returned value is shared by the object, so it - # should not be mutated. + # This method is not recursive. The returned value is shared by the object, so it + # should not be mutated. # # @return [Hash{Symbol=>Object}] def to_h = @data diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index 7022f499..a7b44aef 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -75,37 +75,37 @@ def type_info(spec) # # Based on `target`, transform `value` into `target`, to the extent possible: # - # 1. if the given `value` conforms to `target` already, return the given `value` - # 2. if it's possible and safe to convert the given `value` to `target`, then the - # converted value - # 3. otherwise, the given `value` unaltered + # 1. if the given `value` conforms to `target` already, return the given `value` + # 2. if it's possible and safe to convert the given `value` to `target`, then the + # converted value + # 3. otherwise, the given `value` unaltered # - # The coercion process is subject to improvement between minor release versions. - # See https://docs.pydantic.dev/latest/concepts/unions/#smart-mode + # The coercion process is subject to improvement between minor release versions. + # See https://docs.pydantic.dev/latest/concepts/unions/#smart-mode # # @param target [Hanzoai::Internal::Type::Converter, Class] # # @param value [Object] # # @param state [Hash{Symbol=>Object}] The `strictness` is one of `true`, `false`, or `:strong`. This informs the - # coercion strategy when we have to decide between multiple possible conversion - # targets: + # coercion strategy when we have to decide between multiple possible conversion + # targets: # - # - `true`: the conversion must be exact, with minimum coercion. - # - `false`: the conversion can be approximate, with some coercion. - # - `:strong`: the conversion must be exact, with no coercion, and raise an error - # if not possible. + # - `true`: the conversion must be exact, with minimum coercion. + # - `false`: the conversion can be approximate, with some coercion. + # - `:strong`: the conversion must be exact, with no coercion, and raise an error + # if not possible. # - # The `exactness` is `Hash` with keys being one of `yes`, `no`, or `maybe`. For - # any given conversion attempt, the exactness will be updated based on how closely - # the value recursively matches the target type: + # The `exactness` is `Hash` with keys being one of `yes`, `no`, or `maybe`. For + # any given conversion attempt, the exactness will be updated based on how closely + # the value recursively matches the target type: # - # - `yes`: the value can be converted to the target type with minimum coercion. - # - `maybe`: the value can be converted to the target type with some reasonable - # coercion. - # - `no`: the value cannot be converted to the target type. + # - `yes`: the value can be converted to the target type with minimum coercion. + # - `maybe`: the value can be converted to the target type with some reasonable + # coercion. + # - `no`: the value cannot be converted to the target type. # - # See implementation below for more details. + # See implementation below for more details. # # @option state [Boolean, :strong] :strictness # diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 0018f838..e3efcf6f 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -6,15 +6,15 @@ module Type # @api private # # A value from among a specified list of options. OpenAPI enum values map to Ruby - # values in the SDK as follows: + # values in the SDK as follows: # - # 1. boolean => true | false - # 2. integer => Integer - # 3. float => Float - # 4. string => Symbol + # 1. boolean => true | false + # 2. integer => Integer + # 3. float => Float + # 4. string => Symbol # - # We can therefore convert string values to Symbols, but can't convert other - # values safely. + # We can therefore convert string values to Symbols, but can't convert other + # values safely. module Enum include Hanzoai::Internal::Type::Converter @@ -45,7 +45,7 @@ def ==(other) # @api private # # Unlike with primitives, `Enum` additionally validates that the value is a member - # of the enum. + # of the enum. # # @param value [String, Symbol, Object] # diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 96c1cd72..9655a7ef 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -152,7 +152,7 @@ class << self # @api private # # Recursively merge one hash with another. If the values at a given key are not - # both hashes, just take the new value. + # both hashes, just take the new value. # # @param values [Array] # diff --git a/lib/hanzoai/models/budget_new.rb b/lib/hanzoai/models/budget_new.rb index 8d7cd44c..061d5b31 100644 --- a/lib/hanzoai/models/budget_new.rb +++ b/lib/hanzoai/models/budget_new.rb @@ -29,7 +29,7 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # @!attribute model_max_budget # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', - # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) # # @return [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] optional :model_max_budget, diff --git a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb index ffcf02a4..eac0c410 100644 --- a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb +++ b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb @@ -6,7 +6,7 @@ module Config class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel # @!attribute headers # Key-value pairs of headers to be forwarded with the request. You can set any key - # value pair here and it will be forwarded to your target endpoint + # value pair here and it will be forwarded to your target endpoint # # @return [Object] required :headers, Hanzoai::Internal::Type::Unknown diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index ebab648a..75072586 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -64,7 +64,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute model_max_budget # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', - # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) # # @return [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] optional :model_max_budget, diff --git a/lib/hanzoai/models/global/spend_retrieve_report_params.rb b/lib/hanzoai/models/global/spend_retrieve_report_params.rb index 323ffaa3..9d00e755 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_params.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_params.rb @@ -17,7 +17,7 @@ class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel # @!attribute customer_id # View spend for a specific customer_id. Example customer_id='1234. Can be used in - # conjunction with team_id as well. + # conjunction with team_id as well. # # @return [String, nil] optional :customer_id, String, nil?: true diff --git a/lib/hanzoai/models/key_block_params.rb b/lib/hanzoai/models/key_block_params.rb index e6c8dac5..594a13b4 100644 --- a/lib/hanzoai/models/key_block_params.rb +++ b/lib/hanzoai/models/key_block_params.rb @@ -10,7 +10,7 @@ class KeyBlockParams < Hanzoai::Models::BlockKeyRequest # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/key_delete_params.rb b/lib/hanzoai/models/key_delete_params.rb index a9ab3525..cff620bb 100644 --- a/lib/hanzoai/models/key_delete_params.rb +++ b/lib/hanzoai/models/key_delete_params.rb @@ -20,7 +20,7 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index c543daeb..7b674430 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -147,7 +147,7 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index 9942323e..86537014 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -364,16 +364,16 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute user_role # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers # # @return [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] optional :user_role, @@ -540,16 +540,16 @@ module Expires end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers # # @see Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth#user_role module UserRole diff --git a/lib/hanzoai/models/key_regenerate_by_key_params.rb b/lib/hanzoai/models/key_regenerate_by_key_params.rb index 20b44362..9ab33d64 100644 --- a/lib/hanzoai/models/key_regenerate_by_key_params.rb +++ b/lib/hanzoai/models/key_regenerate_by_key_params.rb @@ -10,7 +10,7 @@ class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/key_unblock_params.rb b/lib/hanzoai/models/key_unblock_params.rb index 38d8136c..5069cb7c 100644 --- a/lib/hanzoai/models/key_unblock_params.rb +++ b/lib/hanzoai/models/key_unblock_params.rb @@ -10,7 +10,7 @@ class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index 2c639648..3e65bab2 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -147,7 +147,7 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index 2232cfb3..dfff5b84 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -248,7 +248,7 @@ class Member < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] diff --git a/lib/hanzoai/models/organization_add_member_response.rb b/lib/hanzoai/models/organization_add_member_response.rb index 18d7de07..d3f2d591 100644 --- a/lib/hanzoai/models/organization_add_member_response.rb +++ b/lib/hanzoai/models/organization_add_member_response.rb @@ -89,7 +89,7 @@ class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] @@ -379,7 +379,7 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index e2a73c96..628b38b5 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -246,7 +246,7 @@ class Member < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index a44071da..3566dfb6 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -246,7 +246,7 @@ class Member < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] diff --git a/lib/hanzoai/models/organization_update_member_params.rb b/lib/hanzoai/models/organization_update_member_params.rb index 0a595020..357e67f0 100644 --- a/lib/hanzoai/models/organization_update_member_params.rb +++ b/lib/hanzoai/models/organization_update_member_params.rb @@ -20,16 +20,16 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @!attribute role # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers # # @return [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] optional :role, enum: -> { Hanzoai::Models::OrganizationUpdateMemberParams::Role }, nil?: true @@ -67,16 +67,16 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers module Role extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/organization_update_member_response.rb b/lib/hanzoai/models/organization_update_member_response.rb index 91582587..006a672a 100644 --- a/lib/hanzoai/models/organization_update_member_response.rb +++ b/lib/hanzoai/models/organization_update_member_response.rb @@ -62,7 +62,7 @@ class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index a52a8d70..85354320 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -245,7 +245,7 @@ class Member < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] diff --git a/lib/hanzoai/models/provider_list_budgets_response.rb b/lib/hanzoai/models/provider_list_budgets_response.rb index 14e9bf5a..9d35ab50 100644 --- a/lib/hanzoai/models/provider_list_budgets_response.rb +++ b/lib/hanzoai/models/provider_list_budgets_response.rb @@ -16,7 +16,7 @@ class ProviderListBudgetsResponse < Hanzoai::Internal::Type::BaseModel # @!parse # # Complete provider budget configuration and status. Maps provider names to their - # # budget configs. + # # budget configs. # # # # @param providers [Hash{Symbol=>Hanzoai::Models::ProviderListBudgetsResponse::Provider}] # # diff --git a/lib/hanzoai/models/spend_list_logs_params.rb b/lib/hanzoai/models/spend_list_logs_params.rb index 15d6e2b2..95a52e8f 100644 --- a/lib/hanzoai/models/spend_list_logs_params.rb +++ b/lib/hanzoai/models/spend_list_logs_params.rb @@ -22,7 +22,7 @@ class SpendListLogsParams < Hanzoai::Internal::Type::BaseModel # @!attribute request_id # request_id to get spend logs for specific request_id. If none passed then pass - # spend logs for all requests + # spend logs for all requests # # @return [String, nil] optional :request_id, String, nil?: true diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index 3ec2c59a..cebdba48 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -26,7 +26,7 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index 3d1a4291..ffa257e4 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -478,7 +478,7 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # @!parse # # This is the table that track what organizations a user belongs to and users - # # spend within the organization + # # spend within the organization # # # # @param created_at [Time] # # @param organization_id [String] diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index a2bb72c4..7034c87d 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -110,7 +110,7 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/team_delete_params.rb b/lib/hanzoai/models/team_delete_params.rb index a83dc9e5..214b4c64 100644 --- a/lib/hanzoai/models/team_delete_params.rb +++ b/lib/hanzoai/models/team_delete_params.rb @@ -15,7 +15,7 @@ class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index 6f1d52f3..61bcdfbf 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -75,7 +75,7 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/models/user_delete_params.rb b/lib/hanzoai/models/user_delete_params.rb index 08f6915d..6cc1d5e3 100644 --- a/lib/hanzoai/models/user_delete_params.rb +++ b/lib/hanzoai/models/user_delete_params.rb @@ -15,7 +15,7 @@ class UserDeleteParams < Hanzoai::Internal::Type::BaseModel # @!attribute [r] llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String, api_name: :"llm-changed-by" diff --git a/lib/hanzoai/request_options.rb b/lib/hanzoai/request_options.rb index e3b038bf..dd26afe9 100644 --- a/lib/hanzoai/request_options.rb +++ b/lib/hanzoai/request_options.rb @@ -2,10 +2,10 @@ module Hanzoai # Specify HTTP behaviour to use for a specific request. These options supplement - # or override those provided at the client level. + # 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. + # 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 < Hanzoai::Internal::Type::BaseModel # @api private # @@ -27,28 +27,28 @@ def self.validate!(opts) # @!attribute idempotency_key # Idempotency key to send with request and all associated retries. Will only be - # sent for write requests. + # sent for write requests. # # @return [String, nil] optional :idempotency_key, String # @!attribute extra_query # Extra query params to send with the request. These are `.merge`’d into any - # `query` given at the client level. + # `query` given at the client level. # # @return [Hash{String=>Array, String, nil}, nil] optional :extra_query, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]] # @!attribute extra_headers # Extra headers to send with the request. These are `.merged`’d into any - # `extra_headers` given at the client level. + # `extra_headers` given at the client level. # # @return [Hash{String=>String, nil}, nil] optional :extra_headers, Hanzoai::Internal::Type::HashOf[String, nil?: true] # @!attribute extra_body # Extra data to send with the request. These are deep merged into any data - # generated as part of the normal request. + # generated as part of the normal request. # # @return [Object, nil] optional :extra_body, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] diff --git a/lib/hanzoai/resources/active.rb b/lib/hanzoai/resources/active.rb index d4c85081..67670048 100644 --- a/lib/hanzoai/resources/active.rb +++ b/lib/hanzoai/resources/active.rb @@ -5,27 +5,27 @@ module Resources class Active # Returns a list of llm level settings # - # This is useful for debugging and ensuring the proxy server is configured - # correctly. - # - # Response schema: - # - # ``` - # { - # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), - # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, - # } - # ``` + # This is useful for debugging and ensuring the proxy server is configured + # correctly. + # + # Response schema: + # + # ``` + # { + # "alerting": _alerting, + # "llm.callbacks": llm_callbacks, + # "llm.input_callback": llm_input_callbacks, + # "llm.failure_callback": llm_failure_callbacks, + # "llm.success_callback": llm_success_callbacks, + # "llm._async_success_callback": llm_async_success_callbacks, + # "llm._async_failure_callback": llm_async_failure_callbacks, + # "llm._async_input_callback": llm_async_input_callbacks, + # "all_llm_callbacks": all_llm_callbacks, + # "num_callbacks": len(all_llm_callbacks), + # "num_alerting": _num_alerting, + # "llm.request_timeout": llm.request_timeout, + # } + # ``` # # @overload list_callbacks(request_options: {}) # diff --git a/lib/hanzoai/resources/assistants.rb b/lib/hanzoai/resources/assistants.rb index d5591102..4f6499ec 100644 --- a/lib/hanzoai/resources/assistants.rb +++ b/lib/hanzoai/resources/assistants.rb @@ -5,8 +5,8 @@ module Resources class Assistants # Create assistant # - # API Reference docs - - # https://platform.openai.com/docs/api-reference/assistants/createAssistant + # API Reference docs - + # https://platform.openai.com/docs/api-reference/assistants/createAssistant # # @overload create(request_options: {}) # @@ -26,8 +26,8 @@ def create(params = {}) # Returns a list of assistants. # - # API Reference docs - - # https://platform.openai.com/docs/api-reference/assistants/listAssistants + # API Reference docs - + # https://platform.openai.com/docs/api-reference/assistants/listAssistants # # @overload list(request_options: {}) # @@ -47,8 +47,8 @@ def list(params = {}) # Delete assistant # - # API Reference docs - - # https://platform.openai.com/docs/api-reference/assistants/createAssistant + # API Reference docs - + # https://platform.openai.com/docs/api-reference/assistants/createAssistant # # @overload delete(assistant_id, request_options: {}) # diff --git a/lib/hanzoai/resources/audio/speech.rb b/lib/hanzoai/resources/audio/speech.rb index 391ecef5..256d9626 100644 --- a/lib/hanzoai/resources/audio/speech.rb +++ b/lib/hanzoai/resources/audio/speech.rb @@ -6,7 +6,7 @@ class Audio class Speech # Same params as: # - # https://platform.openai.com/docs/api-reference/audio/createSpeech + # https://platform.openai.com/docs/api-reference/audio/createSpeech # # @overload create(request_options: {}) # diff --git a/lib/hanzoai/resources/audio/transcriptions.rb b/lib/hanzoai/resources/audio/transcriptions.rb index de8a8ba8..756f41ee 100644 --- a/lib/hanzoai/resources/audio/transcriptions.rb +++ b/lib/hanzoai/resources/audio/transcriptions.rb @@ -6,7 +6,7 @@ class Audio class Transcriptions # Same params as: # - # https://platform.openai.com/docs/api-reference/audio/createTranscription?lang=curl + # https://platform.openai.com/docs/api-reference/audio/createTranscription?lang=curl # # @overload create(file:, request_options: {}) # diff --git a/lib/hanzoai/resources/azure.rb b/lib/hanzoai/resources/azure.rb index a63084cf..e4e04786 100644 --- a/lib/hanzoai/resources/azure.rb +++ b/lib/hanzoai/resources/azure.rb @@ -5,7 +5,7 @@ module Resources class Azure # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # # @overload create(endpoint, request_options: {}) # @@ -26,7 +26,7 @@ def create(endpoint, params = {}) # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # # @overload update(endpoint, request_options: {}) # @@ -47,7 +47,7 @@ def update(endpoint, params = {}) # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # # @overload delete(endpoint, request_options: {}) # @@ -68,7 +68,7 @@ def delete(endpoint, params = {}) # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # # @overload call(endpoint, request_options: {}) # @@ -89,7 +89,7 @@ def call(endpoint, params = {}) # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # # @overload patch(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/batches.rb b/lib/hanzoai/resources/batches.rb index bd5b8e85..a4ab1db1 100644 --- a/lib/hanzoai/resources/batches.rb +++ b/lib/hanzoai/resources/batches.rb @@ -7,18 +7,18 @@ class Batches attr_reader :cancel # Create large batches of API requests for asynchronous processing. This is the - # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch + # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ - # "input_file_id": "file-abc123", - # "endpoint": "/v1/chat/completions", - # "completion_window": "24h" - # }' - # ``` + # ``` + # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ + # "input_file_id": "file-abc123", + # "endpoint": "/v1/chat/completions", + # "completion_window": "24h" + # }' + # ``` # # @overload create(provider: nil, request_options: {}) # @@ -40,14 +40,14 @@ def create(params = {}) end # Retrieves a batch. This is the equivalent of GET - # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/retrieve + # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/retrieve # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` # # @overload retrieve(batch_id, provider: nil, request_options: {}) # @@ -70,13 +70,13 @@ def retrieve(batch_id, params = {}) end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports - # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list + # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` # # @overload list(after: nil, limit: nil, provider: nil, request_options: {}) # @@ -100,17 +100,17 @@ def list(params = {}) end # Cancel a batch. This is the equivalent of POST - # https://api.openai.com/v1/batches/{batch_id}/cancel + # https://api.openai.com/v1/batches/{batch_id}/cancel # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/cancel + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/cancel # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST # - # ``` + # ``` # # @overload cancel_with_provider(batch_id, provider:, request_options: {}) # @@ -136,18 +136,18 @@ def cancel_with_provider(batch_id, params) end # Create large batches of API requests for asynchronous processing. This is the - # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch + # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ - # "input_file_id": "file-abc123", - # "endpoint": "/v1/chat/completions", - # "completion_window": "24h" - # }' - # ``` + # ``` + # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ + # "input_file_id": "file-abc123", + # "endpoint": "/v1/chat/completions", + # "completion_window": "24h" + # }' + # ``` # # @overload create_with_provider(provider, request_options: {}) # @@ -167,13 +167,13 @@ def create_with_provider(provider, params = {}) end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports - # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list + # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` # # @overload list_with_provider(provider, after: nil, limit: nil, request_options: {}) # @@ -197,14 +197,14 @@ def list_with_provider(provider, params = {}) end # Retrieves a batch. This is the equivalent of GET - # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/retrieve + # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/retrieve # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` # # @overload retrieve_with_provider(batch_id, provider:, request_options: {}) # diff --git a/lib/hanzoai/resources/batches/cancel.rb b/lib/hanzoai/resources/batches/cancel.rb index ee9143c3..df15c117 100644 --- a/lib/hanzoai/resources/batches/cancel.rb +++ b/lib/hanzoai/resources/batches/cancel.rb @@ -5,17 +5,17 @@ module Resources class Batches class Cancel # Cancel a batch. This is the equivalent of POST - # https://api.openai.com/v1/batches/{batch_id}/cancel + # https://api.openai.com/v1/batches/{batch_id}/cancel # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/cancel + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/cancel # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST # - # ``` + # ``` # # @overload cancel(batch_id, provider: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/budget.rb b/lib/hanzoai/resources/budget.rb index e9d584fa..c49012c6 100644 --- a/lib/hanzoai/resources/budget.rb +++ b/lib/hanzoai/resources/budget.rb @@ -5,20 +5,20 @@ module Resources class Budget # Create a new budget object. Can apply this to teams, orgs, end-users, keys. # - # Parameters: - # - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - budget_id: Optional[str] - The id of the budget. If not provided, a new id - # will be generated. - # - max_budget: Optional[float] - The max budget for the budget. - # - soft_budget: Optional[float] - The soft budget for the budget. - # - max_parallel_requests: Optional[int] - The max number of parallel requests for - # the budget. - # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. - # - rpm_limit: Optional[int] - The requests per minute limit for the budget. - # - model_max_budget: Optional[dict] - Specify max budget for a given model. - # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", - # "tpm_limit": 100000, "rpm_limit": 100000}} + # Parameters: + # + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - budget_id: Optional[str] - The id of the budget. If not provided, a new id + # will be generated. + # - max_budget: Optional[float] - The max budget for the budget. + # - soft_budget: Optional[float] - The soft budget for the budget. + # - max_parallel_requests: Optional[int] - The max number of parallel requests for + # the budget. + # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. + # - rpm_limit: Optional[int] - The requests per minute limit for the budget. + # - model_max_budget: Optional[dict] - Specify max budget for a given model. + # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", + # "tpm_limit": 100000, "rpm_limit": 100000}} # # @overload create(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # @@ -48,20 +48,20 @@ def create(params = {}) # Update an existing budget object. # - # Parameters: - # - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - budget_id: Optional[str] - The id of the budget. If not provided, a new id - # will be generated. - # - max_budget: Optional[float] - The max budget for the budget. - # - soft_budget: Optional[float] - The soft budget for the budget. - # - max_parallel_requests: Optional[int] - The max number of parallel requests for - # the budget. - # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. - # - rpm_limit: Optional[int] - The requests per minute limit for the budget. - # - model_max_budget: Optional[dict] - Specify max budget for a given model. - # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", - # "tpm_limit": 100000, "rpm_limit": 100000}} + # Parameters: + # + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - budget_id: Optional[str] - The id of the budget. If not provided, a new id + # will be generated. + # - max_budget: Optional[float] - The max budget for the budget. + # - soft_budget: Optional[float] - The soft budget for the budget. + # - max_parallel_requests: Optional[int] - The max number of parallel requests for + # the budget. + # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. + # - rpm_limit: Optional[int] - The requests per minute limit for the budget. + # - model_max_budget: Optional[dict] - Specify max budget for a given model. + # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", + # "tpm_limit": 100000, "rpm_limit": 100000}} # # @overload update(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # @@ -109,9 +109,9 @@ def list(params = {}) # Delete budget # - # Parameters: + # Parameters: # - # - id: str - The budget id to delete + # - id: str - The budget id to delete # # @overload delete(id:, request_options: {}) # @@ -134,9 +134,9 @@ def delete(params) # Get the budget id specific information # - # Parameters: + # Parameters: # - # - budgets: List[str] - The list of budget ids to get information for + # - budgets: List[str] - The list of budget ids to get information for # # @overload info(budgets:, request_options: {}) # @@ -158,13 +158,13 @@ def info(params) end # Get list of configurable params + current value for a budget item + description - # of each field + # of each field # - # Used on Admin UI. + # Used on Admin UI. # - # Query Parameters: + # Query Parameters: # - # - budget_id: str - The budget id to get information for + # - budget_id: str - The budget id to get information for # # @overload settings(budget_id:, request_options: {}) # diff --git a/lib/hanzoai/resources/cache.rb b/lib/hanzoai/resources/cache.rb index 85718783..8adceae9 100644 --- a/lib/hanzoai/resources/cache.rb +++ b/lib/hanzoai/resources/cache.rb @@ -7,16 +7,16 @@ class Cache attr_reader :redis # Endpoint for deleting a key from the cache. All responses from llm proxy have - # `x-llm-cache-key` in the headers + # `x-llm-cache-key` in the headers # - # Parameters: + # Parameters: # - # - **keys**: _Optional[List[str]]_ - A list of keys to delete from the cache. - # Example {"keys": ["key1", "key2"]} + # - **keys**: _Optional[List[str]]_ - A list of keys to delete from the cache. + # Example {"keys": ["key1", "key2"]} # - # ```shell - # curl -X POST "http://0.0.0.0:4000/cache/delete" -H "Authorization: Bearer sk-1234" -d '{"keys": ["key1", "key2"]}' - # ``` + # ```shell + # curl -X POST "http://0.0.0.0:4000/cache/delete" -H "Authorization: Bearer sk-1234" -d '{"keys": ["key1", "key2"]}' + # ``` # # @overload delete(request_options: {}) # @@ -35,15 +35,15 @@ def delete(params = {}) end # A function to flush all items from the cache. (All items will be deleted from - # the cache with this) Raises HTTPException if the cache is not initialized or if - # the cache type does not support flushing. Returns a dictionary with the status - # of the operation. + # the cache with this) Raises HTTPException if the cache is not initialized or if + # the cache type does not support flushing. Returns a dictionary with the status + # of the operation. # - # Usage: + # Usage: # - # ``` - # curl -X POST http://0.0.0.0:4000/cache/flushall -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X POST http://0.0.0.0:4000/cache/flushall -H "Authorization: Bearer sk-1234" + # ``` # # @overload flush_all(request_options: {}) # diff --git a/lib/hanzoai/resources/chat/completions.rb b/lib/hanzoai/resources/chat/completions.rb index aee472e3..8ad7851b 100644 --- a/lib/hanzoai/resources/chat/completions.rb +++ b/lib/hanzoai/resources/chat/completions.rb @@ -5,22 +5,22 @@ module Resources class Chat class Completions # Follows the exact same API spec as - # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` + # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` # - # ```bash - # curl -X POST http://localhost:4000/v1/chat/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-4o", - # "messages": [ - # { - # "role": "user", - # "content": "Hello!" - # } - # ] - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/chat/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-4o", + # "messages": [ + # { + # "role": "user", + # "content": "Hello!" + # } + # ] + # }' + # ``` # # @overload create(model: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/completions.rb b/lib/hanzoai/resources/completions.rb index c0717722..e9d4a166 100644 --- a/lib/hanzoai/resources/completions.rb +++ b/lib/hanzoai/resources/completions.rb @@ -4,19 +4,19 @@ module Hanzoai module Resources class Completions # Follows the exact same API spec as - # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` + # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` # - # ```bash - # curl -X POST http://localhost:4000/v1/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-3.5-turbo-instruct", - # "prompt": "Once upon a time", - # "max_tokens": 50, - # "temperature": 0.7 - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-3.5-turbo-instruct", + # "prompt": "Once upon a time", + # "max_tokens": 50, + # "temperature": 0.7 + # }' + # ``` # # @overload create(model: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/config/pass_through_endpoint.rb b/lib/hanzoai/resources/config/pass_through_endpoint.rb index bf9e8f7f..353c9a50 100644 --- a/lib/hanzoai/resources/config/pass_through_endpoint.rb +++ b/lib/hanzoai/resources/config/pass_through_endpoint.rb @@ -48,7 +48,7 @@ def update(endpoint_id, params = {}) # GET configured pass through endpoint. # - # If no endpoint_id given, return all configured endpoints. + # If no endpoint_id given, return all configured endpoints. # # @overload list(endpoint_id: nil, request_options: {}) # @@ -71,7 +71,7 @@ def list(params = {}) # Delete a pass-through endpoint # - # Returns - the deleted endpoint + # Returns - the deleted endpoint # # @overload delete(endpoint_id:, request_options: {}) # diff --git a/lib/hanzoai/resources/credentials.rb b/lib/hanzoai/resources/credentials.rb index b6bd8ae9..316ef48b 100644 --- a/lib/hanzoai/resources/credentials.rb +++ b/lib/hanzoai/resources/credentials.rb @@ -4,7 +4,7 @@ module Hanzoai module Resources class Credentials # [BETA] endpoint. This might change unexpectedly. Stores credential in DB. - # Reloads credentials in memory. + # Reloads credentials in memory. # # @overload create(credential_info:, credential_name:, credential_values: nil, model_id: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/customer.rb b/lib/hanzoai/resources/customer.rb index a96fcbfd..b542c519 100644 --- a/lib/hanzoai/resources/customer.rb +++ b/lib/hanzoai/resources/customer.rb @@ -5,55 +5,55 @@ module Resources class Customer # Allow creating a new Customer # - # Parameters: - # - # - user_id: str - The unique identifier for the user. - # - alias: Optional[str] - A human-friendly alias for the user. - # - blocked: bool - Flag to allow or disallow requests for this end-user. Default - # is False. - # - max_budget: Optional[float] - The maximum budget allocated to the user. Either - # 'max_budget' or 'budget_id' should be provided, not both. - # - budget_id: Optional[str] - The identifier for an existing budget allocated to - # the user. Either 'max_budget' or 'budget_id' should be provided, not both. - # - allowed_model_region: Optional[Union[Literal["eu"], Literal["us"]]] - Require - # all user requests to use models in this specific region. - # - default_model: Optional[str] - If no equivalent model in the allowed region, - # default all requests to this model. - # - metadata: Optional[dict] = Metadata for customer, store information for - # customer. Example metadata = {"data_training_opt_out": True} - # - budget_duration: Optional[str] - Budget is reset at the end of specified - # duration. If not set, budget is never reset. You can set duration as seconds - # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - # - tpm_limit: Optional[int] - [Not Implemented Yet] Specify tpm limit for a given - # customer (Tokens per minute) - # - rpm_limit: Optional[int] - [Not Implemented Yet] Specify rpm limit for a given - # customer (Requests per minute) - # - model_max_budget: Optional[dict] - [Not Implemented Yet] Specify max budget - # for a given model. Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, - # "budget_duration": "1d"}} - # - max_parallel_requests: Optional[int] - [Not Implemented Yet] Specify max - # parallel requests for a given customer. - # - soft_budget: Optional[float] - [Not Implemented Yet] Get alerts when customer - # crosses given budget, doesn't block requests. - # - # - Allow specifying allowed regions - # - Allow specifying default model - # - # Example curl: + # Parameters: + # + # - user_id: str - The unique identifier for the user. + # - alias: Optional[str] - A human-friendly alias for the user. + # - blocked: bool - Flag to allow or disallow requests for this end-user. Default + # is False. + # - max_budget: Optional[float] - The maximum budget allocated to the user. Either + # 'max_budget' or 'budget_id' should be provided, not both. + # - budget_id: Optional[str] - The identifier for an existing budget allocated to + # the user. Either 'max_budget' or 'budget_id' should be provided, not both. + # - allowed_model_region: Optional[Union[Literal["eu"], Literal["us"]]] - Require + # all user requests to use models in this specific region. + # - default_model: Optional[str] - If no equivalent model in the allowed region, + # default all requests to this model. + # - metadata: Optional[dict] = Metadata for customer, store information for + # customer. Example metadata = {"data_training_opt_out": True} + # - budget_duration: Optional[str] - Budget is reset at the end of specified + # duration. If not set, budget is never reset. You can set duration as seconds + # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). + # - tpm_limit: Optional[int] - [Not Implemented Yet] Specify tpm limit for a given + # customer (Tokens per minute) + # - rpm_limit: Optional[int] - [Not Implemented Yet] Specify rpm limit for a given + # customer (Requests per minute) + # - model_max_budget: Optional[dict] - [Not Implemented Yet] Specify max budget + # for a given model. Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, + # "budget_duration": "1d"}} + # - max_parallel_requests: Optional[int] - [Not Implemented Yet] Specify max + # parallel requests for a given customer. + # - soft_budget: Optional[float] - [Not Implemented Yet] Get alerts when customer + # crosses given budget, doesn't block requests. + # + # - Allow specifying allowed regions + # - Allow specifying default model + # + # Example curl: + # + # ``` + # curl --location 'http://0.0.0.0:4000/customer/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_id" : "z-jaff-3", + # "allowed_region": "eu", + # "budget_id": "free_tier", + # "default_model": "azure/gpt-3.5-turbo-eu" <- all calls from this user, use this model? + # }' # - # ``` - # curl --location 'http://0.0.0.0:4000/customer/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id" : "z-jaff-3", - # "allowed_region": "eu", - # "budget_id": "free_tier", - # "default_model": "azure/gpt-3.5-turbo-eu" <- all calls from this user, use this model? - # }' - # - # # return end-user object - # ``` + # # return end-user object + # ``` # - # NOTE: This used to be called `/end_user/new`, we will still be maintaining - # compatibility for /end_user/XXX for these endpoints + # NOTE: This used to be called `/end_user/new`, we will still be maintaining + # compatibility for /end_user/XXX for these endpoints # # @overload create(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # @@ -88,28 +88,28 @@ def create(params) # Example curl # - # Parameters: + # Parameters: # - # - user_id: str - # - alias: Optional[str] = None # human-friendly alias - # - blocked: bool = False # allow/disallow requests for this end-user - # - max_budget: Optional[float] = None - # - budget_id: Optional[str] = None # give either a budget_id or max_budget - # - allowed_model_region: Optional[AllowedModelRegion] = ( None # require all user - # requests to use models in this specific region ) - # - default_model: Optional[str] = ( None # if no equivalent model in allowed - # region - default all requests to this model ) + # - user_id: str + # - alias: Optional[str] = None # human-friendly alias + # - blocked: bool = False # allow/disallow requests for this end-user + # - max_budget: Optional[float] = None + # - budget_id: Optional[str] = None # give either a budget_id or max_budget + # - allowed_model_region: Optional[AllowedModelRegion] = ( None # require all user + # requests to use models in this specific region ) + # - default_model: Optional[str] = ( None # if no equivalent model in allowed + # region - default all requests to this model ) # - # Example curl: + # Example curl: # - # ``` - # curl --location 'http://0.0.0.0:4000/customer/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", - # "budget_id": "paid_tier" - # }' + # ``` + # curl --location 'http://0.0.0.0:4000/customer/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_id": "test-llm-user-4", + # "budget_id": "paid_tier" + # }' # - # See below for all params - # ``` + # See below for all params + # ``` # # @overload update(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_id: nil, default_model: nil, max_budget: nil, request_options: {}) # @@ -138,11 +138,11 @@ def update(params) # [Admin-only] List all available customers # - # Example curl: + # Example curl: # - # ``` - # curl --location --request GET 'http://0.0.0.0:4000/customer/list' --header 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl --location --request GET 'http://0.0.0.0:4000/customer/list' --header 'Authorization: Bearer sk-1234' + # ``` # # @overload list(request_options: {}) # @@ -162,19 +162,19 @@ def list(params = {}) # Delete multiple end-users. # - # Parameters: + # Parameters: # - # - user_ids (List[str], required): The unique `user_id`s for the users to delete + # - user_ids (List[str], required): The unique `user_id`s for the users to delete # - # Example curl: + # Example curl: # - # ``` - # curl --location 'http://0.0.0.0:4000/customer/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_ids" :["z-jaff-5"] - # }' + # ``` + # curl --location 'http://0.0.0.0:4000/customer/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_ids" :["z-jaff-5"] + # }' # - # See below for all params - # ``` + # See below for all params + # ``` # # @overload delete(user_ids:, request_options: {}) # @@ -197,20 +197,20 @@ def delete(params) # [BETA] Reject calls with this end-user id # - # Parameters: + # Parameters: # - # - user_ids (List[str], required): The unique `user_id`s for the users to block + # - user_ids (List[str], required): The unique `user_id`s for the users to block # - # (any /chat/completion call with this user={end-user-id} param, will be - # rejected.) + # (any /chat/completion call with this user={end-user-id} param, will be + # rejected.) # - # ``` - # curl -X POST "http://0.0.0.0:8000/user/block" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "user_ids": [, ...] - # }' - # ``` + # ``` + # curl -X POST "http://0.0.0.0:8000/user/block" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "user_ids": [, ...] + # }' + # ``` # # @overload block(user_ids:, request_options: {}) # @@ -232,17 +232,17 @@ def block(params) end # Get information about an end-user. An `end_user` is a customer (external user) - # of the proxy. + # of the proxy. # - # Parameters: + # Parameters: # - # - end_user_id (str, required): The unique identifier for the end-user + # - end_user_id (str, required): The unique identifier for the end-user # - # Example curl: + # Example curl: # - # ``` - # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' + # ``` # # @overload retrieve_info(end_user_id:, request_options: {}) # @@ -265,15 +265,15 @@ def retrieve_info(params) # [BETA] Unblock calls with this user id # - # Example + # Example # - # ``` - # curl -X POST "http://0.0.0.0:8000/user/unblock" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "user_ids": [, ...] - # }' - # ``` + # ``` + # curl -X POST "http://0.0.0.0:8000/user/unblock" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "user_ids": [, ...] + # }' + # ``` # # @overload unblock(user_ids:, request_options: {}) # diff --git a/lib/hanzoai/resources/embeddings.rb b/lib/hanzoai/resources/embeddings.rb index 052fdcd6..d2c56bc9 100644 --- a/lib/hanzoai/resources/embeddings.rb +++ b/lib/hanzoai/resources/embeddings.rb @@ -4,17 +4,17 @@ module Hanzoai module Resources class Embeddings # Follows the exact same API spec as - # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` + # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` # - # ```bash - # curl -X POST http://localhost:4000/v1/embeddings - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "text-embedding-ada-002", - # "input": "The quick brown fox jumps over the lazy dog" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/embeddings + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "text-embedding-ada-002", + # "input": "The quick brown fox jumps over the lazy dog" + # }' + # ``` # # @overload create(model: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/engines.rb b/lib/hanzoai/resources/engines.rb index 07e5d30d..1ec8ba38 100644 --- a/lib/hanzoai/resources/engines.rb +++ b/lib/hanzoai/resources/engines.rb @@ -7,19 +7,19 @@ class Engines attr_reader :chat # Follows the exact same API spec as - # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` + # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` # - # ```bash - # curl -X POST http://localhost:4000/v1/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-3.5-turbo-instruct", - # "prompt": "Once upon a time", - # "max_tokens": 50, - # "temperature": 0.7 - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-3.5-turbo-instruct", + # "prompt": "Once upon a time", + # "max_tokens": 50, + # "temperature": 0.7 + # }' + # ``` # # @overload complete(model, request_options: {}) # @@ -39,17 +39,17 @@ def complete(model, params = {}) end # Follows the exact same API spec as - # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` + # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` # - # ```bash - # curl -X POST http://localhost:4000/v1/embeddings - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "text-embedding-ada-002", - # "input": "The quick brown fox jumps over the lazy dog" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/embeddings + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "text-embedding-ada-002", + # "input": "The quick brown fox jumps over the lazy dog" + # }' + # ``` # # @overload embed(model, request_options: {}) # diff --git a/lib/hanzoai/resources/engines/chat.rb b/lib/hanzoai/resources/engines/chat.rb index 5f3b5c62..6bbb1c93 100644 --- a/lib/hanzoai/resources/engines/chat.rb +++ b/lib/hanzoai/resources/engines/chat.rb @@ -5,22 +5,22 @@ module Resources class Engines class Chat # Follows the exact same API spec as - # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` + # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` # - # ```bash - # curl -X POST http://localhost:4000/v1/chat/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-4o", - # "messages": [ - # { - # "role": "user", - # "content": "Hello!" - # } - # ] - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/chat/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-4o", + # "messages": [ + # { + # "role": "user", + # "content": "Hello!" + # } + # ] + # }' + # ``` # # @overload complete(model, request_options: {}) # diff --git a/lib/hanzoai/resources/files.rb b/lib/hanzoai/resources/files.rb index 7c8ac4ea..2c9c35aa 100644 --- a/lib/hanzoai/resources/files.rb +++ b/lib/hanzoai/resources/files.rb @@ -7,17 +7,17 @@ class Files attr_reader :content # Upload a file that can be used across - Assistants API, Batch API This is the - # equivalent of POST https://api.openai.com/v1/files + # equivalent of POST https://api.openai.com/v1/files # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/create + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/create # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" -F purpose="batch" -F file="@mydata.jsonl" + # ``` + # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" -F purpose="batch" -F file="@mydata.jsonl" # - # ``` + # ``` # # @overload create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}) # @@ -43,18 +43,18 @@ def create(provider, params) end # Returns information about a specific file. that can be used across - Assistants - # API, Batch API This is the equivalent of GET - # https://api.openai.com/v1/files/{file_id} + # API, Batch API This is the equivalent of GET + # https://api.openai.com/v1/files/{file_id} # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/retrieve + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/retrieve # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files/file-abc123 -H "Authorization: Bearer sk-1234" + # ``` + # curl http://localhost:4000/v1/files/file-abc123 -H "Authorization: Bearer sk-1234" # - # ``` + # ``` # # @overload retrieve(file_id, provider:, request_options: {}) # @@ -80,17 +80,17 @@ def retrieve(file_id, params) end # Returns information about a specific file. that can be used across - Assistants - # API, Batch API This is the equivalent of GET https://api.openai.com/v1/files/ + # API, Batch API This is the equivalent of GET https://api.openai.com/v1/files/ # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/list + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/list # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" + # ``` + # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" # - # ``` + # ``` # # @overload list(provider, purpose: nil, request_options: {}) # @@ -113,17 +113,17 @@ def list(provider, params = {}) end # Deletes a specified file. that can be used across - Assistants API, Batch API - # This is the equivalent of DELETE https://api.openai.com/v1/files/{file_id} + # This is the equivalent of DELETE https://api.openai.com/v1/files/{file_id} # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/delete + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/delete # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files/file-abc123 -X DELETE -H "Authorization: Bearer $OPENAI_API_KEY" + # ``` + # curl http://localhost:4000/v1/files/file-abc123 -X DELETE -H "Authorization: Bearer $OPENAI_API_KEY" # - # ``` + # ``` # # @overload delete(file_id, provider:, request_options: {}) # diff --git a/lib/hanzoai/resources/files/content.rb b/lib/hanzoai/resources/files/content.rb index f2ed3f24..eef10874 100644 --- a/lib/hanzoai/resources/files/content.rb +++ b/lib/hanzoai/resources/files/content.rb @@ -5,18 +5,18 @@ module Resources class Files class Content # Returns information about a specific file. that can be used across - Assistants - # API, Batch API This is the equivalent of GET - # https://api.openai.com/v1/files/{file_id}/content + # API, Batch API This is the equivalent of GET + # https://api.openai.com/v1/files/{file_id}/content # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/retrieve-contents + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/retrieve-contents # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files/file-abc123/content -H "Authorization: Bearer sk-1234" + # ``` + # curl http://localhost:4000/v1/files/file-abc123/content -H "Authorization: Bearer sk-1234" # - # ``` + # ``` # # @overload retrieve(file_id, provider:, request_options: {}) # diff --git a/lib/hanzoai/resources/fine_tuning/jobs.rb b/lib/hanzoai/resources/fine_tuning/jobs.rb index 79c57526..41308d4c 100644 --- a/lib/hanzoai/resources/fine_tuning/jobs.rb +++ b/lib/hanzoai/resources/fine_tuning/jobs.rb @@ -8,23 +8,23 @@ class Jobs attr_reader :cancel # Creates a fine-tuning job which begins the process of creating a new model from - # a given dataset. This is the equivalent of POST - # https://api.openai.com/v1/fine_tuning/jobs + # a given dataset. This is the equivalent of POST + # https://api.openai.com/v1/fine_tuning/jobs # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/fine-tuning/create + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/fine-tuning/create # - # Example Curl: + # Example Curl: # - # ``` - # curl http://localhost:4000/v1/fine_tuning/jobs -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ - # "model": "gpt-3.5-turbo", - # "training_file": "file-abc123", - # "hyperparameters": { - # "n_epochs": 4 - # } - # }' - # ``` + # ``` + # curl http://localhost:4000/v1/fine_tuning/jobs -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "model": "gpt-3.5-turbo", + # "training_file": "file-abc123", + # "hyperparameters": { + # "n_epochs": 4 + # } + # }' + # ``` # # @overload create(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) # @@ -53,12 +53,12 @@ def create(params) end # Retrieves a fine-tuning job. This is the equivalent of GET - # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id} + # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id} # - # Supported Query Params: + # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider - # - `fine_tuning_job_id`: The ID of the fine-tuning job to retrieve. + # - `custom_llm_provider`: Name of the LLM provider + # - `fine_tuning_job_id`: The ID of the fine-tuning job to retrieve. # # @overload retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}) # @@ -81,13 +81,13 @@ def retrieve(fine_tuning_job_id, params) end # Lists fine-tuning jobs for the organization. This is the equivalent of GET - # https://api.openai.com/v1/fine_tuning/jobs + # https://api.openai.com/v1/fine_tuning/jobs # - # Supported Query Params: + # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider - # - `after`: Identifier for the last job from the previous pagination request. - # - `limit`: Number of fine-tuning jobs to retrieve (default is 20). + # - `custom_llm_provider`: Name of the LLM provider + # - `after`: Identifier for the last job from the previous pagination request. + # - `limit`: Number of fine-tuning jobs to retrieve (default is 20). # # @overload list(custom_llm_provider:, after: nil, limit: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb b/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb index 0d1c7e58..92fdf5ac 100644 --- a/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb +++ b/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb @@ -7,13 +7,13 @@ class Jobs class Cancel # Cancel a fine-tuning job. # - # This is the equivalent of POST - # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id}/cancel + # This is the equivalent of POST + # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id}/cancel # - # Supported Query Params: + # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider - # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. + # - `custom_llm_provider`: Name of the LLM provider + # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. # # @overload create(fine_tuning_job_id, request_options: {}) # diff --git a/lib/hanzoai/resources/global/spend.rb b/lib/hanzoai/resources/global/spend.rb index 65e0bdde..4b92291a 100644 --- a/lib/hanzoai/resources/global/spend.rb +++ b/lib/hanzoai/resources/global/spend.rb @@ -6,17 +6,17 @@ class Global class Spend # LLM Enterprise - View Spend Per Request Tag. Used by LLM UI # - # Example Request: + # Example Request: # - # ``` - # curl -X GET "http://0.0.0.0:4000/spend/tags" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/spend/tags" -H "Authorization: Bearer sk-1234" + # ``` # - # Spend with Start Date and End Date + # Spend with Start Date and End Date # - # ``` - # curl -X GET "http://0.0.0.0:4000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" + # ``` # # @overload list_tags(end_date: nil, start_date: nil, tags: nil, request_options: {}) # @@ -41,12 +41,12 @@ def list_tags(params = {}) # ADMIN ONLY / MASTER KEY Only Endpoint # - # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs + # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs # - # 1. LLM_SpendLogs will maintain the logs on spend, no data gets deleted from - # there - # 2. LLM_VerificationTokens spend will be set = 0 - # 3. LLM_TeamTable spend will be set = 0 + # 1. LLM_SpendLogs will maintain the logs on spend, no data gets deleted from + # there + # 2. LLM_VerificationTokens spend will be set = 0 + # 3. LLM_TeamTable spend will be set = 0 # # @overload reset(request_options: {}) # @@ -65,11 +65,11 @@ def reset(params = {}) end # Get Daily Spend per Team, based on specific startTime and endTime. Per team, - # view usage by each key, model [ { "group-by-day": "2024-05-10", "teams": [ { - # "team_name": "team-1" "spend": 10, "keys": [ "key": "1213", "usage": { - # "model-1": { "cost": 12.50, "input_tokens": 1000, "output_tokens": 5000, - # "requests": 100 }, "audio-modelname1": { "cost": 25.50, "seconds": 25, - # "requests": 50 }, } } ] ] } + # view usage by each key, model [ { "group-by-day": "2024-05-10", "teams": [ { + # "team_name": "team-1" "spend": 10, "keys": [ "key": "1213", "usage": { + # "model-1": { "cost": 12.50, "input_tokens": 1000, "output_tokens": 5000, + # "requests": 100 }, "audio-modelname1": { "cost": 25.50, "seconds": 25, + # "requests": 50 }, } } ] ] } # # @overload retrieve_report(api_key: nil, customer_id: nil, end_date: nil, group_by: nil, internal_user_id: nil, start_date: nil, team_id: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/guardrails.rb b/lib/hanzoai/resources/guardrails.rb index 69e6af18..c734624c 100644 --- a/lib/hanzoai/resources/guardrails.rb +++ b/lib/hanzoai/resources/guardrails.rb @@ -5,38 +5,38 @@ module Resources class Guardrails # List the guardrails that are available on the proxy server # - # 👉 [Guardrail docs](https://docs.hanzo.ai/docs/proxy/guardrails/quick_start) + # 👉 [Guardrail docs](https://docs.hanzo.ai/docs/proxy/guardrails/quick_start) # - # Example Request: + # Example Request: # - # ```bash - # curl -X GET "http://localhost:4000/guardrails/list" -H "Authorization: Bearer " - # ``` + # ```bash + # curl -X GET "http://localhost:4000/guardrails/list" -H "Authorization: Bearer " + # ``` # - # Example Response: + # Example Response: # - # ```json - # { - # "guardrails": [ - # { - # "guardrail_name": "bedrock-pre-guard", - # "guardrail_info": { - # "params": [ - # { - # "name": "toxicity_score", - # "type": "float", - # "description": "Score between 0-1 indicating content toxicity level" - # }, - # { - # "name": "pii_detection", - # "type": "boolean" - # } - # ] - # } + # ```json + # { + # "guardrails": [ + # { + # "guardrail_name": "bedrock-pre-guard", + # "guardrail_info": { + # "params": [ + # { + # "name": "toxicity_score", + # "type": "float", + # "description": "Score between 0-1 indicating content toxicity level" + # }, + # { + # "name": "pii_detection", + # "type": "boolean" + # } + # ] # } - # ] - # } - # ``` + # } + # ] + # } + # ``` # # @overload list(request_options: {}) # diff --git a/lib/hanzoai/resources/health.rb b/lib/hanzoai/resources/health.rb index 8eb8a455..61153346 100644 --- a/lib/hanzoai/resources/health.rb +++ b/lib/hanzoai/resources/health.rb @@ -5,19 +5,19 @@ module Resources class Health # 🚨 USE `/health/liveliness` to health check the proxy 🚨 # - # See more 👉 https://docs.hanzo.ai/docs/proxy/health + # See more 👉 https://docs.hanzo.ai/docs/proxy/health # - # Check the health of all the endpoints in config.yaml + # Check the health of all the endpoints in config.yaml # - # To run health checks in the background, add this to config.yaml: + # To run health checks in the background, add this to config.yaml: # - # ``` - # general_settings: - # # ... other settings - # background_health_checks: True - # ``` + # ``` + # general_settings: + # # ... other settings + # background_health_checks: True + # ``` # - # else, the health checks will be run on models when /health is called. + # else, the health checks will be run on models when /health is called. # # @overload check_all(model: nil, request_options: {}) # @@ -94,11 +94,11 @@ def check_readiness(params = {}) # Use this admin-only endpoint to check if the service is healthy. # - # Example: + # Example: # - # ``` - # curl -L -X GET 'http://0.0.0.0:4000/health/services?service=datadog' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -L -X GET 'http://0.0.0.0:4000/health/services?service=datadog' -H 'Authorization: Bearer sk-1234' + # ``` # # @overload check_services(service:, request_options: {}) # diff --git a/lib/hanzoai/resources/key.rb b/lib/hanzoai/resources/key.rb index 45d61d2f..311575cd 100644 --- a/lib/hanzoai/resources/key.rb +++ b/lib/hanzoai/resources/key.rb @@ -8,61 +8,61 @@ class Key # Update an existing API key's parameters. # - # Parameters: - # - # - key: str - The key to update - # - key_alias: Optional[str] - User-friendly key alias - # - user_id: Optional[str] - User ID associated with key - # - team_id: Optional[str] - Team ID associated with key - # - budget_id: Optional[str] - The budget id associated with the key. Created by - # calling `/budget/new`. - # - models: Optional[list] - Model_name's a user is allowed to call - # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) - # - enforced_params: Optional[List[str]] - List of enforced params for the key - # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - # - spend: Optional[float] - Amount spent by key - # - max_budget: Optional[float] - Max budget for key - # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets - # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - soft_budget: Optional[float] - [TODO] Soft budget limit (warning vs. hard - # stop). Will trigger a slack alert when this soft budget is reached. - # - max_parallel_requests: Optional[int] - Rate limit for parallel requests - # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", - # "app": "app2"} - # - tpm_limit: Optional[int] - Tokens per minute limit - # - rpm_limit: Optional[int] - Requests per minute limit - # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, - # "claude-v1": 200} - # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": 100000, - # "claude-v1": 200000} - # - allowed_cache_controls: Optional[list] - List of allowed cache control values - # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) - # - permissions: Optional[dict] - Key-specific permissions - # - send_invite_email: Optional[bool] - Send invite email to user_id - # - guardrails: Optional[List[str]] - List of active guardrails for the key - # - blocked: Optional[bool] - Whether the key is blocked - # - aliases: Optional[dict] - Model aliases for the key - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - # - config: Optional[dict] - [DEPRECATED PARAM] Key-specific config. - # - temp_budget_increase: Optional[float] - Temporary budget increase for the key - # (Enterprise only). - # - temp_budget_expiry: Optional[str] - Expiry time for the temporary budget - # increase (Enterprise only). - # - # Example: - # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "key": "sk-1234", - # "key_alias": "my-key", - # "user_id": "user-1234", - # "team_id": "team-1234", - # "max_budget": 100, - # "metadata": {"any_key": "any-val"}, - # }' - # ``` + # Parameters: + # + # - key: str - The key to update + # - key_alias: Optional[str] - User-friendly key alias + # - user_id: Optional[str] - User ID associated with key + # - team_id: Optional[str] - Team ID associated with key + # - budget_id: Optional[str] - The budget id associated with the key. Created by + # calling `/budget/new`. + # - models: Optional[list] - Model_name's a user is allowed to call + # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) + # - enforced_params: Optional[List[str]] - List of enforced params for the key + # (Enterprise only). + # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # - spend: Optional[float] - Amount spent by key + # - max_budget: Optional[float] - Max budget for key + # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets + # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - soft_budget: Optional[float] - [TODO] Soft budget limit (warning vs. hard + # stop). Will trigger a slack alert when this soft budget is reached. + # - max_parallel_requests: Optional[int] - Rate limit for parallel requests + # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", + # "app": "app2"} + # - tpm_limit: Optional[int] - Tokens per minute limit + # - rpm_limit: Optional[int] - Requests per minute limit + # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, + # "claude-v1": 200} + # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": 100000, + # "claude-v1": 200000} + # - allowed_cache_controls: Optional[list] - List of allowed cache control values + # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) + # - permissions: Optional[dict] - Key-specific permissions + # - send_invite_email: Optional[bool] - Send invite email to user_id + # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - blocked: Optional[bool] - Whether the key is blocked + # - aliases: Optional[dict] - Model aliases for the key - + # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # - config: Optional[dict] - [DEPRECATED PARAM] Key-specific config. + # - temp_budget_increase: Optional[float] - Temporary budget increase for the key + # (Enterprise only). + # - temp_budget_expiry: Optional[str] - Expiry time for the temporary budget + # increase (Enterprise only). + # + # Example: + # + # ```bash + # curl --location 'http://0.0.0.0:4000/key/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "key": "sk-1234", + # "key_alias": "my-key", + # "user_id": "user-1234", + # "team_id": "team-1234", + # "max_budget": 100, + # "metadata": {"any_key": "any-val"}, + # }' + # ``` # # @overload update(key:, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # @@ -114,8 +114,8 @@ def update(params) # List all keys for a given user / team / organization. # - # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, - # "current_page": int, "total_pages": int, } + # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, + # "current_page": int, "total_pages": int, } # # @overload list(include_team_keys: nil, key_alias: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, team_id: nil, user_id: nil, request_options: {}) # @@ -145,29 +145,29 @@ def list(params = {}) # Delete a key from the key management system. # - # Parameters:: + # Parameters:: # - # - keys (List[str]): A list of keys or hashed keys to delete. Example {"keys": - # ["sk-QWrxEynunsNpV1zT48HIrw", - # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} - # - key_aliases (List[str]): A list of key aliases to delete. Can be passed - # instead of `keys`.Example {"key_aliases": ["alias1", "alias2"]} + # - keys (List[str]): A list of keys or hashed keys to delete. Example {"keys": + # ["sk-QWrxEynunsNpV1zT48HIrw", + # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} + # - key_aliases (List[str]): A list of key aliases to delete. Can be passed + # instead of `keys`.Example {"key_aliases": ["alias1", "alias2"]} # - # Returns: + # Returns: # - # - deleted_keys (List[str]): A list of deleted keys. Example {"deleted_keys": - # ["sk-QWrxEynunsNpV1zT48HIrw", - # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} + # - deleted_keys (List[str]): A list of deleted keys. Example {"deleted_keys": + # ["sk-QWrxEynunsNpV1zT48HIrw", + # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} # - # Example: + # Example: # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "keys": ["sk-QWrxEynunsNpV1zT48HIrw"] - # }' - # ``` + # ```bash + # curl --location 'http://0.0.0.0:4000/key/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "keys": ["sk-QWrxEynunsNpV1zT48HIrw"] + # }' + # ``` # - # Raises: HTTPException: If an error occurs during key deletion. + # Raises: HTTPException: If an error occurs during key deletion. # # @overload delete(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) # @@ -194,20 +194,20 @@ def delete(params = {}) # Block an Virtual key from making any requests. # - # Parameters: + # Parameters: # - # - key: str - The key to block. Can be either the unhashed key (sk-...) or the - # hashed key value + # - key: str - The key to block. Can be either the unhashed key (sk-...) or the + # hashed key value # - # Example: + # Example: # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" - # }' - # ``` + # ```bash + # curl --location 'http://0.0.0.0:4000/key/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" + # }' + # ``` # - # Note: This is an admin-only endpoint. Only proxy admins can block keys. + # Note: This is an admin-only endpoint. Only proxy admins can block keys. # # @overload block(key:, llm_changed_by: nil, request_options: {}) # @@ -233,43 +233,43 @@ def block(params) # Check the health of the key # - # Checks: + # Checks: # - # - If key based logging is configured correctly - sends a test log + # - If key based logging is configured correctly - sends a test log # - # Usage + # Usage # - # Pass the key in the request header + # Pass the key in the request header # - # ```bash - # curl -X POST "http://localhost:4000/key/health" -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ```bash + # curl -X POST "http://localhost:4000/key/health" -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` # - # Response when logging callbacks are setup correctly: + # Response when logging callbacks are setup correctly: # - # ```json - # { - # "key": "healthy", - # "logging_callbacks": { - # "callbacks": ["gcs_bucket"], - # "status": "healthy", - # "details": "No logger exceptions triggered, system is healthy. Manually check if logs were sent to ['gcs_bucket']" - # } + # ```json + # { + # "key": "healthy", + # "logging_callbacks": { + # "callbacks": ["gcs_bucket"], + # "status": "healthy", + # "details": "No logger exceptions triggered, system is healthy. Manually check if logs were sent to ['gcs_bucket']" # } - # ``` - # - # Response when logging callbacks are not setup correctly: - # - # ```json - # { - # "key": "unhealthy", - # "logging_callbacks": { - # "callbacks": ["gcs_bucket"], - # "status": "unhealthy", - # "details": "Logger exceptions triggered, system is unhealthy: Failed to load vertex credentials. Check to see if credentials containing partial/invalid information." - # } + # } + # ``` + # + # Response when logging callbacks are not setup correctly: + # + # ```json + # { + # "key": "unhealthy", + # "logging_callbacks": { + # "callbacks": ["gcs_bucket"], + # "status": "unhealthy", + # "details": "Logger exceptions triggered, system is unhealthy: Failed to load vertex credentials. Check to see if credentials containing partial/invalid information." # } - # ``` + # } + # ``` # # @overload check_health(request_options: {}) # @@ -289,87 +289,87 @@ def check_health(params = {}) # Generate an API key based on the provided data. # - # Docs: https://docs.hanzo.ai/docs/proxy/virtual_keys - # - # Parameters: - # - # - duration: Optional[str] - Specify the length of time the token is valid for. - # You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days - # ("30d"). - # - key_alias: Optional[str] - User defined key alias - # - key: Optional[str] - User defined key value. If not set, a 16-digit unique - # sk-key is created for you. - # - team_id: Optional[str] - The team id of the key - # - user_id: Optional[str] - The user id of the key - # - budget_id: Optional[str] - The budget id associated with the key. Created by - # calling `/budget/new`. - # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, - # key is allowed to call all models) - # - aliases: Optional[dict] - Any alias mappings, on top of anything in the - # config.yaml model list. - - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models - # - config: Optional[dict] - any key-specific configs, overrides config in - # config.yaml - # - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by - # proxy whenever key is used. - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend - # - send_invite_email: Optional[bool] - Whether to send an invite email to the - # user_id, with the generate key - # - max_budget: Optional[float] - Specify max budget for a given key. - # - budget_duration: Optional[str] - Budget is reset at the end of specified - # duration. If not set, budget is never reset. You can set duration as seconds - # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - # - max_parallel_requests: Optional[int] - Rate limit a user based on the number - # of parallel requests. Raises 429 error, if user's parallel requests > x. - # - metadata: Optional[dict] - Metadata for key, store information for key. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } - # - guardrails: Optional[List[str]] - List of active guardrails for the key - # - permissions: Optional[dict] - key-specific permissions. Currently just used - # for turning off pii masking (if connected). Example - {"pii": false} - # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets - # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}}}. IF null or {} then - # no model specific budget. - # - model_rpm_limit: Optional[dict] - key-specific model rpm limit. Example - - # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model - # specific rpm limit. - # - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - - # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model - # specific tpm limit. - # - allowed_cache_controls: Optional[list] - List of allowed cache control values. - # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request - # - blocked: Optional[bool] - Whether the key is blocked. - # - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per - # minute) - # - tpm_limit: Optional[int] - Specify tpm limit for a given key (Tokens per - # minute) - # - soft_budget: Optional[float] - Specify soft budget for a given key. Will - # trigger a slack alert when this soft budget is reached. - # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - enforced_params: Optional[List[str]] - List of enforced params for the key - # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - # - # Examples: - # - # 1. Allow users to turn on/off pii masking - # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/generate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "permissions": {"allow_pii_controls": true} - # }' - # ``` - # - # Returns: - # - # - key: (str) The generated api key - # - expires: (datetime) Datetime object for when key expires. - # - user_id: (str) Unique user id - used for tracking spend across multiple keys - # for same user id. + # Docs: https://docs.hanzo.ai/docs/proxy/virtual_keys + # + # Parameters: + # + # - duration: Optional[str] - Specify the length of time the token is valid for. + # You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days + # ("30d"). + # - key_alias: Optional[str] - User defined key alias + # - key: Optional[str] - User defined key value. If not set, a 16-digit unique + # sk-key is created for you. + # - team_id: Optional[str] - The team id of the key + # - user_id: Optional[str] - The user id of the key + # - budget_id: Optional[str] - The budget id associated with the key. Created by + # calling `/budget/new`. + # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, + # key is allowed to call all models) + # - aliases: Optional[dict] - Any alias mappings, on top of anything in the + # config.yaml model list. - + # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models + # - config: Optional[dict] - any key-specific configs, overrides config in + # config.yaml + # - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by + # proxy whenever key is used. + # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend + # - send_invite_email: Optional[bool] - Whether to send an invite email to the + # user_id, with the generate key + # - max_budget: Optional[float] - Specify max budget for a given key. + # - budget_duration: Optional[str] - Budget is reset at the end of specified + # duration. If not set, budget is never reset. You can set duration as seconds + # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). + # - max_parallel_requests: Optional[int] - Rate limit a user based on the number + # of parallel requests. Raises 429 error, if user's parallel requests > x. + # - metadata: Optional[dict] - Metadata for key, store information for key. + # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" + # } + # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - permissions: Optional[dict] - key-specific permissions. Currently just used + # for turning off pii masking (if connected). Example - {"pii": false} + # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets + # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}}}. IF null or {} then + # no model specific budget. + # - model_rpm_limit: Optional[dict] - key-specific model rpm limit. Example - + # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model + # specific rpm limit. + # - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - + # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model + # specific tpm limit. + # - allowed_cache_controls: Optional[list] - List of allowed cache control values. + # Example - ["no-cache", "no-store"]. See all values - + # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request + # - blocked: Optional[bool] - Whether the key is blocked. + # - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per + # minute) + # - tpm_limit: Optional[int] - Specify tpm limit for a given key (Tokens per + # minute) + # - soft_budget: Optional[float] - Specify soft budget for a given key. Will + # trigger a slack alert when this soft budget is reached. + # - tags: Optional[List[str]] - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - enforced_params: Optional[List[str]] - List of enforced params for the key + # (Enterprise only). + # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # + # Examples: + # + # 1. Allow users to turn on/off pii masking + # + # ```bash + # curl --location 'http://0.0.0.0:4000/key/generate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "permissions": {"allow_pii_controls": true} + # }' + # ``` + # + # Returns: + # + # - key: (str) The generated api key + # - expires: (datetime) Datetime object for when key expires. + # - user_id: (str) Unique user id - used for tracking spend across multiple keys + # for same user id. # # @overload generate(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # @@ -421,54 +421,54 @@ def generate(params = {}) # Regenerate an existing API key while optionally updating its parameters. # - # Parameters: - # - # - key: str (path parameter) - The key to regenerate - # - data: Optional[RegenerateKeyRequest] - Request body containing optional - # parameters to update - # - key_alias: Optional[str] - User-friendly key alias - # - user_id: Optional[str] - User ID associated with key - # - team_id: Optional[str] - Team ID associated with key - # - models: Optional[list] - Model_name's a user is allowed to call - # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) - # - spend: Optional[float] - Amount spent by key - # - max_budget: Optional[float] - Max budget for key - # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets - # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - soft_budget: Optional[float] - Soft budget limit (warning vs. hard stop). - # Will trigger a slack alert when this soft budget is reached. - # - max_parallel_requests: Optional[int] - Rate limit for parallel requests - # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", - # "app": "app2"} - # - tpm_limit: Optional[int] - Tokens per minute limit - # - rpm_limit: Optional[int] - Requests per minute limit - # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, - # "claude-v1": 200} - # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": - # 100000, "claude-v1": 200000} - # - allowed_cache_controls: Optional[list] - List of allowed cache control - # values - # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) - # - permissions: Optional[dict] - Key-specific permissions - # - guardrails: Optional[List[str]] - List of active guardrails for the key - # - blocked: Optional[bool] - Whether the key is blocked - # - # Returns: - # - # - GenerateKeyResponse containing the new key and its updated parameters - # - # Example: - # - # ```bash - # curl --location --request POST 'http://localhost:4000/key/sk-1234/regenerate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "max_budget": 100, - # "metadata": {"team": "core-infra"}, - # "models": ["gpt-4", "gpt-3.5-turbo"] - # }' - # ``` - # - # Note: This is an Enterprise feature. It requires a premium license to use. + # Parameters: + # + # - key: str (path parameter) - The key to regenerate + # - data: Optional[RegenerateKeyRequest] - Request body containing optional + # parameters to update + # - key_alias: Optional[str] - User-friendly key alias + # - user_id: Optional[str] - User ID associated with key + # - team_id: Optional[str] - Team ID associated with key + # - models: Optional[list] - Model_name's a user is allowed to call + # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) + # - spend: Optional[float] - Amount spent by key + # - max_budget: Optional[float] - Max budget for key + # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets + # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - soft_budget: Optional[float] - Soft budget limit (warning vs. hard stop). + # Will trigger a slack alert when this soft budget is reached. + # - max_parallel_requests: Optional[int] - Rate limit for parallel requests + # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", + # "app": "app2"} + # - tpm_limit: Optional[int] - Tokens per minute limit + # - rpm_limit: Optional[int] - Requests per minute limit + # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, + # "claude-v1": 200} + # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": + # 100000, "claude-v1": 200000} + # - allowed_cache_controls: Optional[list] - List of allowed cache control + # values + # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) + # - permissions: Optional[dict] - Key-specific permissions + # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - blocked: Optional[bool] - Whether the key is blocked + # + # Returns: + # + # - GenerateKeyResponse containing the new key and its updated parameters + # + # Example: + # + # ```bash + # curl --location --request POST 'http://localhost:4000/key/sk-1234/regenerate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "max_budget": 100, + # "metadata": {"team": "core-infra"}, + # "models": ["gpt-4", "gpt-3.5-turbo"] + # }' + # ``` + # + # Note: This is an Enterprise feature. It requires a premium license to use. # # @overload regenerate_by_key(path_key, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, body_key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, new_master_key: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # @@ -521,22 +521,22 @@ def regenerate_by_key(path_key, params = {}) end # Retrieve information about a key. Parameters: key: Optional[str] = Query - # parameter representing the key in the request user_api_key_dict: UserAPIKeyAuth - # = Dependency representing the user's API key Returns: Dict containing the key - # and its associated information + # parameter representing the key in the request user_api_key_dict: UserAPIKeyAuth + # = Dependency representing the user's API key Returns: Dict containing the key + # and its associated information # - # Example Curl: + # Example Curl: # - # ``` - # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-02Wr4IAlN3NvPXvL5JVvDA" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-02Wr4IAlN3NvPXvL5JVvDA" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Curl - if no key is passed, it will use the Key Passed in Authorization - # Header + # Example Curl - if no key is passed, it will use the Key Passed in Authorization + # Header # - # ``` - # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" + # ``` # # @overload retrieve_info(key: nil, request_options: {}) # @@ -559,20 +559,20 @@ def retrieve_info(params = {}) # Unblock a Virtual key to allow it to make requests again. # - # Parameters: + # Parameters: # - # - key: str - The key to unblock. Can be either the unhashed key (sk-...) or the - # hashed key value + # - key: str - The key to unblock. Can be either the unhashed key (sk-...) or the + # hashed key value # - # Example: + # Example: # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" - # }' - # ``` + # ```bash + # curl --location 'http://0.0.0.0:4000/key/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" + # }' + # ``` # - # Note: This is an admin-only endpoint. Only proxy admins can unblock keys. + # Note: This is an admin-only endpoint. Only proxy admins can unblock keys. # # @overload unblock(key:, llm_changed_by: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/langfuse.rb b/lib/hanzoai/resources/langfuse.rb index 9fbfbd02..fd20e2bb 100644 --- a/lib/hanzoai/resources/langfuse.rb +++ b/lib/hanzoai/resources/langfuse.rb @@ -5,7 +5,7 @@ module Resources class Langfuse # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) # # @overload create(endpoint, request_options: {}) # @@ -26,7 +26,7 @@ def create(endpoint, params = {}) # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) # # @overload retrieve(endpoint, request_options: {}) # @@ -47,7 +47,7 @@ def retrieve(endpoint, params = {}) # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) # # @overload update(endpoint, request_options: {}) # @@ -68,7 +68,7 @@ def update(endpoint, params = {}) # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) # # @overload delete(endpoint, request_options: {}) # @@ -89,7 +89,7 @@ def delete(endpoint, params = {}) # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) # # @overload patch(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/model/info.rb b/lib/hanzoai/resources/model/info.rb index 489a17e0..643b2448 100644 --- a/lib/hanzoai/resources/model/info.rb +++ b/lib/hanzoai/resources/model/info.rb @@ -5,35 +5,35 @@ module Resources class Model class Info # Provides more info about each model in /models, including config.yaml - # descriptions (except api key and api base) + # descriptions (except api key and api base) # - # Parameters: llm_model_id: Optional[str] = None (this is the value of - # `x-llm-model-id` returned in response headers) + # Parameters: llm_model_id: Optional[str] = None (this is the value of + # `x-llm-model-id` returned in response headers) # - # - When llm_model_id is passed, it will return the info for that specific model - # - When llm_model_id is not passed, it will return the info for all models + # - When llm_model_id is passed, it will return the info for that specific model + # - When llm_model_id is not passed, it will return the info for all models # - # Returns: Returns a dictionary containing information about each model. + # Returns: Returns a dictionary containing information about each model. # - # Example Response: + # Example Response: # - # ```json - # { - # "data": [ - # { - # "model_name": "fake-openai-endpoint", - # "llm_params": { - # "api_base": "https://exampleopenaiendpoint-production.up.railway.app/", - # "model": "openai/fake" - # }, - # "model_info": { - # "id": "112f74fab24a7a5245d2ced3536dd8f5f9192c57ee6e332af0f0512e08bed5af", - # "db_model": false - # } + # ```json + # { + # "data": [ + # { + # "model_name": "fake-openai-endpoint", + # "llm_params": { + # "api_base": "https://exampleopenaiendpoint-production.up.railway.app/", + # "model": "openai/fake" + # }, + # "model_info": { + # "id": "112f74fab24a7a5245d2ced3536dd8f5f9192c57ee6e332af0f0512e08bed5af", + # "db_model": false # } - # ] - # } - # ``` + # } + # ] + # } + # ``` # # @overload list(llm_model_id: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/model/update.rb b/lib/hanzoai/resources/model/update.rb index 16dc679d..342d815b 100644 --- a/lib/hanzoai/resources/model/update.rb +++ b/lib/hanzoai/resources/model/update.rb @@ -29,16 +29,16 @@ def full(params = {}) # PATCH Endpoint for partial model updates. # - # Only updates the fields specified in the request while preserving other existing - # values. Follows proper PATCH semantics by only modifying provided fields. + # Only updates the fields specified in the request while preserving other existing + # values. Follows proper PATCH semantics by only modifying provided fields. # - # Args: model_id: The ID of the model to update patch_data: The fields to update - # and their new values user_api_key_dict: User authentication information + # Args: model_id: The ID of the model to update patch_data: The fields to update + # and their new values user_api_key_dict: User authentication information # - # Returns: Updated model information + # Returns: Updated model information # - # Raises: ProxyException: For various error conditions including authentication - # and database errors + # Raises: ProxyException: For various error conditions including authentication + # and database errors # # @overload partial(model_id, llm_params: nil, model_info: nil, model_name: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/model_group.rb b/lib/hanzoai/resources/model_group.rb index 0e625daa..2b68996d 100644 --- a/lib/hanzoai/resources/model_group.rb +++ b/lib/hanzoai/resources/model_group.rb @@ -4,147 +4,147 @@ module Hanzoai module Resources class ModelGroup # Get information about all the deployments on llm proxy, including config.yaml - # descriptions (except api key and api base) + # descriptions (except api key and api base) # - # - /model_group/info returns all model groups. End users of proxy should use - # /model_group/info since those models will be used for /chat/completions, - # /embeddings, etc. - # - /model_group/info?model_group=rerank-english-v3.0 returns all model groups for - # a specific model group (`model_name` in config.yaml) + # - /model_group/info returns all model groups. End users of proxy should use + # /model_group/info since those models will be used for /chat/completions, + # /embeddings, etc. + # - /model_group/info?model_group=rerank-english-v3.0 returns all model groups for + # a specific model group (`model_name` in config.yaml) # - # Example Request (All Models): + # Example Request (All Models): # - # ```shell - # curl -X 'GET' 'http://localhost:4000/model_group/info' -H 'accept: application/json' -H 'x-api-key: sk-1234' - # ``` + # ```shell + # curl -X 'GET' 'http://localhost:4000/model_group/info' -H 'accept: application/json' -H 'x-api-key: sk-1234' + # ``` # - # Example Request (Specific Model Group): + # Example Request (Specific Model Group): # - # ```shell - # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=rerank-english-v3.0' -H 'accept: application/json' -H 'Authorization: Bearer sk-1234' - # ``` + # ```shell + # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=rerank-english-v3.0' -H 'accept: application/json' -H 'Authorization: Bearer sk-1234' + # ``` # - # Example Request (Specific Wildcard Model Group): (e.g. `model_name: openai/*` on - # config.yaml) + # Example Request (Specific Wildcard Model Group): (e.g. `model_name: openai/*` on + # config.yaml) # - # ```shell - # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=openai/tts-1' - # -H 'accept: application/json' -H 'Authorization: Bearersk-1234' - # ``` + # ```shell + # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=openai/tts-1' + # -H 'accept: application/json' -H 'Authorization: Bearersk-1234' + # ``` # - # Learn how to use and set wildcard models - # [here](https://docs.hanzo.ai/docs/wildcard_routing) + # Learn how to use and set wildcard models + # [here](https://docs.hanzo.ai/docs/wildcard_routing) # - # Example Response: + # Example Response: # - # ```json - # { - # "data": [ - # { - # "model_group": "rerank-english-v3.0", - # "providers": ["cohere"], - # "max_input_tokens": null, - # "max_output_tokens": null, - # "input_cost_per_token": 0.0, - # "output_cost_per_token": 0.0, - # "mode": null, - # "tpm": null, - # "rpm": null, - # "supports_parallel_function_calling": false, - # "supports_vision": false, - # "supports_function_calling": false, - # "supported_openai_params": [ - # "stream", - # "temperature", - # "max_tokens", - # "logit_bias", - # "top_p", - # "frequency_penalty", - # "presence_penalty", - # "stop", - # "n", - # "extra_headers" - # ] - # }, - # { - # "model_group": "gpt-3.5-turbo", - # "providers": ["openai"], - # "max_input_tokens": 16385.0, - # "max_output_tokens": 4096.0, - # "input_cost_per_token": 1.5e-6, - # "output_cost_per_token": 2e-6, - # "mode": "chat", - # "tpm": null, - # "rpm": null, - # "supports_parallel_function_calling": false, - # "supports_vision": false, - # "supports_function_calling": true, - # "supported_openai_params": [ - # "frequency_penalty", - # "logit_bias", - # "logprobs", - # "top_logprobs", - # "max_tokens", - # "max_completion_tokens", - # "n", - # "presence_penalty", - # "seed", - # "stop", - # "stream", - # "stream_options", - # "temperature", - # "top_p", - # "tools", - # "tool_choice", - # "function_call", - # "functions", - # "max_retries", - # "extra_headers", - # "parallel_tool_calls", - # "response_format" - # ] - # }, - # { - # "model_group": "llava-hf", - # "providers": ["openai"], - # "max_input_tokens": null, - # "max_output_tokens": null, - # "input_cost_per_token": 0.0, - # "output_cost_per_token": 0.0, - # "mode": null, - # "tpm": null, - # "rpm": null, - # "supports_parallel_function_calling": false, - # "supports_vision": true, - # "supports_function_calling": false, - # "supported_openai_params": [ - # "frequency_penalty", - # "logit_bias", - # "logprobs", - # "top_logprobs", - # "max_tokens", - # "max_completion_tokens", - # "n", - # "presence_penalty", - # "seed", - # "stop", - # "stream", - # "stream_options", - # "temperature", - # "top_p", - # "tools", - # "tool_choice", - # "function_call", - # "functions", - # "max_retries", - # "extra_headers", - # "parallel_tool_calls", - # "response_format" - # ] - # } - # ] - # } - # ``` + # ```json + # { + # "data": [ + # { + # "model_group": "rerank-english-v3.0", + # "providers": ["cohere"], + # "max_input_tokens": null, + # "max_output_tokens": null, + # "input_cost_per_token": 0.0, + # "output_cost_per_token": 0.0, + # "mode": null, + # "tpm": null, + # "rpm": null, + # "supports_parallel_function_calling": false, + # "supports_vision": false, + # "supports_function_calling": false, + # "supported_openai_params": [ + # "stream", + # "temperature", + # "max_tokens", + # "logit_bias", + # "top_p", + # "frequency_penalty", + # "presence_penalty", + # "stop", + # "n", + # "extra_headers" + # ] + # }, + # { + # "model_group": "gpt-3.5-turbo", + # "providers": ["openai"], + # "max_input_tokens": 16385.0, + # "max_output_tokens": 4096.0, + # "input_cost_per_token": 1.5e-6, + # "output_cost_per_token": 2e-6, + # "mode": "chat", + # "tpm": null, + # "rpm": null, + # "supports_parallel_function_calling": false, + # "supports_vision": false, + # "supports_function_calling": true, + # "supported_openai_params": [ + # "frequency_penalty", + # "logit_bias", + # "logprobs", + # "top_logprobs", + # "max_tokens", + # "max_completion_tokens", + # "n", + # "presence_penalty", + # "seed", + # "stop", + # "stream", + # "stream_options", + # "temperature", + # "top_p", + # "tools", + # "tool_choice", + # "function_call", + # "functions", + # "max_retries", + # "extra_headers", + # "parallel_tool_calls", + # "response_format" + # ] + # }, + # { + # "model_group": "llava-hf", + # "providers": ["openai"], + # "max_input_tokens": null, + # "max_output_tokens": null, + # "input_cost_per_token": 0.0, + # "output_cost_per_token": 0.0, + # "mode": null, + # "tpm": null, + # "rpm": null, + # "supports_parallel_function_calling": false, + # "supports_vision": true, + # "supports_function_calling": false, + # "supported_openai_params": [ + # "frequency_penalty", + # "logit_bias", + # "logprobs", + # "top_logprobs", + # "max_tokens", + # "max_completion_tokens", + # "n", + # "presence_penalty", + # "seed", + # "stop", + # "stream", + # "stream_options", + # "temperature", + # "top_p", + # "tools", + # "tool_choice", + # "function_call", + # "functions", + # "max_retries", + # "extra_headers", + # "parallel_tool_calls", + # "response_format" + # ] + # } + # ] + # } + # ``` # # @overload retrieve_info(model_group: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/models.rb b/lib/hanzoai/resources/models.rb index 87dc7390..e6b56d29 100644 --- a/lib/hanzoai/resources/models.rb +++ b/lib/hanzoai/resources/models.rb @@ -4,9 +4,9 @@ module Hanzoai module Resources class Models # Use `/model/info` - to get detailed model information, example - pricing, mode, - # etc. + # etc. # - # This is just for compatibility with openai projects like aider. + # This is just for compatibility with openai projects like aider. # # @overload list(return_wildcard_routes: nil, team_id: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/moderations.rb b/lib/hanzoai/resources/moderations.rb index 80765c4c..cf2d4b0d 100644 --- a/lib/hanzoai/resources/moderations.rb +++ b/lib/hanzoai/resources/moderations.rb @@ -4,13 +4,13 @@ module Hanzoai module Resources class Moderations # The moderations endpoint is a tool you can use to check whether content complies - # with an LLM Providers policies. + # with an LLM Providers policies. # - # Quick Start + # Quick Start # - # ``` - # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' + # ``` # # @overload create(request_options: {}) # diff --git a/lib/hanzoai/resources/openai.rb b/lib/hanzoai/resources/openai.rb index a5f63905..667d7a2f 100644 --- a/lib/hanzoai/resources/openai.rb +++ b/lib/hanzoai/resources/openai.rb @@ -7,7 +7,7 @@ class OpenAI attr_reader :deployments # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. # # @overload create(endpoint, request_options: {}) # @@ -27,7 +27,7 @@ def create(endpoint, params = {}) end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. # # @overload retrieve(endpoint, request_options: {}) # @@ -47,7 +47,7 @@ def retrieve(endpoint, params = {}) end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. # # @overload update(endpoint, request_options: {}) # @@ -67,7 +67,7 @@ def update(endpoint, params = {}) end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. # # @overload delete(endpoint, request_options: {}) # @@ -87,7 +87,7 @@ def delete(endpoint, params = {}) end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. # # @overload patch(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/openai/deployments.rb b/lib/hanzoai/resources/openai/deployments.rb index b0a83c46..e6e28421 100644 --- a/lib/hanzoai/resources/openai/deployments.rb +++ b/lib/hanzoai/resources/openai/deployments.rb @@ -8,19 +8,19 @@ class Deployments attr_reader :chat # Follows the exact same API spec as - # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` + # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` # - # ```bash - # curl -X POST http://localhost:4000/v1/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-3.5-turbo-instruct", - # "prompt": "Once upon a time", - # "max_tokens": 50, - # "temperature": 0.7 - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-3.5-turbo-instruct", + # "prompt": "Once upon a time", + # "max_tokens": 50, + # "temperature": 0.7 + # }' + # ``` # # @overload complete(model, request_options: {}) # @@ -40,17 +40,17 @@ def complete(model, params = {}) end # Follows the exact same API spec as - # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` + # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` # - # ```bash - # curl -X POST http://localhost:4000/v1/embeddings - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "text-embedding-ada-002", - # "input": "The quick brown fox jumps over the lazy dog" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/embeddings + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "text-embedding-ada-002", + # "input": "The quick brown fox jumps over the lazy dog" + # }' + # ``` # # @overload embed(model, request_options: {}) # diff --git a/lib/hanzoai/resources/openai/deployments/chat.rb b/lib/hanzoai/resources/openai/deployments/chat.rb index 68589f63..228339e7 100644 --- a/lib/hanzoai/resources/openai/deployments/chat.rb +++ b/lib/hanzoai/resources/openai/deployments/chat.rb @@ -6,22 +6,22 @@ class OpenAI class Deployments class Chat # Follows the exact same API spec as - # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` + # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` # - # ```bash - # curl -X POST http://localhost:4000/v1/chat/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-4o", - # "messages": [ - # { - # "role": "user", - # "content": "Hello!" - # } - # ] - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/chat/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-4o", + # "messages": [ + # { + # "role": "user", + # "content": "Hello!" + # } + # ] + # }' + # ``` # # @overload complete(model, request_options: {}) # diff --git a/lib/hanzoai/resources/organization.rb b/lib/hanzoai/resources/organization.rb index 2489cb96..0e887e15 100644 --- a/lib/hanzoai/resources/organization.rb +++ b/lib/hanzoai/resources/organization.rb @@ -8,68 +8,68 @@ class Organization # Allow orgs to own teams # - # Set org level budgets + model access. - # - # Only admins can create orgs. - # - # # Parameters - # - # - organization_alias: _str_ - The name of the organization. - # - models: _List_ - The models the organization has access to. - # - budget_id: _Optional[str]_ - The id for a budget (tpm/rpm/max budget) for the - # organization. - # - # ### IF NO BUDGET ID - CREATE ONE WITH THESE PARAMS - # - # - max_budget: _Optional[float]_ - Max budget for org - # - tpm_limit: _Optional[int]_ - Max tpm limit for org - # - rpm_limit: _Optional[int]_ - Max rpm limit for org - # - max_parallel_requests: _Optional[int]_ - [Not Implemented Yet] Max parallel - # requests for org - # - soft_budget: _Optional[float]_ - [Not Implemented Yet] Get a slack alert when - # this soft budget is reached. Don't block requests. - # - model_max_budget: _Optional[dict]_ - Max budget for a specific model - # - budget_duration: _Optional[str]_ - Frequency of reseting org budget - # - metadata: _Optional[dict]_ - Metadata for organization, store information for - # organization. Example metadata - {"extra_info": "some info"} - # - blocked: _bool_ - Flag indicating if the org is blocked or not - will stop all - # calls from keys with this org_id. - # - tags: _Optional[List[str]]_ - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - organization_id: _Optional[str]_ - The organization id of the team. Default is - # None. Create via `/organization/new`. - # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - # Case 1: Create new org **without** a budget_id - # - # ```bash - # curl --location 'http://0.0.0.0:4000/organization/new' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "organization_alias": "my-secret-org", - # "models": ["model1", "model2"], - # "max_budget": 100 - # }' - # - # - # ``` - # - # Case 2: Create new org **with** a budget_id - # - # ```bash - # curl --location 'http://0.0.0.0:4000/organization/new' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "organization_alias": "my-secret-org", - # "models": ["model1", "model2"], - # "budget_id": "428eeaa8-f3ac-4e85-a8fb-7dc8d7aa8689" - # }' - # ``` + # Set org level budgets + model access. + # + # Only admins can create orgs. + # + # # Parameters + # + # - organization_alias: _str_ - The name of the organization. + # - models: _List_ - The models the organization has access to. + # - budget_id: _Optional[str]_ - The id for a budget (tpm/rpm/max budget) for the + # organization. + # + # ### IF NO BUDGET ID - CREATE ONE WITH THESE PARAMS + # + # - max_budget: _Optional[float]_ - Max budget for org + # - tpm_limit: _Optional[int]_ - Max tpm limit for org + # - rpm_limit: _Optional[int]_ - Max rpm limit for org + # - max_parallel_requests: _Optional[int]_ - [Not Implemented Yet] Max parallel + # requests for org + # - soft_budget: _Optional[float]_ - [Not Implemented Yet] Get a slack alert when + # this soft budget is reached. Don't block requests. + # - model_max_budget: _Optional[dict]_ - Max budget for a specific model + # - budget_duration: _Optional[str]_ - Frequency of reseting org budget + # - metadata: _Optional[dict]_ - Metadata for organization, store information for + # organization. Example metadata - {"extra_info": "some info"} + # - blocked: _bool_ - Flag indicating if the org is blocked or not - will stop all + # calls from keys with this org_id. + # - tags: _Optional[List[str]]_ - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - organization_id: _Optional[str]_ - The organization id of the team. Default is + # None. Create via `/organization/new`. + # - model_aliases: Optional[dict] - Model aliases for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # + # Case 1: Create new org **without** a budget_id + # + # ```bash + # curl --location 'http://0.0.0.0:4000/organization/new' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "organization_alias": "my-secret-org", + # "models": ["model1", "model2"], + # "max_budget": 100 + # }' + # + # + # ``` + # + # Case 2: Create new org **with** a budget_id + # + # ```bash + # curl --location 'http://0.0.0.0:4000/organization/new' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "organization_alias": "my-secret-org", + # "models": ["model1", "model2"], + # "budget_id": "428eeaa8-f3ac-4e85-a8fb-7dc8d7aa8689" + # }' + # ``` # # @overload create(organization_alias:, budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, models: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # @@ -129,8 +129,8 @@ def update(params = {}) end # ``` - # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' - # ``` + # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' + # ``` # # @overload list(request_options: {}) # @@ -150,9 +150,9 @@ def list(params = {}) # Delete an organization # - # # Parameters: + # # Parameters: # - # - organization_ids: List[str] - The organization ids to delete. + # - organization_ids: List[str] - The organization ids to delete. # # @overload delete(organization_ids:, request_options: {}) # @@ -175,41 +175,41 @@ def delete(params) # [BETA] # - # Add new members (either via user_email or user_id) to an organization + # Add new members (either via user_email or user_id) to an organization # - # If user doesn't exist, new user row will also be added to User Table + # If user doesn't exist, new user row will also be added to User Table # - # Only proxy_admin or org_admin of organization, allowed to access this endpoint. + # Only proxy_admin or org_admin of organization, allowed to access this endpoint. # - # # Parameters: + # # Parameters: # - # - organization_id: str (required) - # - member: Union[List[Member], Member] (required) - # - role: Literal[LLMUserRoles] (required) - # - user_id: Optional[str] - # - user_email: Optional[str] + # - organization_id: str (required) + # - member: Union[List[Member], Member] (required) + # - role: Literal[LLMUserRoles] (required) + # - user_id: Optional[str] + # - user_email: Optional[str] # - # Note: Either user_id or user_email must be provided for each member. + # Note: Either user_id or user_email must be provided for each member. # - # Example: + # Example: # - # ``` - # curl -X POST 'http://0.0.0.0:4000/organization/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{ - # "organization_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", - # "member": { - # "role": "internal_user", - # "user_id": "dev247652@hanzo.ai" - # }, - # "max_budget_in_organization": 100.0 - # }' - # ``` + # ``` + # curl -X POST 'http://0.0.0.0:4000/organization/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{ + # "organization_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", + # "member": { + # "role": "internal_user", + # "user_id": "dev247652@hanzo.ai" + # }, + # "max_budget_in_organization": 100.0 + # }' + # ``` # - # The following is executed in this function: + # The following is executed in this function: # - # 1. Check if organization exists - # 2. Creates a new Internal User if the user_id or user_email is not found in - # LLM_UserTable - # 3. Add Internal User to the `LLM_OrganizationMembership` table + # 1. Check if organization exists + # 2. Creates a new Internal User if the user_id or user_email is not found in + # LLM_UserTable + # 3. Add Internal User to the `LLM_OrganizationMembership` table # # @overload add_member(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/provider.rb b/lib/hanzoai/resources/provider.rb index a8b6d7eb..e264c438 100644 --- a/lib/hanzoai/resources/provider.rb +++ b/lib/hanzoai/resources/provider.rb @@ -4,49 +4,49 @@ module Hanzoai module Resources class Provider # Provider Budget Routing - Get Budget, Spend Details - # https://docs.hanzo.ai/docs/proxy/provider_budget_routing + # https://docs.hanzo.ai/docs/proxy/provider_budget_routing # - # Use this endpoint to check current budget, spend and budget reset time for a - # provider + # Use this endpoint to check current budget, spend and budget reset time for a + # provider # - # Example Request + # Example Request # - # ```bash - # curl -X GET http://localhost:4000/provider/budgets -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X GET http://localhost:4000/provider/budgets -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Response + # Example Response # - # ```json - # { - # "providers": { - # "openai": { - # "budget_limit": 1e-12, - # "time_period": "1d", - # "spend": 0.0, - # "budget_reset_at": null - # }, - # "azure": { - # "budget_limit": 100.0, - # "time_period": "1d", - # "spend": 0.0, - # "budget_reset_at": null - # }, - # "anthropic": { - # "budget_limit": 100.0, - # "time_period": "10d", - # "spend": 0.0, - # "budget_reset_at": null - # }, - # "vertex_ai": { - # "budget_limit": 100.0, - # "time_period": "12d", - # "spend": 0.0, - # "budget_reset_at": null - # } + # ```json + # { + # "providers": { + # "openai": { + # "budget_limit": 1e-12, + # "time_period": "1d", + # "spend": 0.0, + # "budget_reset_at": null + # }, + # "azure": { + # "budget_limit": 100.0, + # "time_period": "1d", + # "spend": 0.0, + # "budget_reset_at": null + # }, + # "anthropic": { + # "budget_limit": 100.0, + # "time_period": "10d", + # "spend": 0.0, + # "budget_reset_at": null + # }, + # "vertex_ai": { + # "budget_limit": 100.0, + # "time_period": "12d", + # "spend": 0.0, + # "budget_reset_at": null # } # } - # ``` + # } + # ``` # # @overload list_budgets(request_options: {}) # diff --git a/lib/hanzoai/resources/responses.rb b/lib/hanzoai/resources/responses.rb index 596eb0b5..b6430573 100644 --- a/lib/hanzoai/resources/responses.rb +++ b/lib/hanzoai/resources/responses.rb @@ -7,14 +7,14 @@ class Responses attr_reader :input_items # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses + # https://platform.openai.com/docs/api-reference/responses # - # ```bash - # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ - # "model": "gpt-4o", - # "input": "Tell me about AI" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "model": "gpt-4o", + # "input": "Tell me about AI" + # }' + # ``` # # @overload create(request_options: {}) # @@ -34,12 +34,12 @@ def create(params = {}) # Get a response by ID. # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/get + # Follows the OpenAI Responses API spec: + # https://platform.openai.com/docs/api-reference/responses/get # - # ```bash - # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" + # ``` # # @overload retrieve(response_id, request_options: {}) # @@ -60,12 +60,12 @@ def retrieve(response_id, params = {}) # Delete a response by ID. # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/delete + # Follows the OpenAI Responses API spec: + # https://platform.openai.com/docs/api-reference/responses/delete # - # ```bash - # curl -X DELETE http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X DELETE http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" + # ``` # # @overload delete(response_id, request_options: {}) # diff --git a/lib/hanzoai/resources/responses/input_items.rb b/lib/hanzoai/resources/responses/input_items.rb index 0c0f5c76..4407af73 100644 --- a/lib/hanzoai/resources/responses/input_items.rb +++ b/lib/hanzoai/resources/responses/input_items.rb @@ -6,12 +6,12 @@ class Responses class InputItems # Get input items for a response. # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/input-items + # Follows the OpenAI Responses API spec: + # https://platform.openai.com/docs/api-reference/responses/input-items # - # ```bash - # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" + # ``` # # @overload list(response_id, request_options: {}) # diff --git a/lib/hanzoai/resources/settings.rb b/lib/hanzoai/resources/settings.rb index fdd4ee19..02682f85 100644 --- a/lib/hanzoai/resources/settings.rb +++ b/lib/hanzoai/resources/settings.rb @@ -5,27 +5,27 @@ module Resources class Settings # Returns a list of llm level settings # - # This is useful for debugging and ensuring the proxy server is configured - # correctly. - # - # Response schema: - # - # ``` - # { - # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), - # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, - # } - # ``` + # This is useful for debugging and ensuring the proxy server is configured + # correctly. + # + # Response schema: + # + # ``` + # { + # "alerting": _alerting, + # "llm.callbacks": llm_callbacks, + # "llm.input_callback": llm_input_callbacks, + # "llm.failure_callback": llm_failure_callbacks, + # "llm.success_callback": llm_success_callbacks, + # "llm._async_success_callback": llm_async_success_callbacks, + # "llm._async_failure_callback": llm_async_failure_callbacks, + # "llm._async_input_callback": llm_async_input_callbacks, + # "all_llm_callbacks": all_llm_callbacks, + # "num_callbacks": len(all_llm_callbacks), + # "num_alerting": _num_alerting, + # "llm.request_timeout": llm.request_timeout, + # } + # ``` # # @overload retrieve(request_options: {}) # diff --git a/lib/hanzoai/resources/spend.rb b/lib/hanzoai/resources/spend.rb index 04c7c735..1d8aa6d8 100644 --- a/lib/hanzoai/resources/spend.rb +++ b/lib/hanzoai/resources/spend.rb @@ -5,51 +5,51 @@ module Resources class Spend # Accepts all the params of completion_cost. # - # Calculate spend **before** making call: - # - # Note: If you see a spend of $0.0 you need to set custom_pricing for your model: - # https://docs.hanzo.ai/docs/proxy/custom_pricing - # - # ``` - # curl --location 'http://localhost:4000/spend/calculate' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "model": "anthropic.claude-v2", - # "messages": [{"role": "user", "content": "Hey, how'''s it going?"}] - # }' - # ``` - # - # Calculate spend **after** making call: - # - # ``` - # curl --location 'http://localhost:4000/spend/calculate' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "completion_response": { - # "id": "chatcmpl-123", - # "object": "chat.completion", - # "created": 1677652288, - # "model": "gpt-3.5-turbo-0125", - # "system_fingerprint": "fp_44709d6fcb", - # "choices": [{ - # "index": 0, - # "message": { - # "role": "assistant", - # "content": "Hello there, how may I assist you today?" - # }, - # "logprobs": null, - # "finish_reason": "stop" - # }] - # "usage": { - # "prompt_tokens": 9, - # "completion_tokens": 12, - # "total_tokens": 21 - # } - # } - # }' - # ``` + # Calculate spend **before** making call: + # + # Note: If you see a spend of $0.0 you need to set custom_pricing for your model: + # https://docs.hanzo.ai/docs/proxy/custom_pricing + # + # ``` + # curl --location 'http://localhost:4000/spend/calculate' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "model": "anthropic.claude-v2", + # "messages": [{"role": "user", "content": "Hey, how'''s it going?"}] + # }' + # ``` + # + # Calculate spend **after** making call: + # + # ``` + # curl --location 'http://localhost:4000/spend/calculate' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "completion_response": { + # "id": "chatcmpl-123", + # "object": "chat.completion", + # "created": 1677652288, + # "model": "gpt-3.5-turbo-0125", + # "system_fingerprint": "fp_44709d6fcb", + # "choices": [{ + # "index": 0, + # "message": { + # "role": "assistant", + # "content": "Hello there, how may I assist you today?" + # }, + # "logprobs": null, + # "finish_reason": "stop" + # }] + # "usage": { + # "prompt_tokens": 9, + # "completion_tokens": 12, + # "total_tokens": 21 + # } + # } + # }' + # ``` # # @overload calculate_spend(completion_response: nil, messages: nil, model: nil, request_options: {}) # @@ -73,31 +73,31 @@ def calculate_spend(params = {}) end # View all spend logs, if request_id is provided, only logs for that request_id - # will be returned + # will be returned # - # Example Request for all logs + # Example Request for all logs # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Request for specific request_id + # Example Request for specific request_id # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?request_id=chatcmpl-6dcb2540-d3d7-4e49-bb27-291f863f112e" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?request_id=chatcmpl-6dcb2540-d3d7-4e49-bb27-291f863f112e" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Request for specific api_key + # Example Request for specific api_key # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-Fn8Ej39NkBQmUagFEoUWPQ" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-Fn8Ej39NkBQmUagFEoUWPQ" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Request for specific user_id + # Example Request for specific user_id # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=z@hanzo.ai" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=z@hanzo.ai" -H "Authorization: Bearer sk-1234" + # ``` # # @overload list_logs(api_key: nil, end_date: nil, request_id: nil, start_date: nil, user_id: nil, request_options: {}) # @@ -124,17 +124,17 @@ def list_logs(params = {}) # LLM Enterprise - View Spend Per Request Tag # - # Example Request: + # Example Request: # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/tags" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/tags" -H "Authorization: Bearer sk-1234" + # ``` # - # Spend with Start Date and End Date + # Spend with Start Date and End Date # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" + # ``` # # @overload list_tags(end_date: nil, start_date: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/team.rb b/lib/hanzoai/resources/team.rb index 8b20f60b..db75afda 100644 --- a/lib/hanzoai/resources/team.rb +++ b/lib/hanzoai/resources/team.rb @@ -11,70 +11,70 @@ class Team # Allow users to create a new team. Apply user permissions to their team. # - # 👉 - # [Detailed Doc on setting team budgets](https://docs.hanzo.ai/docs/proxy/team_budgets) - # - # Parameters: - # - # - team_alias: Optional[str] - User defined team alias - # - team_id: Optional[str] - The team id of the user. If none passed, we'll - # generate it. - # - members_with_roles: List[{"role": "admin" or "user", "user_id": - # ""}] - A list of users and their roles in the team. Get user_id when - # making a new user via `/user/new`. - # - metadata: Optional[dict] - Metadata for team, store information for team. - # Example metadata = {"extra_info": "some info"} - # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - - # all keys with this team_id will have at max this TPM limit - # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - - # all keys associated with this team_id will have at max this RPM limit - # - max_budget: Optional[float] - The maximum budget allocated to the team - all - # keys for this team_id will have at max this max_budget - # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) - # - models: Optional[list] - A list of models associated with the team - all keys - # for this team_id will have at most, these models. If empty, assumes all models - # are allowed. - # - blocked: bool - Flag indicating if the team is blocked or not - will stop all - # calls from keys with this team_id. - # - members: Optional[List] - Control team members via `/team/member/add` and - # `/team/member/delete`. - # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - organization_id: Optional[str] - The organization id of the team. Default is - # None. Create via `/organization/new`. - # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Returns: - # - team_id: (str) Unique team id - used for tracking spend across multiple keys - # for same team id. - # - # \_deprecated_params: - # - # - admins: list - A list of user_id's for the admin role - # - users: list - A list of user_id's for the user role - # - # Example Request: - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_alias": "my-new-team_2", - # "members_with_roles": [{"role": "admin", "user_id": "user-1234"}, - # {"role": "user", "user_id": "user-2434"}] - # }' - # - # ``` - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_alias": "QA Prod Bot", - # "max_budget": 0.000000001, - # "budget_duration": "1d" - # }' - # ``` + # 👉 + # [Detailed Doc on setting team budgets](https://docs.hanzo.ai/docs/proxy/team_budgets) + # + # Parameters: + # + # - team_alias: Optional[str] - User defined team alias + # - team_id: Optional[str] - The team id of the user. If none passed, we'll + # generate it. + # - members_with_roles: List[{"role": "admin" or "user", "user_id": + # ""}] - A list of users and their roles in the team. Get user_id when + # making a new user via `/user/new`. + # - metadata: Optional[dict] - Metadata for team, store information for team. + # Example metadata = {"extra_info": "some info"} + # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - + # all keys with this team_id will have at max this TPM limit + # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - + # all keys associated with this team_id will have at max this RPM limit + # - max_budget: Optional[float] - The maximum budget allocated to the team - all + # keys for this team_id will have at max this max_budget + # - budget_duration: Optional[str] - The duration of the budget for the team. Doc + # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # - models: Optional[list] - A list of models associated with the team - all keys + # for this team_id will have at most, these models. If empty, assumes all models + # are allowed. + # - blocked: bool - Flag indicating if the team is blocked or not - will stop all + # calls from keys with this team_id. + # - members: Optional[List] - Control team members via `/team/member/add` and + # `/team/member/delete`. + # - tags: Optional[List[str]] - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - organization_id: Optional[str] - The organization id of the team. Default is + # None. Create via `/organization/new`. + # - model_aliases: Optional[dict] - Model aliases for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # - guardrails: Optional[List[str]] - Guardrails for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Returns: + # - team_id: (str) Unique team id - used for tracking spend across multiple keys + # for same team id. + # + # \_deprecated_params: + # + # - admins: list - A list of user_id's for the admin role + # - users: list - A list of user_id's for the user role + # + # Example Request: + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_alias": "my-new-team_2", + # "members_with_roles": [{"role": "admin", "user_id": "user-1234"}, + # {"role": "user", "user_id": "user-2434"}] + # }' + # + # ``` + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_alias": "QA Prod Bot", + # "max_budget": 0.000000001, + # "budget_duration": "1d" + # }' + # ``` # # @overload create(admins: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, team_id: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) # @@ -115,55 +115,55 @@ def create(params = {}) # Use `/team/member_add` AND `/team/member/delete` to add/remove new team members # - # You can now update team budget / rate limits via /team/update - # - # Parameters: - # - # - team_id: str - The team id of the user. Required param. - # - team_alias: Optional[str] - User defined team alias - # - metadata: Optional[dict] - Metadata for team, store information for team. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } - # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - - # all keys with this team_id will have at max this TPM limit - # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - - # all keys associated with this team_id will have at max this RPM limit - # - max_budget: Optional[float] - The maximum budget allocated to the team - all - # keys for this team_id will have at max this max_budget - # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) - # - models: Optional[list] - A list of models associated with the team - all keys - # for this team_id will have at most, these models. If empty, assumes all models - # are allowed. - # - blocked: bool - Flag indicating if the team is blocked or not - will stop all - # calls from keys with this team_id. - # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - organization_id: Optional[str] - The organization id of the team. Default is - # None. Create via `/organization/new`. - # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Example - update team TPM - # Limit - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", - # "tpm_limit": 100 - # }' - # ``` - # - # Example - Update Team `max_budget` budget - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", - # "max_budget": 10 - # }' - # ``` + # You can now update team budget / rate limits via /team/update + # + # Parameters: + # + # - team_id: str - The team id of the user. Required param. + # - team_alias: Optional[str] - User defined team alias + # - metadata: Optional[dict] - Metadata for team, store information for team. + # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" + # } + # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - + # all keys with this team_id will have at max this TPM limit + # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - + # all keys associated with this team_id will have at max this RPM limit + # - max_budget: Optional[float] - The maximum budget allocated to the team - all + # keys for this team_id will have at max this max_budget + # - budget_duration: Optional[str] - The duration of the budget for the team. Doc + # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # - models: Optional[list] - A list of models associated with the team - all keys + # for this team_id will have at most, these models. If empty, assumes all models + # are allowed. + # - blocked: bool - Flag indicating if the team is blocked or not - will stop all + # calls from keys with this team_id. + # - tags: Optional[List[str]] - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - organization_id: Optional[str] - The organization id of the team. Default is + # None. Create via `/organization/new`. + # - model_aliases: Optional[dict] - Model aliases for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # - guardrails: Optional[List[str]] - Guardrails for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Example - update team TPM + # Limit + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", + # "tpm_limit": 100 + # }' + # ``` + # + # Example - Update Team `max_budget` budget + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", + # "max_budget": 10 + # }' + # ``` # # @overload update(team_id:, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) # @@ -200,16 +200,16 @@ def update(params) end # ``` - # curl --location --request GET 'http://0.0.0.0:4000/team/list' --header 'Authorization: Bearer sk-1234' - # ``` + # curl --location --request GET 'http://0.0.0.0:4000/team/list' --header 'Authorization: Bearer sk-1234' + # ``` # - # Parameters: + # Parameters: # - # - user_id: str - Optional. If passed will only return teams that the user_id is - # a member of. - # - organization_id: str - Optional. If passed will only return teams that belong - # to the organization_id. Pass 'default_organization' to get all teams without - # organization_id. + # - user_id: str - Optional. If passed will only return teams that the user_id is + # a member of. + # - organization_id: str - Optional. If passed will only return teams that belong + # to the organization_id. Pass 'default_organization' to get all teams without + # organization_id. # # @overload list(organization_id: nil, user_id: nil, request_options: {}) # @@ -233,16 +233,16 @@ def list(params = {}) # delete team and associated team keys # - # Parameters: + # Parameters: # - # - team_ids: List[str] - Required. List of team IDs to delete. Example: - # ["team-1234", "team-5678"] + # - team_ids: List[str] - Required. List of team IDs to delete. Example: + # ["team-1234", "team-5678"] # - # ``` - # curl --location 'http://0.0.0.0:4000/team/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "team_ids": ["8d916b1c-510d-4894-a334-1c16a93344f5"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "team_ids": ["8d916b1c-510d-4894-a334-1c16a93344f5"] + # }' + # ``` # # @overload delete(team_ids:, llm_changed_by: nil, request_options: {}) # @@ -268,17 +268,17 @@ def delete(params) # [BETA] # - # Add new members (either via user_email or user_id) to a team + # Add new members (either via user_email or user_id) to a team # - # If user doesn't exist, new user row will also be added to User Table + # If user doesn't exist, new user row will also be added to User Table # - # Only proxy_admin or admin of team, allowed to access this endpoint. + # Only proxy_admin or admin of team, allowed to access this endpoint. # - # ``` + # ``` # - # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "dev247652@hanzo.ai"}}' + # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "dev247652@hanzo.ai"}}' # - # ``` + # ``` # # @overload add_member(member:, team_id:, max_budget_in_team: nil, request_options: {}) # @@ -303,21 +303,21 @@ def add_member(params) # Blocks all calls from keys with this team id. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The unique identifier of the team to block. + # - team_id: str - Required. The unique identifier of the team to block. # - # Example: + # Example: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234" - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234" + # }' + # ``` # - # Returns: + # Returns: # - # - The updated team record with blocked=True + # - The updated team record with blocked=True # # @overload block(team_id:, request_options: {}) # @@ -340,15 +340,15 @@ def block(params) # Disable all logging callbacks for a team # - # Parameters: + # Parameters: # - # - team_id (str, required): The unique identifier for the team + # - team_id (str, required): The unique identifier for the team # - # Example curl: + # Example curl: # - # ``` - # curl -X POST 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/disable_logging' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X POST 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/disable_logging' -H 'Authorization: Bearer sk-1234' + # ``` # # @overload disable_logging(team_id, request_options: {}) # @@ -390,19 +390,19 @@ def list_available(params = {}) # [BETA] # - # delete members (either via user_email or user_id) from a team + # delete members (either via user_email or user_id) from a team # - # If user doesn't exist, an exception will be raised + # If user doesn't exist, an exception will be raised # - # ``` - # curl -X POST 'http://0.0.0.0:8000/team/member_delete' - # -H 'Authorization: Bearer sk-1234' - # -H 'Content-Type: application/json' - # -d '{ - # "team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", - # "user_id": "dev247652@hanzo.ai" - # }' - # ``` + # ``` + # curl -X POST 'http://0.0.0.0:8000/team/member_delete' + # -H 'Authorization: Bearer sk-1234' + # -H 'Content-Type: application/json' + # -d '{ + # "team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", + # "user_id": "dev247652@hanzo.ai" + # }' + # ``` # # @overload remove_member(team_id:, user_email: nil, user_id: nil, request_options: {}) # @@ -427,13 +427,13 @@ def remove_member(params) # get info on team + related keys # - # Parameters: + # Parameters: # - # - team_id: str - Required. The unique identifier of the team to get info on. + # - team_id: str - Required. The unique identifier of the team to get info on. # - # ``` - # curl --location 'http://localhost:4000/team/info?team_id=your_team_id_here' --header 'Authorization: Bearer your_api_key_here' - # ``` + # ``` + # curl --location 'http://localhost:4000/team/info?team_id=your_team_id_here' --header 'Authorization: Bearer your_api_key_here' + # ``` # # @overload retrieve_info(team_id: nil, request_options: {}) # @@ -456,17 +456,17 @@ def retrieve_info(params = {}) # Blocks all calls from keys with this team id. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The unique identifier of the team to unblock. + # - team_id: str - Required. The unique identifier of the team to unblock. # - # Example: + # Example: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234" - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234" + # }' + # ``` # # @overload unblock(team_id:, request_options: {}) # @@ -489,7 +489,7 @@ def unblock(params) # [BETA] # - # Update team member budgets and team member role + # Update team member budgets and team member role # # @overload update_member(team_id:, max_budget_in_team: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/team/callback.rb b/lib/hanzoai/resources/team/callback.rb index f0668b2d..3f44cc05 100644 --- a/lib/hanzoai/resources/team/callback.rb +++ b/lib/hanzoai/resources/team/callback.rb @@ -6,23 +6,23 @@ class Team class Callback # Get the success/failure callbacks and variables for a team # - # Parameters: + # Parameters: # - # - team_id (str, required): The unique identifier for the team + # - team_id (str, required): The unique identifier for the team # - # Example curl: + # Example curl: # - # ``` - # curl -X GET 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Authorization: Bearer sk-1234' + # ``` # - # This will return the callback settings for the team with id - # dbe2f686-a686-4896-864a-4c3924458709 + # This will return the callback settings for the team with id + # dbe2f686-a686-4896-864a-4c3924458709 # - # Returns { "status": "success", "data": { "team_id": team_id, - # "success_callbacks": team_callback_settings_obj.success_callback, - # "failure_callbacks": team_callback_settings_obj.failure_callback, - # "callback_vars": team_callback_settings_obj.callback_vars, }, } + # Returns { "status": "success", "data": { "team_id": team_id, + # "success_callbacks": team_callback_settings_obj.success_callback, + # "failure_callbacks": team_callback_settings_obj.failure_callback, + # "callback_vars": team_callback_settings_obj.callback_vars, }, } # # @overload retrieve(team_id, request_options: {}) # @@ -43,44 +43,44 @@ def retrieve(team_id, params = {}) # Add a success/failure callback to a team # - # Use this if if you want different teams to have different success/failure - # callbacks - # - # Parameters: - # - # - callback_name (Literal["langfuse", "langsmith", "gcs"], required): The name of - # the callback to add - # - callback_type (Literal["success", "failure", "success_and_failure"], - # required): The type of callback to add. One of: - # - "success": Callback for successful LLM calls - # - "failure": Callback for failed LLM calls - # - "success_and_failure": Callback for both successful and failed LLM calls - # - callback_vars (StandardCallbackDynamicParams, required): A dictionary of - # variables to pass to the callback - # - langfuse_public_key: The public key for the Langfuse callback - # - langfuse_secret_key: The secret key for the Langfuse callback - # - langfuse_secret: The secret for the Langfuse callback - # - langfuse_host: The host for the Langfuse callback - # - gcs_bucket_name: The name of the GCS bucket - # - gcs_path_service_account: The path to the GCS service account - # - langsmith_api_key: The API key for the Langsmith callback - # - langsmith_project: The project for the Langsmith callback - # - langsmith_base_url: The base URL for the Langsmith callback - # - # Example curl: - # - # ``` - # curl -X POST 'http:/localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Content-Type: application/json' -H 'Authorization: Bearer sk-1234' -d '{ - # "callback_name": "langfuse", - # "callback_type": "success", - # "callback_vars": {"langfuse_public_key": "pk-lf-xxxx1", "langfuse_secret_key": "sk-xxxxx"} - # - # }' - # ``` - # - # This means for the team where team_id = dbe2f686-a686-4896-864a-4c3924458709, - # all LLM calls will be logged to langfuse using the public key pk-lf-xxxx1 and - # the secret key sk-xxxxx + # Use this if if you want different teams to have different success/failure + # callbacks + # + # Parameters: + # + # - callback_name (Literal["langfuse", "langsmith", "gcs"], required): The name of + # the callback to add + # - callback_type (Literal["success", "failure", "success_and_failure"], + # required): The type of callback to add. One of: + # - "success": Callback for successful LLM calls + # - "failure": Callback for failed LLM calls + # - "success_and_failure": Callback for both successful and failed LLM calls + # - callback_vars (StandardCallbackDynamicParams, required): A dictionary of + # variables to pass to the callback + # - langfuse_public_key: The public key for the Langfuse callback + # - langfuse_secret_key: The secret key for the Langfuse callback + # - langfuse_secret: The secret for the Langfuse callback + # - langfuse_host: The host for the Langfuse callback + # - gcs_bucket_name: The name of the GCS bucket + # - gcs_path_service_account: The path to the GCS service account + # - langsmith_api_key: The API key for the Langsmith callback + # - langsmith_project: The project for the Langsmith callback + # - langsmith_base_url: The base URL for the Langsmith callback + # + # Example curl: + # + # ``` + # curl -X POST 'http:/localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Content-Type: application/json' -H 'Authorization: Bearer sk-1234' -d '{ + # "callback_name": "langfuse", + # "callback_type": "success", + # "callback_vars": {"langfuse_public_key": "pk-lf-xxxx1", "langfuse_secret_key": "sk-xxxxx"} + # + # }' + # ``` + # + # This means for the team where team_id = dbe2f686-a686-4896-864a-4c3924458709, + # all LLM calls will be logged to langfuse using the public key pk-lf-xxxx1 and + # the secret key sk-xxxxx # # @overload add(team_id, callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/team/model.rb b/lib/hanzoai/resources/team/model.rb index f1cd0c06..0fc977f6 100644 --- a/lib/hanzoai/resources/team/model.rb +++ b/lib/hanzoai/resources/team/model.rb @@ -5,21 +5,21 @@ module Resources class Team class Model # Add models to a team's allowed model list. Only proxy admin or team admin can - # add models. + # add models. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The team to add models to - # - models: List[str] - Required. List of models to add to the team + # - team_id: str - Required. The team to add models to + # - models: List[str] - Required. List of models to add to the team # - # Example Request: + # Example Request: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/model/add' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234", - # "models": ["gpt-4", "claude-2"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/model/add' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234", + # "models": ["gpt-4", "claude-2"] + # }' + # ``` # # @overload add(models:, team_id:, request_options: {}) # @@ -42,21 +42,21 @@ def add(params) end # Remove models from a team's allowed model list. Only proxy admin or team admin - # can remove models. + # can remove models. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The team to remove models from - # - models: List[str] - Required. List of models to remove from the team + # - team_id: str - Required. The team to remove models from + # - models: List[str] - Required. List of models to remove from the team # - # Example Request: + # Example Request: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/model/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234", - # "models": ["gpt-4"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/model/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234", + # "models": ["gpt-4"] + # }' + # ``` # # @overload remove(models:, team_id:, request_options: {}) # diff --git a/lib/hanzoai/resources/test.rb b/lib/hanzoai/resources/test.rb index 90723be2..77cdafcd 100644 --- a/lib/hanzoai/resources/test.rb +++ b/lib/hanzoai/resources/test.rb @@ -5,11 +5,11 @@ module Resources class Test # [DEPRECATED] use `/health/liveliness` instead. # - # A test endpoint that pings the proxy server to check if it's healthy. + # A test endpoint that pings the proxy server to check if it's healthy. # - # Parameters: request (Request): The incoming request. + # Parameters: request (Request): The incoming request. # - # Returns: dict: A dictionary containing the route of the request URL. + # Returns: dict: A dictionary containing the route of the request URL. # # @overload ping(request_options: {}) # diff --git a/lib/hanzoai/resources/threads.rb b/lib/hanzoai/resources/threads.rb index 5f1b8ba5..e8b5a912 100644 --- a/lib/hanzoai/resources/threads.rb +++ b/lib/hanzoai/resources/threads.rb @@ -11,8 +11,8 @@ class Threads # Create a thread. # - # API Reference - - # https://platform.openai.com/docs/api-reference/threads/createThread + # API Reference - + # https://platform.openai.com/docs/api-reference/threads/createThread # # @overload create(request_options: {}) # @@ -32,7 +32,7 @@ def create(params = {}) # Retrieves a thread. # - # API Reference - https://platform.openai.com/docs/api-reference/threads/getThread + # API Reference - https://platform.openai.com/docs/api-reference/threads/getThread # # @overload retrieve(thread_id, request_options: {}) # diff --git a/lib/hanzoai/resources/threads/messages.rb b/lib/hanzoai/resources/threads/messages.rb index 540c7c06..a51bb2dc 100644 --- a/lib/hanzoai/resources/threads/messages.rb +++ b/lib/hanzoai/resources/threads/messages.rb @@ -6,8 +6,8 @@ class Threads class Messages # Create a message. # - # API Reference - - # https://platform.openai.com/docs/api-reference/messages/createMessage + # API Reference - + # https://platform.openai.com/docs/api-reference/messages/createMessage # # @overload create(thread_id, request_options: {}) # @@ -28,8 +28,8 @@ def create(thread_id, params = {}) # Returns a list of messages for a given thread. # - # API Reference - - # https://platform.openai.com/docs/api-reference/messages/listMessages + # API Reference - + # https://platform.openai.com/docs/api-reference/messages/listMessages # # @overload list(thread_id, request_options: {}) # diff --git a/lib/hanzoai/resources/threads/runs.rb b/lib/hanzoai/resources/threads/runs.rb index 56bbaaad..9e1aecce 100644 --- a/lib/hanzoai/resources/threads/runs.rb +++ b/lib/hanzoai/resources/threads/runs.rb @@ -6,7 +6,7 @@ class Threads class Runs # Create a run. # - # API Reference: https://platform.openai.com/docs/api-reference/runs/createRun + # API Reference: https://platform.openai.com/docs/api-reference/runs/createRun # # @overload create(thread_id, request_options: {}) # diff --git a/lib/hanzoai/resources/user.rb b/lib/hanzoai/resources/user.rb index c555445f..7852d0ba 100644 --- a/lib/hanzoai/resources/user.rb +++ b/lib/hanzoai/resources/user.rb @@ -4,87 +4,87 @@ module Hanzoai module Resources class User # Use this to create a new INTERNAL user with a budget. Internal Users can access - # LLM Admin UI to make keys, request access to models. This creates a new user and - # generates a new api key for the new user. The new api key is returned. - # - # Returns user id, budget + new key. - # - # Parameters: - # - # - user_id: Optional[str] - Specify a user id. If not set, a unique id will be - # generated. - # - user_alias: Optional[str] - A descriptive name for you to know who this user - # id refers to. - # - teams: Optional[list] - specify a list of team id's a user belongs to. - # - user_email: Optional[str] - Specify a user email. - # - send_invite_email: Optional[bool] - Specify if an invite email should be sent. - # - user_role: Optional[str] - Specify a user role - "proxy_admin", - # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", - # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - # - max_budget: Optional[float] - Specify max budget for a given user. - # - budget_duration: Optional[str] - Budget is reset at the end of specified - # duration. If not set, budget is never reset. You can set duration as seconds - # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, - # key is allowed to call all models). Set to ['no-default-models'] to block all - # model access. Restricting user to only team-based model access. - # - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per - # minute) - # - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per - # minute) - # - auto_create_key: bool - Default=True. Flag used for returning a key as part of - # the /user/new response - # - aliases: Optional[dict] - Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - # - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - # - allowed_cache_controls: Optional[list] - List of allowed cache control values. - # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - # - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - # - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active - # guardrails for the user - # - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, - # eg. turning off pii masking. - # - metadata: Optional[dict] - Metadata for user, store information for user. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } - # - max_parallel_requests: Optional[int] - Rate limit a user based on the number - # of parallel requests. Raises 429 error, if user's parallel requests > x. - # - soft_budget: Optional[float] - Get alerts when user crosses given budget, - # doesn't block requests. - # - model_max_budget: Optional[dict] - Model-specific max budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - # - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated - # by proxy whenever user is used. You can set duration as seconds ("30s"), - # minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - # - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default - # is None. - # - duration: Optional[str] - Duration for the key auto-created on `/user/new`. - # Default is None. - # - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. - # Default is None. - # - # Returns: - # - # - key: (str) The generated api key for the user - # - expires: (datetime) Datetime object for when key expires. - # - user_id: (str) Unique user id - used for tracking spend across multiple keys - # for same user id. - # - max_budget: (float|None) Max budget for given user. - # - # Usage Example - # - # ```shell - # curl -X POST "http://localhost:4000/user/new" -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ - # "username": "new_user", - # "email": "new_user@example.com" - # }' - # ``` + # LLM Admin UI to make keys, request access to models. This creates a new user and + # generates a new api key for the new user. The new api key is returned. + # + # Returns user id, budget + new key. + # + # Parameters: + # + # - user_id: Optional[str] - Specify a user id. If not set, a unique id will be + # generated. + # - user_alias: Optional[str] - A descriptive name for you to know who this user + # id refers to. + # - teams: Optional[list] - specify a list of team id's a user belongs to. + # - user_email: Optional[str] - Specify a user email. + # - send_invite_email: Optional[bool] - Specify if an invite email should be sent. + # - user_role: Optional[str] - Specify a user role - "proxy_admin", + # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", + # "customer". Info about each role here: + # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` + # - max_budget: Optional[float] - Specify max budget for a given user. + # - budget_duration: Optional[str] - Budget is reset at the end of specified + # duration. If not set, budget is never reset. You can set duration as seconds + # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). + # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, + # key is allowed to call all models). Set to ['no-default-models'] to block all + # model access. Restricting user to only team-based model access. + # - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per + # minute) + # - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per + # minute) + # - auto_create_key: bool - Default=True. Flag used for returning a key as part of + # the /user/new response + # - aliases: Optional[dict] - Model aliases for the user - + # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. + # - allowed_cache_controls: Optional[list] - List of allowed cache control values. + # Example - ["no-cache", "no-store"]. See all values - + # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- + # - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. + # - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active + # guardrails for the user + # - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, + # eg. turning off pii masking. + # - metadata: Optional[dict] - Metadata for user, store information for user. + # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" + # } + # - max_parallel_requests: Optional[int] - Rate limit a user based on the number + # of parallel requests. Raises 429 error, if user's parallel requests > x. + # - soft_budget: Optional[float] - Get alerts when user crosses given budget, + # doesn't block requests. + # - model_max_budget: Optional[dict] - Model-specific max budget for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) + # - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated + # by proxy whenever user is used. You can set duration as seconds ("30s"), + # minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). + # - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default + # is None. + # - duration: Optional[str] - Duration for the key auto-created on `/user/new`. + # Default is None. + # - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. + # Default is None. + # + # Returns: + # + # - key: (str) The generated api key for the user + # - expires: (datetime) Datetime object for when key expires. + # - user_id: (str) Unique user id - used for tracking spend across multiple keys + # for same user id. + # - max_budget: (float|None) Max budget for given user. + # + # Usage Example + # + # ```shell + # curl -X POST "http://localhost:4000/user/new" -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "username": "new_user", + # "email": "new_user@example.com" + # }' + # ``` # # @overload create(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) # @@ -133,60 +133,60 @@ def create(params = {}) # Example curl # - # ``` - # curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", - # "user_role": "proxy_admin_viewer" - # }' - # ``` - # - # Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique - # id will be generated. - user_email: Optional[str] - Specify a user email. - - # password: Optional[str] - Specify a user password. - user_alias: Optional[str] - - # A descriptive name for you to know who this user id refers to. - teams: - # Optional[list] - specify a list of team id's a user belongs to. - - # send_invite_email: Optional[bool] - Specify if an invite email should be sent. - - # user_role: Optional[str] - Specify a user role - "proxy_admin", - # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", - # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - max_budget: - # Optional[float] - Specify max budget for a given user. - budget_duration: - # Optional[str] - Budget is reset at the end of specified duration. If not set, - # budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), - # hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - - # Model_name's a user is allowed to call. (if empty, key is allowed to call all - # models) - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens - # per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user - # (Requests per minute) - auto_create_key: bool - Default=True. Flag used for - # returning a key as part of the /user/new response - aliases: Optional[dict] - - # Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: - # Optional[dict] - [DEPRECATED PARAM] User-specific config. - - # allowed_cache_controls: Optional[list] - List of allowed cache control values. - # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - - # blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - - # guardrails: Optional[List[str]] - [Not Implemented Yet] List of active - # guardrails for the user - permissions: Optional[dict] - [Not Implemented Yet] - # User-specific permissions, eg. turning off pii masking. - metadata: - # Optional[dict] - Metadata for user, store information for user. Example metadata - # = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" } - - # max_parallel_requests: Optional[int] - Rate limit a user based on the number of - # parallel requests. Raises 429 error, if user's parallel requests > x. - - # soft_budget: Optional[float] - Get alerts when user crosses given budget, - # doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max - # budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - - # model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - - # model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - - # spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by - # proxy whenever user is used. You can set duration as seconds ("30s"), minutes - # ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - team_id: Optional[str] - - # [DEPRECATED PARAM] The team id of the user. Default is None. - duration: - # Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT - # IMPLEMENTED]. + # ``` + # curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_id": "test-llm-user-4", + # "user_role": "proxy_admin_viewer" + # }' + # ``` + # + # Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique + # id will be generated. - user_email: Optional[str] - Specify a user email. - + # password: Optional[str] - Specify a user password. - user_alias: Optional[str] - + # A descriptive name for you to know who this user id refers to. - teams: + # Optional[list] - specify a list of team id's a user belongs to. - + # send_invite_email: Optional[bool] - Specify if an invite email should be sent. - + # user_role: Optional[str] - Specify a user role - "proxy_admin", + # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", + # "customer". Info about each role here: + # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - max_budget: + # Optional[float] - Specify max budget for a given user. - budget_duration: + # Optional[str] - Budget is reset at the end of specified duration. If not set, + # budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), + # hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - + # Model_name's a user is allowed to call. (if empty, key is allowed to call all + # models) - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens + # per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user + # (Requests per minute) - auto_create_key: bool - Default=True. Flag used for + # returning a key as part of the /user/new response - aliases: Optional[dict] - + # Model aliases for the user - + # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: + # Optional[dict] - [DEPRECATED PARAM] User-specific config. - + # allowed_cache_controls: Optional[list] - List of allowed cache control values. + # Example - ["no-cache", "no-store"]. See all values - + # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - + # blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - + # guardrails: Optional[List[str]] - [Not Implemented Yet] List of active + # guardrails for the user - permissions: Optional[dict] - [Not Implemented Yet] + # User-specific permissions, eg. turning off pii masking. - metadata: + # Optional[dict] - Metadata for user, store information for user. Example metadata + # = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" } - + # max_parallel_requests: Optional[int] - Rate limit a user based on the number of + # parallel requests. Raises 429 error, if user's parallel requests > x. - + # soft_budget: Optional[float] - Get alerts when user crosses given budget, + # doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max + # budget for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - + # model_rpm_limit: Optional[float] - Model-specific rpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # model_tpm_limit: Optional[float] - Model-specific tpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by + # proxy whenever user is used. You can set duration as seconds ("30s"), minutes + # ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - team_id: Optional[str] - + # [DEPRECATED PARAM] The team id of the user. Default is None. - duration: + # Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT + # IMPLEMENTED]. # # @overload update(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, password: nil, permissions: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) # @@ -232,21 +232,21 @@ def update(params = {}) # Get a paginated list of users, optionally filtered by role. # - # Used by the UI to populate the user lists. + # Used by the UI to populate the user lists. # - # Parameters: role: Optional[str] Filter users by role. Can be one of: - - # proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer - # user_ids: Optional[str] Get list of users by user_ids. Comma separated list of - # user_ids. page: int The page number to return page_size: int The number of items - # per page + # Parameters: role: Optional[str] Filter users by role. Can be one of: - + # proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer + # user_ids: Optional[str] Get list of users by user_ids. Comma separated list of + # user_ids. page: int The page number to return page_size: int The number of items + # per page # - # Currently - admin-only endpoint. + # Currently - admin-only endpoint. # - # Example curl: + # Example curl: # - # ``` - # http://0.0.0.0:4000/user/list?user_ids=default_user_id,693c1a4a-1cc0-4c7c-afe8-b5d2c8d52e17 - # ``` + # ``` + # http://0.0.0.0:4000/user/list?user_ids=default_user_id,693c1a4a-1cc0-4c7c-afe8-b5d2c8d52e17 + # ``` # # @overload list(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}) # @@ -272,18 +272,18 @@ def list(params = {}) # delete user and associated user keys # - # ``` - # curl --location 'http://0.0.0.0:4000/user/delete' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data-raw '{ - # "user_ids": ["45e3e396-ee08-4a61-a88e-16b3ce7e0849"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/user/delete' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data-raw '{ + # "user_ids": ["45e3e396-ee08-4a61-a88e-16b3ce7e0849"] + # }' + # ``` # - # Parameters: + # Parameters: # - # - user_ids: List[str] - The list of user id's to be deleted. + # - user_ids: List[str] - The list of user id's to be deleted. # # @overload delete(user_ids:, llm_changed_by: nil, request_options: {}) # @@ -309,13 +309,13 @@ def delete(params) # [10/07/2024] Note: To get all users (+pagination), use `/user/list` endpoint. # - # Use this to get user information. (user row + all user key info) + # Use this to get user information. (user row + all user key info) # - # Example request + # Example request # - # ``` - # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' + # ``` # # @overload retrieve_info(user_id: nil, request_options: {}) # diff --git a/lib/hanzoai/resources/utils.rb b/lib/hanzoai/resources/utils.rb index 7ab7de15..06f59cca 100644 --- a/lib/hanzoai/resources/utils.rb +++ b/lib/hanzoai/resources/utils.rb @@ -5,13 +5,13 @@ module Resources class Utils # Returns supported openai params for a given llm model name # - # e.g. `gpt-4` vs `gpt-3.5-turbo` + # e.g. `gpt-4` vs `gpt-3.5-turbo` # - # Example curl: + # Example curl: # - # ``` - # curl -X GET --location 'http://localhost:4000/utils/supported_openai_params?model=gpt-3.5-turbo-16k' --header 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET --location 'http://localhost:4000/utils/supported_openai_params?model=gpt-3.5-turbo-16k' --header 'Authorization: Bearer sk-1234' + # ``` # # @overload get_supported_openai_params(model:, request_options: {}) # diff --git a/lib/hanzoai/resources/vertex_ai.rb b/lib/hanzoai/resources/vertex_ai.rb index ea8bf3c9..a9fc60ad 100644 --- a/lib/hanzoai/resources/vertex_ai.rb +++ b/lib/hanzoai/resources/vertex_ai.rb @@ -5,7 +5,7 @@ module Resources class VertexAI # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) # # @overload create(endpoint, request_options: {}) # @@ -26,7 +26,7 @@ def create(endpoint, params = {}) # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) # # @overload retrieve(endpoint, request_options: {}) # @@ -47,7 +47,7 @@ def retrieve(endpoint, params = {}) # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) # # @overload update(endpoint, request_options: {}) # @@ -68,7 +68,7 @@ def update(endpoint, params = {}) # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) # # @overload delete(endpoint, request_options: {}) # @@ -89,7 +89,7 @@ def delete(endpoint, params = {}) # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) # # @overload patch(endpoint, request_options: {}) # diff --git a/rbi/lib/hanzoai/client.rbi b/rbi/lib/hanzoai/client.rbi index 864be404..25ad0942 100644 --- a/rbi/lib/hanzoai/client.rbi +++ b/rbi/lib/hanzoai/client.rbi @@ -190,14 +190,14 @@ module Hanzoai end def self.new( # The default name of the subscription key header of Azure Defaults to - # `ENV["HANZO_API_KEY"]` + # `ENV["HANZO_API_KEY"]` api_key: ENV["HANZO_API_KEY"], # Specifies the environment to use for the API. # - # Each environment maps to a different base URL: + # Each environment maps to a different base URL: # - # - `production` corresponds to `https://api.hanzo.ai` - # - `sandbox` corresponds to `https://api.sandbox.hanzo.ai` + # - `production` corresponds to `https://api.hanzo.ai` + # - `sandbox` corresponds to `https://api.sandbox.hanzo.ai` environment: nil, # Override the default base URL for the API, e.g., `"https://api.example.com/v2/"` base_url: nil, diff --git a/rbi/lib/hanzoai/internal.rbi b/rbi/lib/hanzoai/internal.rbi index d9498974..06a474ad 100644 --- a/rbi/lib/hanzoai/internal.rbi +++ b/rbi/lib/hanzoai/internal.rbi @@ -4,7 +4,7 @@ module Hanzoai # @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. + # this alias might be refined in the future. AnyHash = T.type_alias { T::Hash[Symbol, T.anything] } OMIT = T.let(T.anything, T.anything) diff --git a/rbi/lib/hanzoai/internal/transport/base_client.rbi b/rbi/lib/hanzoai/internal/transport/base_client.rbi index 6aaa4a7d..05366c84 100644 --- a/rbi/lib/hanzoai/internal/transport/base_client.rbi +++ b/rbi/lib/hanzoai/internal/transport/base_client.rbi @@ -151,7 +151,7 @@ module Hanzoai 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. + # methods call into. # # @overload request(method, path, query: {}, headers: {}, body: nil, unwrap: nil, page: nil, stream: nil, model: Hanzoai::Internal::Type::Unknown, options: {}) sig do diff --git a/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi index 54839407..bcd65532 100644 --- a/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi +++ b/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi @@ -17,7 +17,7 @@ module Hanzoai end # from the golang stdlib - # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49 + # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49 KEEP_ALIVE_TIMEOUT = 30 class << self diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index 37d100dc..082cf45d 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -16,7 +16,7 @@ module Hanzoai # @api private # # Assumes superclass fields are totally defined before fields are accessed / - # defined on subclasses. + # defined on subclasses. sig do returns( T::Hash[ @@ -99,7 +99,7 @@ module Hanzoai # @api private # # `request_only` attributes not excluded from `.#coerce` when receiving responses - # even if well behaved servers should not send them + # even if well behaved servers should not send them sig { params(blk: T.proc.void).void } private def request_only(&blk); end @@ -138,33 +138,33 @@ module Hanzoai end # Returns the raw value associated with the given key, if found. Otherwise, nil is - # returned. + # returned. # - # It is valid to lookup keys that are not in the API spec, for example to access - # undocumented features. This method does not parse response data into - # higher-level types. Lookup by anything other than a Symbol is an ArgumentError. + # It is valid to lookup keys that are not in the API spec, for example to access + # 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 # 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 - # value indicates which values were ever set on the object. i.e. there will be a - # key in this hash if they ever were, even if the set value was nil. + # Keys are Symbols and values are the raw values from the response. The return + # value indicates which values were ever set on the object. i.e. there will be a + # key in this hash if they ever were, even if the set value was nil. # - # This method is not recursive. The returned value is shared by the object, so it - # should not be mutated. + # This method is not recursive. The returned value is shared by the object, so it + # should not be mutated. sig { overridable.returns(Hanzoai::Internal::AnyHash) } def to_h; end # 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 - # value indicates which values were ever set on the object. i.e. there will be a - # key in this hash if they ever were, even if the set value was nil. + # Keys are Symbols and values are the raw values from the response. The return + # value indicates which values were ever set on the object. i.e. there will be a + # key in this hash if they ever were, even if the set value was nil. # - # This method is not recursive. The returned value is shared by the object, so it - # should not be mutated. + # This method is not recursive. The returned value is shared by the object, so it + # should not be mutated. sig { overridable.returns(Hanzoai::Internal::AnyHash) } def to_hash; end diff --git a/rbi/lib/hanzoai/internal/type/converter.rbi b/rbi/lib/hanzoai/internal/type/converter.rbi index 23338e69..64e45217 100644 --- a/rbi/lib/hanzoai/internal/type/converter.rbi +++ b/rbi/lib/hanzoai/internal/type/converter.rbi @@ -51,13 +51,13 @@ module Hanzoai # # Based on `target`, transform `value` into `target`, to the extent possible: # - # 1. if the given `value` conforms to `target` already, return the given `value` - # 2. if it's possible and safe to convert the given `value` to `target`, then the - # converted value - # 3. otherwise, the given `value` unaltered + # 1. if the given `value` conforms to `target` already, return the given `value` + # 2. if it's possible and safe to convert the given `value` to `target`, then the + # converted value + # 3. otherwise, the given `value` unaltered # - # The coercion process is subject to improvement between minor release versions. - # See https://docs.pydantic.dev/latest/concepts/unions/#smart-mode + # The coercion process is subject to improvement between minor release versions. + # See https://docs.pydantic.dev/latest/concepts/unions/#smart-mode sig do params( target: Hanzoai::Internal::Type::Converter::Input, @@ -70,24 +70,24 @@ module Hanzoai target, value, # The `strictness` is one of `true`, `false`, or `:strong`. This informs the - # coercion strategy when we have to decide between multiple possible conversion - # targets: + # coercion strategy when we have to decide between multiple possible conversion + # targets: # - # - `true`: the conversion must be exact, with minimum coercion. - # - `false`: the conversion can be approximate, with some coercion. - # - `:strong`: the conversion must be exact, with no coercion, and raise an error - # if not possible. + # - `true`: the conversion must be exact, with minimum coercion. + # - `false`: the conversion can be approximate, with some coercion. + # - `:strong`: the conversion must be exact, with no coercion, and raise an error + # if not possible. # - # The `exactness` is `Hash` with keys being one of `yes`, `no`, or `maybe`. For - # any given conversion attempt, the exactness will be updated based on how closely - # the value recursively matches the target type: + # The `exactness` is `Hash` with keys being one of `yes`, `no`, or `maybe`. For + # any given conversion attempt, the exactness will be updated based on how closely + # the value recursively matches the target type: # - # - `yes`: the value can be converted to the target type with minimum coercion. - # - `maybe`: the value can be converted to the target type with some reasonable - # coercion. - # - `no`: the value cannot be converted to the target type. + # - `yes`: the value can be converted to the target type with minimum coercion. + # - `maybe`: the value can be converted to the target type with some reasonable + # coercion. + # - `no`: the value cannot be converted to the target type. # - # See implementation below for more details. + # See implementation below for more details. state: {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} ); end # @api private diff --git a/rbi/lib/hanzoai/internal/type/enum.rbi b/rbi/lib/hanzoai/internal/type/enum.rbi index 96ce457f..4f0d7715 100644 --- a/rbi/lib/hanzoai/internal/type/enum.rbi +++ b/rbi/lib/hanzoai/internal/type/enum.rbi @@ -6,15 +6,15 @@ module Hanzoai # @api private # # A value from among a specified list of options. OpenAPI enum values map to Ruby - # values in the SDK as follows: + # values in the SDK as follows: # - # 1. boolean => true | false - # 2. integer => Integer - # 3. float => Float - # 4. string => Symbol + # 1. boolean => true | false + # 2. integer => Integer + # 3. float => Float + # 4. string => Symbol # - # We can therefore convert string values to Symbols, but can't convert other - # values safely. + # We can therefore convert string values to Symbols, but can't convert other + # values safely. module Enum include Hanzoai::Internal::Type::Converter @@ -37,7 +37,7 @@ module Hanzoai # @api private # # Unlike with primitives, `Enum` additionally validates that the value is a member - # of the enum. + # of the enum. sig do override .params(value: T.any( diff --git a/rbi/lib/hanzoai/internal/util.rbi b/rbi/lib/hanzoai/internal/util.rbi index 44dd9549..7a9dcc41 100644 --- a/rbi/lib/hanzoai/internal/util.rbi +++ b/rbi/lib/hanzoai/internal/util.rbi @@ -52,7 +52,7 @@ module Hanzoai # @api private # # Recursively merge one hash with another. If the values at a given key are not - # both hashes, just take the new value. + # 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) diff --git a/rbi/lib/hanzoai/models/budget_new.rbi b/rbi/lib/hanzoai/models/budget_new.rbi index 26d3e970..19fe6895 100644 --- a/rbi/lib/hanzoai/models/budget_new.rbi +++ b/rbi/lib/hanzoai/models/budget_new.rbi @@ -20,7 +20,7 @@ module Hanzoai attr_accessor :max_parallel_requests # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', - # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) sig { returns(T.nilable(T::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget])) } attr_accessor :model_max_budget diff --git a/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi b/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi index 4041fd62..4e947a49 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi @@ -5,7 +5,7 @@ module Hanzoai module Config class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel # Key-value pairs of headers to be forwarded with the request. You can set any key - # value pair here and it will be forwarded to your target endpoint + # value pair here and it will be forwarded to your target endpoint sig { returns(T.anything) } attr_accessor :headers diff --git a/rbi/lib/hanzoai/models/customer_create_params.rbi b/rbi/lib/hanzoai/models/customer_create_params.rbi index 3d02ae58..01c60189 100644 --- a/rbi/lib/hanzoai/models/customer_create_params.rbi +++ b/rbi/lib/hanzoai/models/customer_create_params.rbi @@ -40,7 +40,7 @@ module Hanzoai attr_accessor :max_parallel_requests # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', - # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) sig { returns(T.nilable(T::Hash[Symbol, Hanzoai::Models::CustomerCreateParams::ModelMaxBudget])) } attr_accessor :model_max_budget diff --git a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi index 93f52c99..f0939580 100644 --- a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi +++ b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi @@ -12,7 +12,7 @@ module Hanzoai attr_accessor :api_key # View spend for a specific customer_id. Example customer_id='1234. Can be used in - # conjunction with team_id as well. + # conjunction with team_id as well. sig { returns(T.nilable(String)) } attr_accessor :customer_id diff --git a/rbi/lib/hanzoai/models/key_block_params.rbi b/rbi/lib/hanzoai/models/key_block_params.rbi index 5995c685..4f5391c9 100644 --- a/rbi/lib/hanzoai/models/key_block_params.rbi +++ b/rbi/lib/hanzoai/models/key_block_params.rbi @@ -7,7 +7,7 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/key_delete_params.rbi b/rbi/lib/hanzoai/models/key_delete_params.rbi index 9e624888..993e393e 100644 --- a/rbi/lib/hanzoai/models/key_delete_params.rbi +++ b/rbi/lib/hanzoai/models/key_delete_params.rbi @@ -13,7 +13,7 @@ module Hanzoai attr_accessor :keys # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/key_generate_params.rbi b/rbi/lib/hanzoai/models/key_generate_params.rbi index 808faf7f..81707bcf 100644 --- a/rbi/lib/hanzoai/models/key_generate_params.rbi +++ b/rbi/lib/hanzoai/models/key_generate_params.rbi @@ -88,7 +88,7 @@ module Hanzoai attr_accessor :user_id # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/key_list_response.rbi b/rbi/lib/hanzoai/models/key_list_response.rbi index c1165db3..3adda318 100644 --- a/rbi/lib/hanzoai/models/key_list_response.rbi +++ b/rbi/lib/hanzoai/models/key_list_response.rbi @@ -252,16 +252,16 @@ module Hanzoai attr_accessor :user_id # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers sig { returns(T.nilable(Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol)) } attr_accessor :user_role @@ -485,16 +485,16 @@ module Hanzoai end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers module UserRole extend Hanzoai::Internal::Type::Enum diff --git a/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi b/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi index fc19df63..34088317 100644 --- a/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi +++ b/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi @@ -7,7 +7,7 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/key_unblock_params.rbi b/rbi/lib/hanzoai/models/key_unblock_params.rbi index a791aa1d..970e9d34 100644 --- a/rbi/lib/hanzoai/models/key_unblock_params.rbi +++ b/rbi/lib/hanzoai/models/key_unblock_params.rbi @@ -7,7 +7,7 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/key_update_params.rbi b/rbi/lib/hanzoai/models/key_update_params.rbi index b97fcf18..ed24c8f2 100644 --- a/rbi/lib/hanzoai/models/key_update_params.rbi +++ b/rbi/lib/hanzoai/models/key_update_params.rbi @@ -88,7 +88,7 @@ module Hanzoai attr_accessor :user_id # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi index b5e86ebe..37a80716 100644 --- a/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi +++ b/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi @@ -241,7 +241,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, diff --git a/rbi/lib/hanzoai/models/organization_add_member_response.rbi b/rbi/lib/hanzoai/models/organization_add_member_response.rbi index 26e71624..abdb318f 100644 --- a/rbi/lib/hanzoai/models/organization_add_member_response.rbi +++ b/rbi/lib/hanzoai/models/organization_add_member_response.rbi @@ -92,7 +92,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, @@ -391,7 +391,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, diff --git a/rbi/lib/hanzoai/models/organization_delete_response.rbi b/rbi/lib/hanzoai/models/organization_delete_response.rbi index ce33879c..f1d49f25 100644 --- a/rbi/lib/hanzoai/models/organization_delete_response.rbi +++ b/rbi/lib/hanzoai/models/organization_delete_response.rbi @@ -237,7 +237,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, diff --git a/rbi/lib/hanzoai/models/organization_list_response.rbi b/rbi/lib/hanzoai/models/organization_list_response.rbi index 2d34ff66..a744fe67 100644 --- a/rbi/lib/hanzoai/models/organization_list_response.rbi +++ b/rbi/lib/hanzoai/models/organization_list_response.rbi @@ -237,7 +237,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, diff --git a/rbi/lib/hanzoai/models/organization_update_member_params.rbi b/rbi/lib/hanzoai/models/organization_update_member_params.rbi index 83dca5c7..39c337af 100644 --- a/rbi/lib/hanzoai/models/organization_update_member_params.rbi +++ b/rbi/lib/hanzoai/models/organization_update_member_params.rbi @@ -13,16 +13,16 @@ module Hanzoai attr_accessor :max_budget_in_organization # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers sig { returns(T.nilable(Hanzoai::Models::OrganizationUpdateMemberParams::Role::OrSymbol)) } attr_accessor :role @@ -67,16 +67,16 @@ module Hanzoai def to_hash; end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers module Role extend Hanzoai::Internal::Type::Enum diff --git a/rbi/lib/hanzoai/models/organization_update_member_response.rbi b/rbi/lib/hanzoai/models/organization_update_member_response.rbi index defb9576..9f0fd1db 100644 --- a/rbi/lib/hanzoai/models/organization_update_member_response.rbi +++ b/rbi/lib/hanzoai/models/organization_update_member_response.rbi @@ -48,7 +48,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, diff --git a/rbi/lib/hanzoai/models/organization_update_response.rbi b/rbi/lib/hanzoai/models/organization_update_response.rbi index 3507b5db..ebf8df05 100644 --- a/rbi/lib/hanzoai/models/organization_update_response.rbi +++ b/rbi/lib/hanzoai/models/organization_update_response.rbi @@ -233,7 +233,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, diff --git a/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi b/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi index 7e2ce88d..16cba784 100644 --- a/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi +++ b/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi @@ -15,7 +15,7 @@ module Hanzoai attr_writer :providers # Complete provider budget configuration and status. Maps provider names to their - # budget configs. + # budget configs. sig do params( providers: T::Hash[Symbol, T.any(Hanzoai::Models::ProviderListBudgetsResponse::Provider, Hanzoai::Internal::AnyHash)] diff --git a/rbi/lib/hanzoai/models/spend_list_logs_params.rbi b/rbi/lib/hanzoai/models/spend_list_logs_params.rbi index 9e40cd13..3560a3ed 100644 --- a/rbi/lib/hanzoai/models/spend_list_logs_params.rbi +++ b/rbi/lib/hanzoai/models/spend_list_logs_params.rbi @@ -15,7 +15,7 @@ module Hanzoai attr_accessor :end_date # request_id to get spend logs for specific request_id. If none passed then pass - # spend logs for all requests + # spend logs for all requests sig { returns(T.nilable(String)) } attr_accessor :request_id diff --git a/rbi/lib/hanzoai/models/team/callback_add_params.rbi b/rbi/lib/hanzoai/models/team/callback_add_params.rbi index 1965a0f8..8976fa3b 100644 --- a/rbi/lib/hanzoai/models/team/callback_add_params.rbi +++ b/rbi/lib/hanzoai/models/team/callback_add_params.rbi @@ -17,7 +17,7 @@ module Hanzoai attr_accessor :callback_type # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/team_add_member_response.rbi b/rbi/lib/hanzoai/models/team_add_member_response.rbi index 689c3df6..b091ac16 100644 --- a/rbi/lib/hanzoai/models/team_add_member_response.rbi +++ b/rbi/lib/hanzoai/models/team_add_member_response.rbi @@ -468,7 +468,7 @@ module Hanzoai attr_accessor :user_role # This is the table that track what organizations a user belongs to and users - # spend within the organization + # spend within the organization sig do params( created_at: Time, diff --git a/rbi/lib/hanzoai/models/team_create_params.rbi b/rbi/lib/hanzoai/models/team_create_params.rbi index f29f1979..b096c3b1 100644 --- a/rbi/lib/hanzoai/models/team_create_params.rbi +++ b/rbi/lib/hanzoai/models/team_create_params.rbi @@ -70,7 +70,7 @@ module Hanzoai attr_accessor :tpm_limit # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/team_delete_params.rbi b/rbi/lib/hanzoai/models/team_delete_params.rbi index 0d5ee0fb..a5f5f6e7 100644 --- a/rbi/lib/hanzoai/models/team_delete_params.rbi +++ b/rbi/lib/hanzoai/models/team_delete_params.rbi @@ -10,7 +10,7 @@ module Hanzoai attr_accessor :team_ids # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/team_update_params.rbi b/rbi/lib/hanzoai/models/team_update_params.rbi index 054f35a3..5f24a9b2 100644 --- a/rbi/lib/hanzoai/models/team_update_params.rbi +++ b/rbi/lib/hanzoai/models/team_update_params.rbi @@ -46,7 +46,7 @@ module Hanzoai attr_accessor :tpm_limit # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/models/user_delete_params.rbi b/rbi/lib/hanzoai/models/user_delete_params.rbi index 681d52c8..6a933327 100644 --- a/rbi/lib/hanzoai/models/user_delete_params.rbi +++ b/rbi/lib/hanzoai/models/user_delete_params.rbi @@ -10,7 +10,7 @@ module Hanzoai attr_accessor :user_ids # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } attr_reader :llm_changed_by diff --git a/rbi/lib/hanzoai/request_options.rbi b/rbi/lib/hanzoai/request_options.rbi index eec65282..81362d04 100644 --- a/rbi/lib/hanzoai/request_options.rbi +++ b/rbi/lib/hanzoai/request_options.rbi @@ -2,32 +2,32 @@ module Hanzoai # Specify HTTP behaviour to use for a specific request. These options supplement - # or override those provided at the client level. + # 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. + # 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 < Hanzoai::Internal::Type::BaseModel # @api private sig { params(opts: T.any(T.self_type, T::Hash[Symbol, T.anything])).void } def self.validate!(opts); end # Idempotency key to send with request and all associated retries. Will only be - # sent for write requests. + # sent for write requests. sig { returns(T.nilable(String)) } attr_accessor :idempotency_key # Extra query params to send with the request. These are `.merge`’d into any - # `query` given at the client level. + # `query` given at the client level. sig { returns(T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))])) } attr_accessor :extra_query # Extra headers to send with the request. These are `.merged`’d into any - # `extra_headers` given at the client level. + # `extra_headers` given at the client level. sig { returns(T.nilable(T::Hash[String, T.nilable(String)])) } attr_accessor :extra_headers # Extra data to send with the request. These are deep merged into any data - # generated as part of the normal request. + # generated as part of the normal request. sig { returns(T.nilable(T.anything)) } attr_accessor :extra_body diff --git a/rbi/lib/hanzoai/resources/active.rbi b/rbi/lib/hanzoai/resources/active.rbi index 21a1538c..25077de9 100644 --- a/rbi/lib/hanzoai/resources/active.rbi +++ b/rbi/lib/hanzoai/resources/active.rbi @@ -5,27 +5,27 @@ module Hanzoai class Active # Returns a list of llm level settings # - # This is useful for debugging and ensuring the proxy server is configured - # correctly. + # This is useful for debugging and ensuring the proxy server is configured + # correctly. # - # Response schema: + # Response schema: # - # ``` - # { - # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), - # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, - # } - # ``` + # ``` + # { + # "alerting": _alerting, + # "llm.callbacks": llm_callbacks, + # "llm.input_callback": llm_input_callbacks, + # "llm.failure_callback": llm_failure_callbacks, + # "llm.success_callback": llm_success_callbacks, + # "llm._async_success_callback": llm_async_success_callbacks, + # "llm._async_failure_callback": llm_async_failure_callbacks, + # "llm._async_input_callback": llm_async_input_callbacks, + # "all_llm_callbacks": all_llm_callbacks, + # "num_callbacks": len(all_llm_callbacks), + # "num_alerting": _num_alerting, + # "llm.request_timeout": llm.request_timeout, + # } + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/assistants.rbi b/rbi/lib/hanzoai/resources/assistants.rbi index 8c41beb7..69b61acc 100644 --- a/rbi/lib/hanzoai/resources/assistants.rbi +++ b/rbi/lib/hanzoai/resources/assistants.rbi @@ -5,8 +5,8 @@ module Hanzoai class Assistants # Create assistant # - # API Reference docs - - # https://platform.openai.com/docs/api-reference/assistants/createAssistant + # API Reference docs - + # https://platform.openai.com/docs/api-reference/assistants/createAssistant sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) @@ -15,8 +15,8 @@ module Hanzoai # Returns a list of assistants. # - # API Reference docs - - # https://platform.openai.com/docs/api-reference/assistants/listAssistants + # API Reference docs - + # https://platform.openai.com/docs/api-reference/assistants/listAssistants sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) @@ -25,8 +25,8 @@ module Hanzoai # Delete assistant # - # API Reference docs - - # https://platform.openai.com/docs/api-reference/assistants/createAssistant + # API Reference docs - + # https://platform.openai.com/docs/api-reference/assistants/createAssistant sig do params( assistant_id: String, diff --git a/rbi/lib/hanzoai/resources/audio/speech.rbi b/rbi/lib/hanzoai/resources/audio/speech.rbi index c3a14edc..cccbfbd2 100644 --- a/rbi/lib/hanzoai/resources/audio/speech.rbi +++ b/rbi/lib/hanzoai/resources/audio/speech.rbi @@ -6,7 +6,7 @@ module Hanzoai class Speech # Same params as: # - # https://platform.openai.com/docs/api-reference/audio/createSpeech + # https://platform.openai.com/docs/api-reference/audio/createSpeech sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi index 5d9cf1de..30869f26 100644 --- a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi +++ b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi @@ -6,7 +6,7 @@ module Hanzoai class Transcriptions # Same params as: # - # https://platform.openai.com/docs/api-reference/audio/createTranscription?lang=curl + # https://platform.openai.com/docs/api-reference/audio/createTranscription?lang=curl sig do params( file: T.any(IO, StringIO), diff --git a/rbi/lib/hanzoai/resources/azure.rbi b/rbi/lib/hanzoai/resources/azure.rbi index 1663f274..bd14f005 100644 --- a/rbi/lib/hanzoai/resources/azure.rbi +++ b/rbi/lib/hanzoai/resources/azure.rbi @@ -5,7 +5,7 @@ module Hanzoai class Azure # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` sig do params( endpoint: String, @@ -17,7 +17,7 @@ module Hanzoai # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` sig do params( endpoint: String, @@ -29,7 +29,7 @@ module Hanzoai # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` sig do params( endpoint: String, @@ -41,7 +41,7 @@ module Hanzoai # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` sig do params( endpoint: String, @@ -53,7 +53,7 @@ module Hanzoai # Call any azure endpoint using the proxy. # - # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` sig do params( endpoint: String, diff --git a/rbi/lib/hanzoai/resources/batches.rbi b/rbi/lib/hanzoai/resources/batches.rbi index 89677f97..f2921cc7 100644 --- a/rbi/lib/hanzoai/resources/batches.rbi +++ b/rbi/lib/hanzoai/resources/batches.rbi @@ -7,18 +7,18 @@ module Hanzoai attr_reader :cancel # Create large batches of API requests for asynchronous processing. This is the - # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch - # - # Example Curl - # - # ``` - # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ - # "input_file_id": "file-abc123", - # "endpoint": "/v1/chat/completions", - # "completion_window": "24h" - # }' - # ``` + # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch + # + # Example Curl + # + # ``` + # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ + # "input_file_id": "file-abc123", + # "endpoint": "/v1/chat/completions", + # "completion_window": "24h" + # }' + # ``` sig do params( provider: T.nilable(String), @@ -29,14 +29,14 @@ module Hanzoai def create(provider: nil, request_options: {}); end # Retrieves a batch. This is the equivalent of GET - # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/retrieve + # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/retrieve # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` sig do params( batch_id: String, @@ -52,13 +52,13 @@ module Hanzoai request_options: {} ); end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports - # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list + # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` sig do params( after: T.nilable(String), @@ -71,17 +71,17 @@ module Hanzoai def list(after: nil, limit: nil, provider: nil, request_options: {}); end # Cancel a batch. This is the equivalent of POST - # https://api.openai.com/v1/batches/{batch_id}/cancel + # https://api.openai.com/v1/batches/{batch_id}/cancel # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/cancel + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/cancel # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST # - # ``` + # ``` sig do params( batch_id: String, @@ -93,18 +93,18 @@ module Hanzoai def cancel_with_provider(batch_id, provider:, request_options: {}); end # Create large batches of API requests for asynchronous processing. This is the - # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch - # - # Example Curl - # - # ``` - # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ - # "input_file_id": "file-abc123", - # "endpoint": "/v1/chat/completions", - # "completion_window": "24h" - # }' - # ``` + # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch + # + # Example Curl + # + # ``` + # curl http://localhost:4000/v1/batches -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -d '{ + # "input_file_id": "file-abc123", + # "endpoint": "/v1/chat/completions", + # "completion_window": "24h" + # }' + # ``` sig do params( provider: String, @@ -115,13 +115,13 @@ module Hanzoai def create_with_provider(provider, request_options: {}); end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports - # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list + # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` sig do params( provider: String, @@ -134,14 +134,14 @@ module Hanzoai def list_with_provider(provider, after: nil, limit: nil, request_options: {}); end # Retrieves a batch. This is the equivalent of GET - # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/retrieve + # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/retrieve # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` sig do params( batch_id: String, diff --git a/rbi/lib/hanzoai/resources/batches/cancel.rbi b/rbi/lib/hanzoai/resources/batches/cancel.rbi index 3436dbbd..59d8ec93 100644 --- a/rbi/lib/hanzoai/resources/batches/cancel.rbi +++ b/rbi/lib/hanzoai/resources/batches/cancel.rbi @@ -5,17 +5,17 @@ module Hanzoai class Batches class Cancel # Cancel a batch. This is the equivalent of POST - # https://api.openai.com/v1/batches/{batch_id}/cancel + # https://api.openai.com/v1/batches/{batch_id}/cancel # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/batch/cancel + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/batch/cancel # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST + # ``` + # curl http://localhost:4000/v1/batches/batch_abc123/cancel -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" -X POST # - # ``` + # ``` sig do params( batch_id: String, diff --git a/rbi/lib/hanzoai/resources/budget.rbi b/rbi/lib/hanzoai/resources/budget.rbi index 79637d57..63ac1df2 100644 --- a/rbi/lib/hanzoai/resources/budget.rbi +++ b/rbi/lib/hanzoai/resources/budget.rbi @@ -5,20 +5,20 @@ module Hanzoai class Budget # Create a new budget object. Can apply this to teams, orgs, end-users, keys. # - # Parameters: + # Parameters: # - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - budget_id: Optional[str] - The id of the budget. If not provided, a new id - # will be generated. - # - max_budget: Optional[float] - The max budget for the budget. - # - soft_budget: Optional[float] - The soft budget for the budget. - # - max_parallel_requests: Optional[int] - The max number of parallel requests for - # the budget. - # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. - # - rpm_limit: Optional[int] - The requests per minute limit for the budget. - # - model_max_budget: Optional[dict] - Specify max budget for a given model. - # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", - # "tpm_limit": 100000, "rpm_limit": 100000}} + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - budget_id: Optional[str] - The id of the budget. If not provided, a new id + # will be generated. + # - max_budget: Optional[float] - The max budget for the budget. + # - soft_budget: Optional[float] - The soft budget for the budget. + # - max_parallel_requests: Optional[int] - The max number of parallel requests for + # the budget. + # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. + # - rpm_limit: Optional[int] - The requests per minute limit for the budget. + # - model_max_budget: Optional[dict] - Specify max budget for a given model. + # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", + # "tpm_limit": 100000, "rpm_limit": 100000}} sig do params( budget_duration: T.nilable(String), @@ -43,7 +43,7 @@ module Hanzoai # Max concurrent requests allowed for this budget id. max_parallel_requests: nil, # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', - # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) model_max_budget: nil, # Max requests per minute, allowed for this budget id. rpm_limit: nil, @@ -55,20 +55,20 @@ module Hanzoai ); end # Update an existing budget object. # - # Parameters: + # Parameters: # - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - budget_id: Optional[str] - The id of the budget. If not provided, a new id - # will be generated. - # - max_budget: Optional[float] - The max budget for the budget. - # - soft_budget: Optional[float] - The soft budget for the budget. - # - max_parallel_requests: Optional[int] - The max number of parallel requests for - # the budget. - # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. - # - rpm_limit: Optional[int] - The requests per minute limit for the budget. - # - model_max_budget: Optional[dict] - Specify max budget for a given model. - # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", - # "tpm_limit": 100000, "rpm_limit": 100000}} + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - budget_id: Optional[str] - The id of the budget. If not provided, a new id + # will be generated. + # - max_budget: Optional[float] - The max budget for the budget. + # - soft_budget: Optional[float] - The soft budget for the budget. + # - max_parallel_requests: Optional[int] - The max number of parallel requests for + # the budget. + # - tpm_limit: Optional[int] - The tokens per minute limit for the budget. + # - rpm_limit: Optional[int] - The requests per minute limit for the budget. + # - model_max_budget: Optional[dict] - Specify max budget for a given model. + # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", + # "tpm_limit": 100000, "rpm_limit": 100000}} sig do params( budget_duration: T.nilable(String), @@ -93,7 +93,7 @@ module Hanzoai # Max concurrent requests allowed for this budget id. max_parallel_requests: nil, # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', - # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) model_max_budget: nil, # Max requests per minute, allowed for this budget id. rpm_limit: nil, @@ -112,9 +112,9 @@ module Hanzoai # Delete budget # - # Parameters: + # Parameters: # - # - id: str - The budget id to delete + # - id: str - The budget id to delete sig do params( id: String, @@ -131,9 +131,9 @@ module Hanzoai # Get the budget id specific information # - # Parameters: + # Parameters: # - # - budgets: List[str] - The list of budget ids to get information for + # - budgets: List[str] - The list of budget ids to get information for sig do params( budgets: T::Array[String], @@ -144,13 +144,13 @@ module Hanzoai def info(budgets:, request_options: {}); end # Get list of configurable params + current value for a budget item + description - # of each field + # of each field # - # Used on Admin UI. + # Used on Admin UI. # - # Query Parameters: + # Query Parameters: # - # - budget_id: str - The budget id to get information for + # - budget_id: str - The budget id to get information for sig do params( budget_id: String, diff --git a/rbi/lib/hanzoai/resources/cache.rbi b/rbi/lib/hanzoai/resources/cache.rbi index d4075b8c..c243418a 100644 --- a/rbi/lib/hanzoai/resources/cache.rbi +++ b/rbi/lib/hanzoai/resources/cache.rbi @@ -7,16 +7,16 @@ module Hanzoai attr_reader :redis # Endpoint for deleting a key from the cache. All responses from llm proxy have - # `x-llm-cache-key` in the headers + # `x-llm-cache-key` in the headers # - # Parameters: + # Parameters: # - # - **keys**: _Optional[List[str]]_ - A list of keys to delete from the cache. - # Example {"keys": ["key1", "key2"]} + # - **keys**: _Optional[List[str]]_ - A list of keys to delete from the cache. + # Example {"keys": ["key1", "key2"]} # - # ```shell - # curl -X POST "http://0.0.0.0:4000/cache/delete" -H "Authorization: Bearer sk-1234" -d '{"keys": ["key1", "key2"]}' - # ``` + # ```shell + # curl -X POST "http://0.0.0.0:4000/cache/delete" -H "Authorization: Bearer sk-1234" -d '{"keys": ["key1", "key2"]}' + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) @@ -24,15 +24,15 @@ module Hanzoai def delete(request_options: {}); end # A function to flush all items from the cache. (All items will be deleted from - # the cache with this) Raises HTTPException if the cache is not initialized or if - # the cache type does not support flushing. Returns a dictionary with the status - # of the operation. + # the cache with this) Raises HTTPException if the cache is not initialized or if + # the cache type does not support flushing. Returns a dictionary with the status + # of the operation. # - # Usage: + # Usage: # - # ``` - # curl -X POST http://0.0.0.0:4000/cache/flushall -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X POST http://0.0.0.0:4000/cache/flushall -H "Authorization: Bearer sk-1234" + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/chat/completions.rbi b/rbi/lib/hanzoai/resources/chat/completions.rbi index d966ae69..6a7b4573 100644 --- a/rbi/lib/hanzoai/resources/chat/completions.rbi +++ b/rbi/lib/hanzoai/resources/chat/completions.rbi @@ -5,22 +5,22 @@ module Hanzoai class Chat class Completions # Follows the exact same API spec as - # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` + # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` # - # ```bash - # curl -X POST http://localhost:4000/v1/chat/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-4o", - # "messages": [ - # { - # "role": "user", - # "content": "Hello!" - # } - # ] - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/chat/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-4o", + # "messages": [ + # { + # "role": "user", + # "content": "Hello!" + # } + # ] + # }' + # ``` sig do params( model: T.nilable(String), diff --git a/rbi/lib/hanzoai/resources/completions.rbi b/rbi/lib/hanzoai/resources/completions.rbi index 43e2bc38..09d76be3 100644 --- a/rbi/lib/hanzoai/resources/completions.rbi +++ b/rbi/lib/hanzoai/resources/completions.rbi @@ -4,19 +4,19 @@ module Hanzoai module Resources class Completions # Follows the exact same API spec as - # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` + # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` # - # ```bash - # curl -X POST http://localhost:4000/v1/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-3.5-turbo-instruct", - # "prompt": "Once upon a time", - # "max_tokens": 50, - # "temperature": 0.7 - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-3.5-turbo-instruct", + # "prompt": "Once upon a time", + # "max_tokens": 50, + # "temperature": 0.7 + # }' + # ``` sig do params( model: T.nilable(String), diff --git a/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi b/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi index 005c131f..f3e576b1 100644 --- a/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi +++ b/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi @@ -16,7 +16,7 @@ module Hanzoai end def create( # Key-value pairs of headers to be forwarded with the request. You can set any key - # value pair here and it will be forwarded to your target endpoint + # value pair here and it will be forwarded to your target endpoint headers:, # The route to be added to the LLM Proxy Server. path:, @@ -36,7 +36,7 @@ module Hanzoai # GET configured pass through endpoint. # - # If no endpoint_id given, return all configured endpoints. + # If no endpoint_id given, return all configured endpoints. sig do params( endpoint_id: T.nilable(String), @@ -48,7 +48,7 @@ module Hanzoai # Delete a pass-through endpoint # - # Returns - the deleted endpoint + # Returns - the deleted endpoint sig do params( endpoint_id: String, diff --git a/rbi/lib/hanzoai/resources/credentials.rbi b/rbi/lib/hanzoai/resources/credentials.rbi index f83e895e..eb41da9f 100644 --- a/rbi/lib/hanzoai/resources/credentials.rbi +++ b/rbi/lib/hanzoai/resources/credentials.rbi @@ -4,7 +4,7 @@ module Hanzoai module Resources class Credentials # [BETA] endpoint. This might change unexpectedly. Stores credential in DB. - # Reloads credentials in memory. + # Reloads credentials in memory. sig do params( credential_info: T.anything, diff --git a/rbi/lib/hanzoai/resources/customer.rbi b/rbi/lib/hanzoai/resources/customer.rbi index 769daf34..cc259f11 100644 --- a/rbi/lib/hanzoai/resources/customer.rbi +++ b/rbi/lib/hanzoai/resources/customer.rbi @@ -5,55 +5,55 @@ module Hanzoai class Customer # Allow creating a new Customer # - # Parameters: + # Parameters: # - # - user_id: str - The unique identifier for the user. - # - alias: Optional[str] - A human-friendly alias for the user. - # - blocked: bool - Flag to allow or disallow requests for this end-user. Default - # is False. - # - max_budget: Optional[float] - The maximum budget allocated to the user. Either - # 'max_budget' or 'budget_id' should be provided, not both. - # - budget_id: Optional[str] - The identifier for an existing budget allocated to - # the user. Either 'max_budget' or 'budget_id' should be provided, not both. - # - allowed_model_region: Optional[Union[Literal["eu"], Literal["us"]]] - Require - # all user requests to use models in this specific region. - # - default_model: Optional[str] - If no equivalent model in the allowed region, - # default all requests to this model. - # - metadata: Optional[dict] = Metadata for customer, store information for - # customer. Example metadata = {"data_training_opt_out": True} - # - budget_duration: Optional[str] - Budget is reset at the end of specified - # duration. If not set, budget is never reset. You can set duration as seconds - # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - # - tpm_limit: Optional[int] - [Not Implemented Yet] Specify tpm limit for a given - # customer (Tokens per minute) - # - rpm_limit: Optional[int] - [Not Implemented Yet] Specify rpm limit for a given - # customer (Requests per minute) - # - model_max_budget: Optional[dict] - [Not Implemented Yet] Specify max budget - # for a given model. Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, - # "budget_duration": "1d"}} - # - max_parallel_requests: Optional[int] - [Not Implemented Yet] Specify max - # parallel requests for a given customer. - # - soft_budget: Optional[float] - [Not Implemented Yet] Get alerts when customer - # crosses given budget, doesn't block requests. + # - user_id: str - The unique identifier for the user. + # - alias: Optional[str] - A human-friendly alias for the user. + # - blocked: bool - Flag to allow or disallow requests for this end-user. Default + # is False. + # - max_budget: Optional[float] - The maximum budget allocated to the user. Either + # 'max_budget' or 'budget_id' should be provided, not both. + # - budget_id: Optional[str] - The identifier for an existing budget allocated to + # the user. Either 'max_budget' or 'budget_id' should be provided, not both. + # - allowed_model_region: Optional[Union[Literal["eu"], Literal["us"]]] - Require + # all user requests to use models in this specific region. + # - default_model: Optional[str] - If no equivalent model in the allowed region, + # default all requests to this model. + # - metadata: Optional[dict] = Metadata for customer, store information for + # customer. Example metadata = {"data_training_opt_out": True} + # - budget_duration: Optional[str] - Budget is reset at the end of specified + # duration. If not set, budget is never reset. You can set duration as seconds + # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). + # - tpm_limit: Optional[int] - [Not Implemented Yet] Specify tpm limit for a given + # customer (Tokens per minute) + # - rpm_limit: Optional[int] - [Not Implemented Yet] Specify rpm limit for a given + # customer (Requests per minute) + # - model_max_budget: Optional[dict] - [Not Implemented Yet] Specify max budget + # for a given model. Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, + # "budget_duration": "1d"}} + # - max_parallel_requests: Optional[int] - [Not Implemented Yet] Specify max + # parallel requests for a given customer. + # - soft_budget: Optional[float] - [Not Implemented Yet] Get alerts when customer + # crosses given budget, doesn't block requests. # - # - Allow specifying allowed regions - # - Allow specifying default model + # - Allow specifying allowed regions + # - Allow specifying default model # - # Example curl: + # Example curl: # - # ``` - # curl --location 'http://0.0.0.0:4000/customer/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id" : "z-jaff-3", - # "allowed_region": "eu", - # "budget_id": "free_tier", - # "default_model": "azure/gpt-3.5-turbo-eu" <- all calls from this user, use this model? - # }' + # ``` + # curl --location 'http://0.0.0.0:4000/customer/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_id" : "z-jaff-3", + # "allowed_region": "eu", + # "budget_id": "free_tier", + # "default_model": "azure/gpt-3.5-turbo-eu" <- all calls from this user, use this model? + # }' # - # # return end-user object - # ``` + # # return end-user object + # ``` # - # NOTE: This used to be called `/end_user/new`, we will still be maintaining - # compatibility for /end_user/XXX for these endpoints + # NOTE: This used to be called `/end_user/new`, we will still be maintaining + # compatibility for /end_user/XXX for these endpoints sig do params( user_id: String, @@ -89,7 +89,7 @@ module Hanzoai # Max concurrent requests allowed for this budget id. max_parallel_requests: nil, # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', - # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) model_max_budget: nil, # Max requests per minute, allowed for this budget id. rpm_limit: nil, @@ -101,28 +101,28 @@ module Hanzoai ); end # Example curl # - # Parameters: + # Parameters: # - # - user_id: str - # - alias: Optional[str] = None # human-friendly alias - # - blocked: bool = False # allow/disallow requests for this end-user - # - max_budget: Optional[float] = None - # - budget_id: Optional[str] = None # give either a budget_id or max_budget - # - allowed_model_region: Optional[AllowedModelRegion] = ( None # require all user - # requests to use models in this specific region ) - # - default_model: Optional[str] = ( None # if no equivalent model in allowed - # region - default all requests to this model ) + # - user_id: str + # - alias: Optional[str] = None # human-friendly alias + # - blocked: bool = False # allow/disallow requests for this end-user + # - max_budget: Optional[float] = None + # - budget_id: Optional[str] = None # give either a budget_id or max_budget + # - allowed_model_region: Optional[AllowedModelRegion] = ( None # require all user + # requests to use models in this specific region ) + # - default_model: Optional[str] = ( None # if no equivalent model in allowed + # region - default all requests to this model ) # - # Example curl: + # Example curl: # - # ``` - # curl --location 'http://0.0.0.0:4000/customer/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", - # "budget_id": "paid_tier" - # }' + # ``` + # curl --location 'http://0.0.0.0:4000/customer/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_id": "test-llm-user-4", + # "budget_id": "paid_tier" + # }' # - # See below for all params - # ``` + # See below for all params + # ``` sig do params( user_id: String, @@ -148,11 +148,11 @@ module Hanzoai ); end # [Admin-only] List all available customers # - # Example curl: + # Example curl: # - # ``` - # curl --location --request GET 'http://0.0.0.0:4000/customer/list' --header 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl --location --request GET 'http://0.0.0.0:4000/customer/list' --header 'Authorization: Bearer sk-1234' + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T::Array[Hanzoai::Models::CustomerListResponseItem]) @@ -161,19 +161,19 @@ module Hanzoai # Delete multiple end-users. # - # Parameters: + # Parameters: # - # - user_ids (List[str], required): The unique `user_id`s for the users to delete + # - user_ids (List[str], required): The unique `user_id`s for the users to delete # - # Example curl: + # Example curl: # - # ``` - # curl --location 'http://0.0.0.0:4000/customer/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_ids" :["z-jaff-5"] - # }' + # ``` + # curl --location 'http://0.0.0.0:4000/customer/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_ids" :["z-jaff-5"] + # }' # - # See below for all params - # ``` + # See below for all params + # ``` sig do params( user_ids: T::Array[String], @@ -185,20 +185,20 @@ module Hanzoai # [BETA] Reject calls with this end-user id # - # Parameters: + # Parameters: # - # - user_ids (List[str], required): The unique `user_id`s for the users to block + # - user_ids (List[str], required): The unique `user_id`s for the users to block # - # (any /chat/completion call with this user={end-user-id} param, will be - # rejected.) + # (any /chat/completion call with this user={end-user-id} param, will be + # rejected.) # - # ``` - # curl -X POST "http://0.0.0.0:8000/user/block" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "user_ids": [, ...] - # }' - # ``` + # ``` + # curl -X POST "http://0.0.0.0:8000/user/block" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "user_ids": [, ...] + # }' + # ``` sig do params( user_ids: T::Array[String], @@ -209,17 +209,17 @@ module Hanzoai def block(user_ids:, request_options: {}); end # Get information about an end-user. An `end_user` is a customer (external user) - # of the proxy. + # of the proxy. # - # Parameters: + # Parameters: # - # - end_user_id (str, required): The unique identifier for the end-user + # - end_user_id (str, required): The unique identifier for the end-user # - # Example curl: + # Example curl: # - # ``` - # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' + # ``` sig do params( end_user_id: String, @@ -234,15 +234,15 @@ module Hanzoai ); end # [BETA] Unblock calls with this user id # - # Example + # Example # - # ``` - # curl -X POST "http://0.0.0.0:8000/user/unblock" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "user_ids": [, ...] - # }' - # ``` + # ``` + # curl -X POST "http://0.0.0.0:8000/user/unblock" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "user_ids": [, ...] + # }' + # ``` sig do params( user_ids: T::Array[String], diff --git a/rbi/lib/hanzoai/resources/embeddings.rbi b/rbi/lib/hanzoai/resources/embeddings.rbi index 7f8e5b03..839ccc59 100644 --- a/rbi/lib/hanzoai/resources/embeddings.rbi +++ b/rbi/lib/hanzoai/resources/embeddings.rbi @@ -4,17 +4,17 @@ module Hanzoai module Resources class Embeddings # Follows the exact same API spec as - # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` + # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` # - # ```bash - # curl -X POST http://localhost:4000/v1/embeddings - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "text-embedding-ada-002", - # "input": "The quick brown fox jumps over the lazy dog" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/embeddings + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "text-embedding-ada-002", + # "input": "The quick brown fox jumps over the lazy dog" + # }' + # ``` sig do params( model: T.nilable(String), diff --git a/rbi/lib/hanzoai/resources/engines.rbi b/rbi/lib/hanzoai/resources/engines.rbi index 20a22c57..67f16866 100644 --- a/rbi/lib/hanzoai/resources/engines.rbi +++ b/rbi/lib/hanzoai/resources/engines.rbi @@ -7,19 +7,19 @@ module Hanzoai attr_reader :chat # Follows the exact same API spec as - # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` + # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` # - # ```bash - # curl -X POST http://localhost:4000/v1/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-3.5-turbo-instruct", - # "prompt": "Once upon a time", - # "max_tokens": 50, - # "temperature": 0.7 - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-3.5-turbo-instruct", + # "prompt": "Once upon a time", + # "max_tokens": 50, + # "temperature": 0.7 + # }' + # ``` sig do params( model: String, @@ -30,17 +30,17 @@ module Hanzoai def complete(model, request_options: {}); end # Follows the exact same API spec as - # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` + # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` # - # ```bash - # curl -X POST http://localhost:4000/v1/embeddings - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "text-embedding-ada-002", - # "input": "The quick brown fox jumps over the lazy dog" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/embeddings + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "text-embedding-ada-002", + # "input": "The quick brown fox jumps over the lazy dog" + # }' + # ``` sig do params( model: String, diff --git a/rbi/lib/hanzoai/resources/engines/chat.rbi b/rbi/lib/hanzoai/resources/engines/chat.rbi index 7296ab5e..0b88247c 100644 --- a/rbi/lib/hanzoai/resources/engines/chat.rbi +++ b/rbi/lib/hanzoai/resources/engines/chat.rbi @@ -5,22 +5,22 @@ module Hanzoai class Engines class Chat # Follows the exact same API spec as - # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` + # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` # - # ```bash - # curl -X POST http://localhost:4000/v1/chat/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-4o", - # "messages": [ - # { - # "role": "user", - # "content": "Hello!" - # } - # ] - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/chat/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-4o", + # "messages": [ + # { + # "role": "user", + # "content": "Hello!" + # } + # ] + # }' + # ``` sig do params( model: String, diff --git a/rbi/lib/hanzoai/resources/files.rbi b/rbi/lib/hanzoai/resources/files.rbi index 64a1b78e..465efb60 100644 --- a/rbi/lib/hanzoai/resources/files.rbi +++ b/rbi/lib/hanzoai/resources/files.rbi @@ -7,17 +7,17 @@ module Hanzoai attr_reader :content # Upload a file that can be used across - Assistants API, Batch API This is the - # equivalent of POST https://api.openai.com/v1/files + # equivalent of POST https://api.openai.com/v1/files # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/create + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/create # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" -F purpose="batch" -F file="@mydata.jsonl" + # ``` + # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" -F purpose="batch" -F file="@mydata.jsonl" # - # ``` + # ``` sig do params( provider: String, @@ -31,18 +31,18 @@ module Hanzoai def create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}); end # Returns information about a specific file. that can be used across - Assistants - # API, Batch API This is the equivalent of GET - # https://api.openai.com/v1/files/{file_id} + # API, Batch API This is the equivalent of GET + # https://api.openai.com/v1/files/{file_id} # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/retrieve + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/retrieve # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files/file-abc123 -H "Authorization: Bearer sk-1234" + # ``` + # curl http://localhost:4000/v1/files/file-abc123 -H "Authorization: Bearer sk-1234" # - # ``` + # ``` sig do params( file_id: String, @@ -54,17 +54,17 @@ module Hanzoai def retrieve(file_id, provider:, request_options: {}); end # Returns information about a specific file. that can be used across - Assistants - # API, Batch API This is the equivalent of GET https://api.openai.com/v1/files/ + # API, Batch API This is the equivalent of GET https://api.openai.com/v1/files/ # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/list + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/list # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" + # ``` + # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" # - # ``` + # ``` sig do params( provider: String, @@ -76,17 +76,17 @@ module Hanzoai def list(provider, purpose: nil, request_options: {}); end # Deletes a specified file. that can be used across - Assistants API, Batch API - # This is the equivalent of DELETE https://api.openai.com/v1/files/{file_id} + # This is the equivalent of DELETE https://api.openai.com/v1/files/{file_id} # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/delete + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/delete # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files/file-abc123 -X DELETE -H "Authorization: Bearer $OPENAI_API_KEY" + # ``` + # curl http://localhost:4000/v1/files/file-abc123 -X DELETE -H "Authorization: Bearer $OPENAI_API_KEY" # - # ``` + # ``` sig do params( file_id: String, diff --git a/rbi/lib/hanzoai/resources/files/content.rbi b/rbi/lib/hanzoai/resources/files/content.rbi index 0c167da3..9227ee01 100644 --- a/rbi/lib/hanzoai/resources/files/content.rbi +++ b/rbi/lib/hanzoai/resources/files/content.rbi @@ -5,18 +5,18 @@ module Hanzoai class Files class Content # Returns information about a specific file. that can be used across - Assistants - # API, Batch API This is the equivalent of GET - # https://api.openai.com/v1/files/{file_id}/content + # API, Batch API This is the equivalent of GET + # https://api.openai.com/v1/files/{file_id}/content # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/files/retrieve-contents + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/files/retrieve-contents # - # Example Curl + # Example Curl # - # ``` - # curl http://localhost:4000/v1/files/file-abc123/content -H "Authorization: Bearer sk-1234" + # ``` + # curl http://localhost:4000/v1/files/file-abc123/content -H "Authorization: Bearer sk-1234" # - # ``` + # ``` sig do params( file_id: String, diff --git a/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi b/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi index f5efdae5..f10ee53b 100644 --- a/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi +++ b/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi @@ -8,23 +8,23 @@ module Hanzoai attr_reader :cancel # Creates a fine-tuning job which begins the process of creating a new model from - # a given dataset. This is the equivalent of POST - # https://api.openai.com/v1/fine_tuning/jobs + # a given dataset. This is the equivalent of POST + # https://api.openai.com/v1/fine_tuning/jobs # - # Supports Identical Params as: - # https://platform.openai.com/docs/api-reference/fine-tuning/create + # Supports Identical Params as: + # https://platform.openai.com/docs/api-reference/fine-tuning/create # - # Example Curl: + # Example Curl: # - # ``` - # curl http://localhost:4000/v1/fine_tuning/jobs -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ - # "model": "gpt-3.5-turbo", - # "training_file": "file-abc123", - # "hyperparameters": { - # "n_epochs": 4 - # } - # }' - # ``` + # ``` + # curl http://localhost:4000/v1/fine_tuning/jobs -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "model": "gpt-3.5-turbo", + # "training_file": "file-abc123", + # "hyperparameters": { + # "n_epochs": 4 + # } + # }' + # ``` sig do params( custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, @@ -53,12 +53,12 @@ module Hanzoai request_options: {} ); end # Retrieves a fine-tuning job. This is the equivalent of GET - # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id} + # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id} # - # Supported Query Params: + # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider - # - `fine_tuning_job_id`: The ID of the fine-tuning job to retrieve. + # - `custom_llm_provider`: Name of the LLM provider + # - `fine_tuning_job_id`: The ID of the fine-tuning job to retrieve. sig do params( fine_tuning_job_id: String, @@ -70,13 +70,13 @@ module Hanzoai def retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}); end # Lists fine-tuning jobs for the organization. This is the equivalent of GET - # https://api.openai.com/v1/fine_tuning/jobs + # https://api.openai.com/v1/fine_tuning/jobs # - # Supported Query Params: + # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider - # - `after`: Identifier for the last job from the previous pagination request. - # - `limit`: Number of fine-tuning jobs to retrieve (default is 20). + # - `custom_llm_provider`: Name of the LLM provider + # - `after`: Identifier for the last job from the previous pagination request. + # - `limit`: Number of fine-tuning jobs to retrieve (default is 20). sig do params( custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, diff --git a/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi b/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi index 394cfd86..a6935f19 100644 --- a/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi +++ b/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi @@ -7,13 +7,13 @@ module Hanzoai class Cancel # Cancel a fine-tuning job. # - # This is the equivalent of POST - # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id}/cancel + # This is the equivalent of POST + # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id}/cancel # - # Supported Query Params: + # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider - # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. + # - `custom_llm_provider`: Name of the LLM provider + # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. sig do params( fine_tuning_job_id: String, diff --git a/rbi/lib/hanzoai/resources/global/spend.rbi b/rbi/lib/hanzoai/resources/global/spend.rbi index 97d2b60f..9efc5c1f 100644 --- a/rbi/lib/hanzoai/resources/global/spend.rbi +++ b/rbi/lib/hanzoai/resources/global/spend.rbi @@ -6,17 +6,17 @@ module Hanzoai class Spend # LLM Enterprise - View Spend Per Request Tag. Used by LLM UI # - # Example Request: + # Example Request: # - # ``` - # curl -X GET "http://0.0.0.0:4000/spend/tags" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/spend/tags" -H "Authorization: Bearer sk-1234" + # ``` # - # Spend with Start Date and End Date + # Spend with Start Date and End Date # - # ``` - # curl -X GET "http://0.0.0.0:4000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" + # ``` sig do params( end_date: T.nilable(String), @@ -37,12 +37,12 @@ module Hanzoai ); end # ADMIN ONLY / MASTER KEY Only Endpoint # - # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs + # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs # - # 1. LLM_SpendLogs will maintain the logs on spend, no data gets deleted from - # there - # 2. LLM_VerificationTokens spend will be set = 0 - # 3. LLM_TeamTable spend will be set = 0 + # 1. LLM_SpendLogs will maintain the logs on spend, no data gets deleted from + # there + # 2. LLM_VerificationTokens spend will be set = 0 + # 3. LLM_TeamTable spend will be set = 0 sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) @@ -50,11 +50,11 @@ module Hanzoai def reset(request_options: {}); end # Get Daily Spend per Team, based on specific startTime and endTime. Per team, - # view usage by each key, model [ { "group-by-day": "2024-05-10", "teams": [ { - # "team_name": "team-1" "spend": 10, "keys": [ "key": "1213", "usage": { - # "model-1": { "cost": 12.50, "input_tokens": 1000, "output_tokens": 5000, - # "requests": 100 }, "audio-modelname1": { "cost": 25.50, "seconds": 25, - # "requests": 50 }, } } ] ] } + # view usage by each key, model [ { "group-by-day": "2024-05-10", "teams": [ { + # "team_name": "team-1" "spend": 10, "keys": [ "key": "1213", "usage": { + # "model-1": { "cost": 12.50, "input_tokens": 1000, "output_tokens": 5000, + # "requests": 100 }, "audio-modelname1": { "cost": 25.50, "seconds": 25, + # "requests": 50 }, } } ] ] } sig do params( api_key: T.nilable(String), @@ -72,7 +72,7 @@ module Hanzoai # View spend for a specific api_key. Example api_key='sk-1234 api_key: nil, # View spend for a specific customer_id. Example customer_id='1234. Can be used in - # conjunction with team_id as well. + # conjunction with team_id as well. customer_id: nil, # Time till which to view spend end_date: nil, diff --git a/rbi/lib/hanzoai/resources/guardrails.rbi b/rbi/lib/hanzoai/resources/guardrails.rbi index 495cdbcf..82af53c0 100644 --- a/rbi/lib/hanzoai/resources/guardrails.rbi +++ b/rbi/lib/hanzoai/resources/guardrails.rbi @@ -5,38 +5,38 @@ module Hanzoai class Guardrails # List the guardrails that are available on the proxy server # - # 👉 [Guardrail docs](https://docs.hanzo.ai/docs/proxy/guardrails/quick_start) + # 👉 [Guardrail docs](https://docs.hanzo.ai/docs/proxy/guardrails/quick_start) # - # Example Request: + # Example Request: # - # ```bash - # curl -X GET "http://localhost:4000/guardrails/list" -H "Authorization: Bearer " - # ``` + # ```bash + # curl -X GET "http://localhost:4000/guardrails/list" -H "Authorization: Bearer " + # ``` # - # Example Response: + # Example Response: # - # ```json - # { - # "guardrails": [ - # { - # "guardrail_name": "bedrock-pre-guard", - # "guardrail_info": { - # "params": [ - # { - # "name": "toxicity_score", - # "type": "float", - # "description": "Score between 0-1 indicating content toxicity level" - # }, - # { - # "name": "pii_detection", - # "type": "boolean" - # } - # ] - # } + # ```json + # { + # "guardrails": [ + # { + # "guardrail_name": "bedrock-pre-guard", + # "guardrail_info": { + # "params": [ + # { + # "name": "toxicity_score", + # "type": "float", + # "description": "Score between 0-1 indicating content toxicity level" + # }, + # { + # "name": "pii_detection", + # "type": "boolean" + # } + # ] # } - # ] - # } - # ``` + # } + # ] + # } + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(Hanzoai::Models::GuardrailListResponse) diff --git a/rbi/lib/hanzoai/resources/health.rbi b/rbi/lib/hanzoai/resources/health.rbi index 3362e627..bbaf8574 100644 --- a/rbi/lib/hanzoai/resources/health.rbi +++ b/rbi/lib/hanzoai/resources/health.rbi @@ -5,19 +5,19 @@ module Hanzoai class Health # 🚨 USE `/health/liveliness` to health check the proxy 🚨 # - # See more 👉 https://docs.hanzo.ai/docs/proxy/health + # See more 👉 https://docs.hanzo.ai/docs/proxy/health # - # Check the health of all the endpoints in config.yaml + # Check the health of all the endpoints in config.yaml # - # To run health checks in the background, add this to config.yaml: + # To run health checks in the background, add this to config.yaml: # - # ``` - # general_settings: - # # ... other settings - # background_health_checks: True - # ``` + # ``` + # general_settings: + # # ... other settings + # background_health_checks: True + # ``` # - # else, the health checks will be run on models when /health is called. + # else, the health checks will be run on models when /health is called. sig do params( model: T.nilable(String), @@ -53,11 +53,11 @@ module Hanzoai # Use this admin-only endpoint to check if the service is healthy. # - # Example: + # Example: # - # ``` - # curl -L -X GET 'http://0.0.0.0:4000/health/services?service=datadog' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -L -X GET 'http://0.0.0.0:4000/health/services?service=datadog' -H 'Authorization: Bearer sk-1234' + # ``` sig do params( service: T.any(Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String), diff --git a/rbi/lib/hanzoai/resources/key.rbi b/rbi/lib/hanzoai/resources/key.rbi index 34cd430b..bce4155a 100644 --- a/rbi/lib/hanzoai/resources/key.rbi +++ b/rbi/lib/hanzoai/resources/key.rbi @@ -8,61 +8,61 @@ module Hanzoai # Update an existing API key's parameters. # - # Parameters: - # - # - key: str - The key to update - # - key_alias: Optional[str] - User-friendly key alias - # - user_id: Optional[str] - User ID associated with key - # - team_id: Optional[str] - Team ID associated with key - # - budget_id: Optional[str] - The budget id associated with the key. Created by - # calling `/budget/new`. - # - models: Optional[list] - Model_name's a user is allowed to call - # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) - # - enforced_params: Optional[List[str]] - List of enforced params for the key - # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - # - spend: Optional[float] - Amount spent by key - # - max_budget: Optional[float] - Max budget for key - # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets - # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - soft_budget: Optional[float] - [TODO] Soft budget limit (warning vs. hard - # stop). Will trigger a slack alert when this soft budget is reached. - # - max_parallel_requests: Optional[int] - Rate limit for parallel requests - # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", - # "app": "app2"} - # - tpm_limit: Optional[int] - Tokens per minute limit - # - rpm_limit: Optional[int] - Requests per minute limit - # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, - # "claude-v1": 200} - # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": 100000, - # "claude-v1": 200000} - # - allowed_cache_controls: Optional[list] - List of allowed cache control values - # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) - # - permissions: Optional[dict] - Key-specific permissions - # - send_invite_email: Optional[bool] - Send invite email to user_id - # - guardrails: Optional[List[str]] - List of active guardrails for the key - # - blocked: Optional[bool] - Whether the key is blocked - # - aliases: Optional[dict] - Model aliases for the key - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - # - config: Optional[dict] - [DEPRECATED PARAM] Key-specific config. - # - temp_budget_increase: Optional[float] - Temporary budget increase for the key - # (Enterprise only). - # - temp_budget_expiry: Optional[str] - Expiry time for the temporary budget - # increase (Enterprise only). - # - # Example: - # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "key": "sk-1234", - # "key_alias": "my-key", - # "user_id": "user-1234", - # "team_id": "team-1234", - # "max_budget": 100, - # "metadata": {"any_key": "any-val"}, - # }' - # ``` + # Parameters: + # + # - key: str - The key to update + # - key_alias: Optional[str] - User-friendly key alias + # - user_id: Optional[str] - User ID associated with key + # - team_id: Optional[str] - Team ID associated with key + # - budget_id: Optional[str] - The budget id associated with the key. Created by + # calling `/budget/new`. + # - models: Optional[list] - Model_name's a user is allowed to call + # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) + # - enforced_params: Optional[List[str]] - List of enforced params for the key + # (Enterprise only). + # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # - spend: Optional[float] - Amount spent by key + # - max_budget: Optional[float] - Max budget for key + # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets + # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - soft_budget: Optional[float] - [TODO] Soft budget limit (warning vs. hard + # stop). Will trigger a slack alert when this soft budget is reached. + # - max_parallel_requests: Optional[int] - Rate limit for parallel requests + # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", + # "app": "app2"} + # - tpm_limit: Optional[int] - Tokens per minute limit + # - rpm_limit: Optional[int] - Requests per minute limit + # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, + # "claude-v1": 200} + # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": 100000, + # "claude-v1": 200000} + # - allowed_cache_controls: Optional[list] - List of allowed cache control values + # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) + # - permissions: Optional[dict] - Key-specific permissions + # - send_invite_email: Optional[bool] - Send invite email to user_id + # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - blocked: Optional[bool] - Whether the key is blocked + # - aliases: Optional[dict] - Model aliases for the key - + # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # - config: Optional[dict] - [DEPRECATED PARAM] Key-specific config. + # - temp_budget_increase: Optional[float] - Temporary budget increase for the key + # (Enterprise only). + # - temp_budget_expiry: Optional[str] - Expiry time for the temporary budget + # increase (Enterprise only). + # + # Example: + # + # ```bash + # curl --location 'http://0.0.0.0:4000/key/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "key": "sk-1234", + # "key_alias": "my-key", + # "user_id": "user-1234", + # "team_id": "team-1234", + # "max_budget": 100, + # "metadata": {"any_key": "any-val"}, + # }' + # ``` sig do params( key: String, @@ -153,15 +153,15 @@ module Hanzoai # Body param: user_id: nil, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # List all keys for a given user / team / organization. # - # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, - # "current_page": int, "total_pages": int, } + # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, + # "current_page": int, "total_pages": int, } sig do params( include_team_keys: T::Boolean, @@ -197,29 +197,29 @@ module Hanzoai ); end # Delete a key from the key management system. # - # Parameters:: + # Parameters:: # - # - keys (List[str]): A list of keys or hashed keys to delete. Example {"keys": - # ["sk-QWrxEynunsNpV1zT48HIrw", - # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} - # - key_aliases (List[str]): A list of key aliases to delete. Can be passed - # instead of `keys`.Example {"key_aliases": ["alias1", "alias2"]} + # - keys (List[str]): A list of keys or hashed keys to delete. Example {"keys": + # ["sk-QWrxEynunsNpV1zT48HIrw", + # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} + # - key_aliases (List[str]): A list of key aliases to delete. Can be passed + # instead of `keys`.Example {"key_aliases": ["alias1", "alias2"]} # - # Returns: + # Returns: # - # - deleted_keys (List[str]): A list of deleted keys. Example {"deleted_keys": - # ["sk-QWrxEynunsNpV1zT48HIrw", - # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} + # - deleted_keys (List[str]): A list of deleted keys. Example {"deleted_keys": + # ["sk-QWrxEynunsNpV1zT48HIrw", + # "837e17519f44683334df5291321d97b8bf1098cd490e49e215f6fea935aa28be"]} # - # Example: + # Example: # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "keys": ["sk-QWrxEynunsNpV1zT48HIrw"] - # }' - # ``` + # ```bash + # curl --location 'http://0.0.0.0:4000/key/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "keys": ["sk-QWrxEynunsNpV1zT48HIrw"] + # }' + # ``` # - # Raises: HTTPException: If an error occurs during key deletion. + # Raises: HTTPException: If an error occurs during key deletion. sig do params( key_aliases: T.nilable(T::Array[String]), @@ -235,27 +235,27 @@ module Hanzoai # Body param: keys: nil, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # Block an Virtual key from making any requests. # - # Parameters: + # Parameters: # - # - key: str - The key to block. Can be either the unhashed key (sk-...) or the - # hashed key value + # - key: str - The key to block. Can be either the unhashed key (sk-...) or the + # hashed key value # - # Example: + # Example: # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" - # }' - # ``` + # ```bash + # curl --location 'http://0.0.0.0:4000/key/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" + # }' + # ``` # - # Note: This is an admin-only endpoint. Only proxy admins can block keys. + # Note: This is an admin-only endpoint. Only proxy admins can block keys. sig do params( key: String, @@ -268,50 +268,50 @@ module Hanzoai # Body param: key:, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # Check the health of the key # - # Checks: + # Checks: # - # - If key based logging is configured correctly - sends a test log + # - If key based logging is configured correctly - sends a test log # - # Usage + # Usage # - # Pass the key in the request header + # Pass the key in the request header # - # ```bash - # curl -X POST "http://localhost:4000/key/health" -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" - # ``` + # ```bash + # curl -X POST "http://localhost:4000/key/health" -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" + # ``` # - # Response when logging callbacks are setup correctly: + # Response when logging callbacks are setup correctly: # - # ```json - # { - # "key": "healthy", - # "logging_callbacks": { - # "callbacks": ["gcs_bucket"], - # "status": "healthy", - # "details": "No logger exceptions triggered, system is healthy. Manually check if logs were sent to ['gcs_bucket']" - # } + # ```json + # { + # "key": "healthy", + # "logging_callbacks": { + # "callbacks": ["gcs_bucket"], + # "status": "healthy", + # "details": "No logger exceptions triggered, system is healthy. Manually check if logs were sent to ['gcs_bucket']" # } - # ``` - # - # Response when logging callbacks are not setup correctly: - # - # ```json - # { - # "key": "unhealthy", - # "logging_callbacks": { - # "callbacks": ["gcs_bucket"], - # "status": "unhealthy", - # "details": "Logger exceptions triggered, system is unhealthy: Failed to load vertex credentials. Check to see if credentials containing partial/invalid information." - # } + # } + # ``` + # + # Response when logging callbacks are not setup correctly: + # + # ```json + # { + # "key": "unhealthy", + # "logging_callbacks": { + # "callbacks": ["gcs_bucket"], + # "status": "unhealthy", + # "details": "Logger exceptions triggered, system is unhealthy: Failed to load vertex credentials. Check to see if credentials containing partial/invalid information." # } - # ``` + # } + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(Hanzoai::Models::KeyCheckHealthResponse) @@ -320,87 +320,87 @@ module Hanzoai # Generate an API key based on the provided data. # - # Docs: https://docs.hanzo.ai/docs/proxy/virtual_keys - # - # Parameters: - # - # - duration: Optional[str] - Specify the length of time the token is valid for. - # You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days - # ("30d"). - # - key_alias: Optional[str] - User defined key alias - # - key: Optional[str] - User defined key value. If not set, a 16-digit unique - # sk-key is created for you. - # - team_id: Optional[str] - The team id of the key - # - user_id: Optional[str] - The user id of the key - # - budget_id: Optional[str] - The budget id associated with the key. Created by - # calling `/budget/new`. - # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, - # key is allowed to call all models) - # - aliases: Optional[dict] - Any alias mappings, on top of anything in the - # config.yaml model list. - - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models - # - config: Optional[dict] - any key-specific configs, overrides config in - # config.yaml - # - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by - # proxy whenever key is used. - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend - # - send_invite_email: Optional[bool] - Whether to send an invite email to the - # user_id, with the generate key - # - max_budget: Optional[float] - Specify max budget for a given key. - # - budget_duration: Optional[str] - Budget is reset at the end of specified - # duration. If not set, budget is never reset. You can set duration as seconds - # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - # - max_parallel_requests: Optional[int] - Rate limit a user based on the number - # of parallel requests. Raises 429 error, if user's parallel requests > x. - # - metadata: Optional[dict] - Metadata for key, store information for key. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } - # - guardrails: Optional[List[str]] - List of active guardrails for the key - # - permissions: Optional[dict] - key-specific permissions. Currently just used - # for turning off pii masking (if connected). Example - {"pii": false} - # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets - # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}}}. IF null or {} then - # no model specific budget. - # - model_rpm_limit: Optional[dict] - key-specific model rpm limit. Example - - # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model - # specific rpm limit. - # - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - - # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model - # specific tpm limit. - # - allowed_cache_controls: Optional[list] - List of allowed cache control values. - # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request - # - blocked: Optional[bool] - Whether the key is blocked. - # - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per - # minute) - # - tpm_limit: Optional[int] - Specify tpm limit for a given key (Tokens per - # minute) - # - soft_budget: Optional[float] - Specify soft budget for a given key. Will - # trigger a slack alert when this soft budget is reached. - # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - enforced_params: Optional[List[str]] - List of enforced params for the key - # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - # - # Examples: - # - # 1. Allow users to turn on/off pii masking - # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/generate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "permissions": {"allow_pii_controls": true} - # }' - # ``` - # - # Returns: - # - # - key: (str) The generated api key - # - expires: (datetime) Datetime object for when key expires. - # - user_id: (str) Unique user id - used for tracking spend across multiple keys - # for same user id. + # Docs: https://docs.hanzo.ai/docs/proxy/virtual_keys + # + # Parameters: + # + # - duration: Optional[str] - Specify the length of time the token is valid for. + # You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days + # ("30d"). + # - key_alias: Optional[str] - User defined key alias + # - key: Optional[str] - User defined key value. If not set, a 16-digit unique + # sk-key is created for you. + # - team_id: Optional[str] - The team id of the key + # - user_id: Optional[str] - The user id of the key + # - budget_id: Optional[str] - The budget id associated with the key. Created by + # calling `/budget/new`. + # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, + # key is allowed to call all models) + # - aliases: Optional[dict] - Any alias mappings, on top of anything in the + # config.yaml model list. - + # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models + # - config: Optional[dict] - any key-specific configs, overrides config in + # config.yaml + # - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by + # proxy whenever key is used. + # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend + # - send_invite_email: Optional[bool] - Whether to send an invite email to the + # user_id, with the generate key + # - max_budget: Optional[float] - Specify max budget for a given key. + # - budget_duration: Optional[str] - Budget is reset at the end of specified + # duration. If not set, budget is never reset. You can set duration as seconds + # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). + # - max_parallel_requests: Optional[int] - Rate limit a user based on the number + # of parallel requests. Raises 429 error, if user's parallel requests > x. + # - metadata: Optional[dict] - Metadata for key, store information for key. + # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" + # } + # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - permissions: Optional[dict] - key-specific permissions. Currently just used + # for turning off pii masking (if connected). Example - {"pii": false} + # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets + # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}}}. IF null or {} then + # no model specific budget. + # - model_rpm_limit: Optional[dict] - key-specific model rpm limit. Example - + # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model + # specific rpm limit. + # - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - + # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model + # specific tpm limit. + # - allowed_cache_controls: Optional[list] - List of allowed cache control values. + # Example - ["no-cache", "no-store"]. See all values - + # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request + # - blocked: Optional[bool] - Whether the key is blocked. + # - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per + # minute) + # - tpm_limit: Optional[int] - Specify tpm limit for a given key (Tokens per + # minute) + # - soft_budget: Optional[float] - Specify soft budget for a given key. Will + # trigger a slack alert when this soft budget is reached. + # - tags: Optional[List[str]] - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - enforced_params: Optional[List[str]] - List of enforced params for the key + # (Enterprise only). + # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # + # Examples: + # + # 1. Allow users to turn on/off pii masking + # + # ```bash + # curl --location 'http://0.0.0.0:4000/key/generate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "permissions": {"allow_pii_controls": true} + # }' + # ``` + # + # Returns: + # + # - key: (str) The generated api key + # - expires: (datetime) Datetime object for when key expires. + # - user_id: (str) Unique user id - used for tracking spend across multiple keys + # for same user id. sig do params( aliases: T.nilable(T.anything), @@ -491,61 +491,61 @@ module Hanzoai # Body param: user_id: nil, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # Regenerate an existing API key while optionally updating its parameters. # - # Parameters: - # - # - key: str (path parameter) - The key to regenerate - # - data: Optional[RegenerateKeyRequest] - Request body containing optional - # parameters to update - # - key_alias: Optional[str] - User-friendly key alias - # - user_id: Optional[str] - User ID associated with key - # - team_id: Optional[str] - Team ID associated with key - # - models: Optional[list] - Model_name's a user is allowed to call - # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) - # - spend: Optional[float] - Amount spent by key - # - max_budget: Optional[float] - Max budget for key - # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets - # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - # - soft_budget: Optional[float] - Soft budget limit (warning vs. hard stop). - # Will trigger a slack alert when this soft budget is reached. - # - max_parallel_requests: Optional[int] - Rate limit for parallel requests - # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", - # "app": "app2"} - # - tpm_limit: Optional[int] - Tokens per minute limit - # - rpm_limit: Optional[int] - Requests per minute limit - # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, - # "claude-v1": 200} - # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": - # 100000, "claude-v1": 200000} - # - allowed_cache_controls: Optional[list] - List of allowed cache control - # values - # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) - # - permissions: Optional[dict] - Key-specific permissions - # - guardrails: Optional[List[str]] - List of active guardrails for the key - # - blocked: Optional[bool] - Whether the key is blocked - # - # Returns: - # - # - GenerateKeyResponse containing the new key and its updated parameters - # - # Example: - # - # ```bash - # curl --location --request POST 'http://localhost:4000/key/sk-1234/regenerate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "max_budget": 100, - # "metadata": {"team": "core-infra"}, - # "models": ["gpt-4", "gpt-3.5-turbo"] - # }' - # ``` - # - # Note: This is an Enterprise feature. It requires a premium license to use. + # Parameters: + # + # - key: str (path parameter) - The key to regenerate + # - data: Optional[RegenerateKeyRequest] - Request body containing optional + # parameters to update + # - key_alias: Optional[str] - User-friendly key alias + # - user_id: Optional[str] - User ID associated with key + # - team_id: Optional[str] - Team ID associated with key + # - models: Optional[list] - Model_name's a user is allowed to call + # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) + # - spend: Optional[float] - Amount spent by key + # - max_budget: Optional[float] - Max budget for key + # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets + # {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} + # - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) + # - soft_budget: Optional[float] - Soft budget limit (warning vs. hard stop). + # Will trigger a slack alert when this soft budget is reached. + # - max_parallel_requests: Optional[int] - Rate limit for parallel requests + # - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", + # "app": "app2"} + # - tpm_limit: Optional[int] - Tokens per minute limit + # - rpm_limit: Optional[int] - Requests per minute limit + # - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, + # "claude-v1": 200} + # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": + # 100000, "claude-v1": 200000} + # - allowed_cache_controls: Optional[list] - List of allowed cache control + # values + # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) + # - permissions: Optional[dict] - Key-specific permissions + # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - blocked: Optional[bool] - Whether the key is blocked + # + # Returns: + # + # - GenerateKeyResponse containing the new key and its updated parameters + # + # Example: + # + # ```bash + # curl --location --request POST 'http://localhost:4000/key/sk-1234/regenerate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "max_budget": 100, + # "metadata": {"team": "core-infra"}, + # "models": ["gpt-4", "gpt-3.5-turbo"] + # }' + # ``` + # + # Note: This is an Enterprise feature. It requires a premium license to use. sig do params( path_key: String, @@ -642,28 +642,28 @@ module Hanzoai # Body param: user_id: nil, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # Retrieve information about a key. Parameters: key: Optional[str] = Query - # parameter representing the key in the request user_api_key_dict: UserAPIKeyAuth - # = Dependency representing the user's API key Returns: Dict containing the key - # and its associated information + # parameter representing the key in the request user_api_key_dict: UserAPIKeyAuth + # = Dependency representing the user's API key Returns: Dict containing the key + # and its associated information # - # Example Curl: + # Example Curl: # - # ``` - # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-02Wr4IAlN3NvPXvL5JVvDA" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-02Wr4IAlN3NvPXvL5JVvDA" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Curl - if no key is passed, it will use the Key Passed in Authorization - # Header + # Example Curl - if no key is passed, it will use the Key Passed in Authorization + # Header # - # ``` - # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" + # ``` sig do params( key: T.nilable(String), @@ -678,20 +678,20 @@ module Hanzoai ); end # Unblock a Virtual key to allow it to make requests again. # - # Parameters: + # Parameters: # - # - key: str - The key to unblock. Can be either the unhashed key (sk-...) or the - # hashed key value + # - key: str - The key to unblock. Can be either the unhashed key (sk-...) or the + # hashed key value # - # Example: + # Example: # - # ```bash - # curl --location 'http://0.0.0.0:4000/key/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" - # }' - # ``` + # ```bash + # curl --location 'http://0.0.0.0:4000/key/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "key": "sk-Fn8Ej39NxjAXrvpUGKghGw" + # }' + # ``` # - # Note: This is an admin-only endpoint. Only proxy admins can unblock keys. + # Note: This is an admin-only endpoint. Only proxy admins can unblock keys. sig do params( key: String, @@ -704,8 +704,8 @@ module Hanzoai # Body param: key:, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/resources/langfuse.rbi b/rbi/lib/hanzoai/resources/langfuse.rbi index d65e5522..a93b1fe4 100644 --- a/rbi/lib/hanzoai/resources/langfuse.rbi +++ b/rbi/lib/hanzoai/resources/langfuse.rbi @@ -5,7 +5,7 @@ module Hanzoai class Langfuse # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -17,7 +17,7 @@ module Hanzoai # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -29,7 +29,7 @@ module Hanzoai # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -41,7 +41,7 @@ module Hanzoai # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -53,7 +53,7 @@ module Hanzoai # Call Langfuse via LLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) sig do params( endpoint: String, diff --git a/rbi/lib/hanzoai/resources/model/info.rbi b/rbi/lib/hanzoai/resources/model/info.rbi index 95aa3c01..bb391288 100644 --- a/rbi/lib/hanzoai/resources/model/info.rbi +++ b/rbi/lib/hanzoai/resources/model/info.rbi @@ -5,35 +5,35 @@ module Hanzoai class Model class Info # Provides more info about each model in /models, including config.yaml - # descriptions (except api key and api base) + # descriptions (except api key and api base) # - # Parameters: llm_model_id: Optional[str] = None (this is the value of - # `x-llm-model-id` returned in response headers) + # Parameters: llm_model_id: Optional[str] = None (this is the value of + # `x-llm-model-id` returned in response headers) # - # - When llm_model_id is passed, it will return the info for that specific model - # - When llm_model_id is not passed, it will return the info for all models + # - When llm_model_id is passed, it will return the info for that specific model + # - When llm_model_id is not passed, it will return the info for all models # - # Returns: Returns a dictionary containing information about each model. + # Returns: Returns a dictionary containing information about each model. # - # Example Response: + # Example Response: # - # ```json - # { - # "data": [ - # { - # "model_name": "fake-openai-endpoint", - # "llm_params": { - # "api_base": "https://exampleopenaiendpoint-production.up.railway.app/", - # "model": "openai/fake" - # }, - # "model_info": { - # "id": "112f74fab24a7a5245d2ced3536dd8f5f9192c57ee6e332af0f0512e08bed5af", - # "db_model": false - # } + # ```json + # { + # "data": [ + # { + # "model_name": "fake-openai-endpoint", + # "llm_params": { + # "api_base": "https://exampleopenaiendpoint-production.up.railway.app/", + # "model": "openai/fake" + # }, + # "model_info": { + # "id": "112f74fab24a7a5245d2ced3536dd8f5f9192c57ee6e332af0f0512e08bed5af", + # "db_model": false # } - # ] - # } - # ``` + # } + # ] + # } + # ``` sig do params( llm_model_id: T.nilable(String), diff --git a/rbi/lib/hanzoai/resources/model/update.rbi b/rbi/lib/hanzoai/resources/model/update.rbi index 9f5587dd..5856e639 100644 --- a/rbi/lib/hanzoai/resources/model/update.rbi +++ b/rbi/lib/hanzoai/resources/model/update.rbi @@ -18,16 +18,16 @@ module Hanzoai # PATCH Endpoint for partial model updates. # - # Only updates the fields specified in the request while preserving other existing - # values. Follows proper PATCH semantics by only modifying provided fields. + # Only updates the fields specified in the request while preserving other existing + # values. Follows proper PATCH semantics by only modifying provided fields. # - # Args: model_id: The ID of the model to update patch_data: The fields to update - # and their new values user_api_key_dict: User authentication information + # Args: model_id: The ID of the model to update patch_data: The fields to update + # and their new values user_api_key_dict: User authentication information # - # Returns: Updated model information + # Returns: Updated model information # - # Raises: ProxyException: For various error conditions including authentication - # and database errors + # Raises: ProxyException: For various error conditions including authentication + # and database errors sig do params( model_id: String, diff --git a/rbi/lib/hanzoai/resources/model_group.rbi b/rbi/lib/hanzoai/resources/model_group.rbi index a965bc37..df24b594 100644 --- a/rbi/lib/hanzoai/resources/model_group.rbi +++ b/rbi/lib/hanzoai/resources/model_group.rbi @@ -4,147 +4,147 @@ module Hanzoai module Resources class ModelGroup # Get information about all the deployments on llm proxy, including config.yaml - # descriptions (except api key and api base) + # descriptions (except api key and api base) # - # - /model_group/info returns all model groups. End users of proxy should use - # /model_group/info since those models will be used for /chat/completions, - # /embeddings, etc. - # - /model_group/info?model_group=rerank-english-v3.0 returns all model groups for - # a specific model group (`model_name` in config.yaml) + # - /model_group/info returns all model groups. End users of proxy should use + # /model_group/info since those models will be used for /chat/completions, + # /embeddings, etc. + # - /model_group/info?model_group=rerank-english-v3.0 returns all model groups for + # a specific model group (`model_name` in config.yaml) # - # Example Request (All Models): + # Example Request (All Models): # - # ```shell - # curl -X 'GET' 'http://localhost:4000/model_group/info' -H 'accept: application/json' -H 'x-api-key: sk-1234' - # ``` + # ```shell + # curl -X 'GET' 'http://localhost:4000/model_group/info' -H 'accept: application/json' -H 'x-api-key: sk-1234' + # ``` # - # Example Request (Specific Model Group): + # Example Request (Specific Model Group): # - # ```shell - # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=rerank-english-v3.0' -H 'accept: application/json' -H 'Authorization: Bearer sk-1234' - # ``` + # ```shell + # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=rerank-english-v3.0' -H 'accept: application/json' -H 'Authorization: Bearer sk-1234' + # ``` # - # Example Request (Specific Wildcard Model Group): (e.g. `model_name: openai/*` on - # config.yaml) + # Example Request (Specific Wildcard Model Group): (e.g. `model_name: openai/*` on + # config.yaml) # - # ```shell - # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=openai/tts-1' - # -H 'accept: application/json' -H 'Authorization: Bearersk-1234' - # ``` + # ```shell + # curl -X 'GET' 'http://localhost:4000/model_group/info?model_group=openai/tts-1' + # -H 'accept: application/json' -H 'Authorization: Bearersk-1234' + # ``` # - # Learn how to use and set wildcard models - # [here](https://docs.hanzo.ai/docs/wildcard_routing) + # Learn how to use and set wildcard models + # [here](https://docs.hanzo.ai/docs/wildcard_routing) # - # Example Response: + # Example Response: # - # ```json - # { - # "data": [ - # { - # "model_group": "rerank-english-v3.0", - # "providers": ["cohere"], - # "max_input_tokens": null, - # "max_output_tokens": null, - # "input_cost_per_token": 0.0, - # "output_cost_per_token": 0.0, - # "mode": null, - # "tpm": null, - # "rpm": null, - # "supports_parallel_function_calling": false, - # "supports_vision": false, - # "supports_function_calling": false, - # "supported_openai_params": [ - # "stream", - # "temperature", - # "max_tokens", - # "logit_bias", - # "top_p", - # "frequency_penalty", - # "presence_penalty", - # "stop", - # "n", - # "extra_headers" - # ] - # }, - # { - # "model_group": "gpt-3.5-turbo", - # "providers": ["openai"], - # "max_input_tokens": 16385.0, - # "max_output_tokens": 4096.0, - # "input_cost_per_token": 1.5e-6, - # "output_cost_per_token": 2e-6, - # "mode": "chat", - # "tpm": null, - # "rpm": null, - # "supports_parallel_function_calling": false, - # "supports_vision": false, - # "supports_function_calling": true, - # "supported_openai_params": [ - # "frequency_penalty", - # "logit_bias", - # "logprobs", - # "top_logprobs", - # "max_tokens", - # "max_completion_tokens", - # "n", - # "presence_penalty", - # "seed", - # "stop", - # "stream", - # "stream_options", - # "temperature", - # "top_p", - # "tools", - # "tool_choice", - # "function_call", - # "functions", - # "max_retries", - # "extra_headers", - # "parallel_tool_calls", - # "response_format" - # ] - # }, - # { - # "model_group": "llava-hf", - # "providers": ["openai"], - # "max_input_tokens": null, - # "max_output_tokens": null, - # "input_cost_per_token": 0.0, - # "output_cost_per_token": 0.0, - # "mode": null, - # "tpm": null, - # "rpm": null, - # "supports_parallel_function_calling": false, - # "supports_vision": true, - # "supports_function_calling": false, - # "supported_openai_params": [ - # "frequency_penalty", - # "logit_bias", - # "logprobs", - # "top_logprobs", - # "max_tokens", - # "max_completion_tokens", - # "n", - # "presence_penalty", - # "seed", - # "stop", - # "stream", - # "stream_options", - # "temperature", - # "top_p", - # "tools", - # "tool_choice", - # "function_call", - # "functions", - # "max_retries", - # "extra_headers", - # "parallel_tool_calls", - # "response_format" - # ] - # } - # ] - # } - # ``` + # ```json + # { + # "data": [ + # { + # "model_group": "rerank-english-v3.0", + # "providers": ["cohere"], + # "max_input_tokens": null, + # "max_output_tokens": null, + # "input_cost_per_token": 0.0, + # "output_cost_per_token": 0.0, + # "mode": null, + # "tpm": null, + # "rpm": null, + # "supports_parallel_function_calling": false, + # "supports_vision": false, + # "supports_function_calling": false, + # "supported_openai_params": [ + # "stream", + # "temperature", + # "max_tokens", + # "logit_bias", + # "top_p", + # "frequency_penalty", + # "presence_penalty", + # "stop", + # "n", + # "extra_headers" + # ] + # }, + # { + # "model_group": "gpt-3.5-turbo", + # "providers": ["openai"], + # "max_input_tokens": 16385.0, + # "max_output_tokens": 4096.0, + # "input_cost_per_token": 1.5e-6, + # "output_cost_per_token": 2e-6, + # "mode": "chat", + # "tpm": null, + # "rpm": null, + # "supports_parallel_function_calling": false, + # "supports_vision": false, + # "supports_function_calling": true, + # "supported_openai_params": [ + # "frequency_penalty", + # "logit_bias", + # "logprobs", + # "top_logprobs", + # "max_tokens", + # "max_completion_tokens", + # "n", + # "presence_penalty", + # "seed", + # "stop", + # "stream", + # "stream_options", + # "temperature", + # "top_p", + # "tools", + # "tool_choice", + # "function_call", + # "functions", + # "max_retries", + # "extra_headers", + # "parallel_tool_calls", + # "response_format" + # ] + # }, + # { + # "model_group": "llava-hf", + # "providers": ["openai"], + # "max_input_tokens": null, + # "max_output_tokens": null, + # "input_cost_per_token": 0.0, + # "output_cost_per_token": 0.0, + # "mode": null, + # "tpm": null, + # "rpm": null, + # "supports_parallel_function_calling": false, + # "supports_vision": true, + # "supports_function_calling": false, + # "supported_openai_params": [ + # "frequency_penalty", + # "logit_bias", + # "logprobs", + # "top_logprobs", + # "max_tokens", + # "max_completion_tokens", + # "n", + # "presence_penalty", + # "seed", + # "stop", + # "stream", + # "stream_options", + # "temperature", + # "top_p", + # "tools", + # "tool_choice", + # "function_call", + # "functions", + # "max_retries", + # "extra_headers", + # "parallel_tool_calls", + # "response_format" + # ] + # } + # ] + # } + # ``` sig do params( model_group: T.nilable(String), diff --git a/rbi/lib/hanzoai/resources/models.rbi b/rbi/lib/hanzoai/resources/models.rbi index d13ca199..c99ac9b6 100644 --- a/rbi/lib/hanzoai/resources/models.rbi +++ b/rbi/lib/hanzoai/resources/models.rbi @@ -4,9 +4,9 @@ module Hanzoai module Resources class Models # Use `/model/info` - to get detailed model information, example - pricing, mode, - # etc. + # etc. # - # This is just for compatibility with openai projects like aider. + # This is just for compatibility with openai projects like aider. sig do params( return_wildcard_routes: T.nilable(T::Boolean), diff --git a/rbi/lib/hanzoai/resources/moderations.rbi b/rbi/lib/hanzoai/resources/moderations.rbi index d8ff0158..a740442b 100644 --- a/rbi/lib/hanzoai/resources/moderations.rbi +++ b/rbi/lib/hanzoai/resources/moderations.rbi @@ -4,13 +4,13 @@ module Hanzoai module Resources class Moderations # The moderations endpoint is a tool you can use to check whether content complies - # with an LLM Providers policies. + # with an LLM Providers policies. # - # Quick Start + # Quick Start # - # ``` - # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/openai.rbi b/rbi/lib/hanzoai/resources/openai.rbi index 2a9fe604..f0cac6ca 100644 --- a/rbi/lib/hanzoai/resources/openai.rbi +++ b/rbi/lib/hanzoai/resources/openai.rbi @@ -7,7 +7,7 @@ module Hanzoai attr_reader :deployments # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. sig do params( endpoint: String, @@ -18,7 +18,7 @@ module Hanzoai def create(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. sig do params( endpoint: String, @@ -29,7 +29,7 @@ module Hanzoai def retrieve(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. sig do params( endpoint: String, @@ -40,7 +40,7 @@ module Hanzoai def update(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. sig do params( endpoint: String, @@ -51,7 +51,7 @@ module Hanzoai def delete(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request - # to OpenAI. + # to OpenAI. sig do params( endpoint: String, diff --git a/rbi/lib/hanzoai/resources/openai/deployments.rbi b/rbi/lib/hanzoai/resources/openai/deployments.rbi index 5b96104f..2a580577 100644 --- a/rbi/lib/hanzoai/resources/openai/deployments.rbi +++ b/rbi/lib/hanzoai/resources/openai/deployments.rbi @@ -8,19 +8,19 @@ module Hanzoai attr_reader :chat # Follows the exact same API spec as - # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` + # `OpenAI's Completions API https://platform.openai.com/docs/api-reference/completions` # - # ```bash - # curl -X POST http://localhost:4000/v1/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-3.5-turbo-instruct", - # "prompt": "Once upon a time", - # "max_tokens": 50, - # "temperature": 0.7 - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-3.5-turbo-instruct", + # "prompt": "Once upon a time", + # "max_tokens": 50, + # "temperature": 0.7 + # }' + # ``` sig do params( model: String, @@ -31,17 +31,17 @@ module Hanzoai def complete(model, request_options: {}); end # Follows the exact same API spec as - # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` + # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` # - # ```bash - # curl -X POST http://localhost:4000/v1/embeddings - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "text-embedding-ada-002", - # "input": "The quick brown fox jumps over the lazy dog" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/embeddings + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "text-embedding-ada-002", + # "input": "The quick brown fox jumps over the lazy dog" + # }' + # ``` sig do params( model: String, diff --git a/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi b/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi index f1e3167a..cb525465 100644 --- a/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi +++ b/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi @@ -6,22 +6,22 @@ module Hanzoai class Deployments class Chat # Follows the exact same API spec as - # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` + # `OpenAI's Chat API https://platform.openai.com/docs/api-reference/chat` # - # ```bash - # curl -X POST http://localhost:4000/v1/chat/completions - # -H "Content-Type: application/json" - # -H "Authorization: Bearer sk-1234" - # -d '{ - # "model": "gpt-4o", - # "messages": [ - # { - # "role": "user", - # "content": "Hello!" - # } - # ] - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/chat/completions + # -H "Content-Type: application/json" + # -H "Authorization: Bearer sk-1234" + # -d '{ + # "model": "gpt-4o", + # "messages": [ + # { + # "role": "user", + # "content": "Hello!" + # } + # ] + # }' + # ``` sig do params( model: String, diff --git a/rbi/lib/hanzoai/resources/organization.rbi b/rbi/lib/hanzoai/resources/organization.rbi index f8a6dfc0..91317fd0 100644 --- a/rbi/lib/hanzoai/resources/organization.rbi +++ b/rbi/lib/hanzoai/resources/organization.rbi @@ -8,68 +8,68 @@ module Hanzoai # Allow orgs to own teams # - # Set org level budgets + model access. - # - # Only admins can create orgs. - # - # # Parameters - # - # - organization_alias: _str_ - The name of the organization. - # - models: _List_ - The models the organization has access to. - # - budget_id: _Optional[str]_ - The id for a budget (tpm/rpm/max budget) for the - # organization. - # - # ### IF NO BUDGET ID - CREATE ONE WITH THESE PARAMS - # - # - max_budget: _Optional[float]_ - Max budget for org - # - tpm_limit: _Optional[int]_ - Max tpm limit for org - # - rpm_limit: _Optional[int]_ - Max rpm limit for org - # - max_parallel_requests: _Optional[int]_ - [Not Implemented Yet] Max parallel - # requests for org - # - soft_budget: _Optional[float]_ - [Not Implemented Yet] Get a slack alert when - # this soft budget is reached. Don't block requests. - # - model_max_budget: _Optional[dict]_ - Max budget for a specific model - # - budget_duration: _Optional[str]_ - Frequency of reseting org budget - # - metadata: _Optional[dict]_ - Metadata for organization, store information for - # organization. Example metadata - {"extra_info": "some info"} - # - blocked: _bool_ - Flag indicating if the org is blocked or not - will stop all - # calls from keys with this org_id. - # - tags: _Optional[List[str]]_ - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - organization_id: _Optional[str]_ - The organization id of the team. Default is - # None. Create via `/organization/new`. - # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - # Case 1: Create new org **without** a budget_id - # - # ```bash - # curl --location 'http://0.0.0.0:4000/organization/new' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "organization_alias": "my-secret-org", - # "models": ["model1", "model2"], - # "max_budget": 100 - # }' - # - # - # ``` - # - # Case 2: Create new org **with** a budget_id - # - # ```bash - # curl --location 'http://0.0.0.0:4000/organization/new' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "organization_alias": "my-secret-org", - # "models": ["model1", "model2"], - # "budget_id": "428eeaa8-f3ac-4e85-a8fb-7dc8d7aa8689" - # }' - # ``` + # Set org level budgets + model access. + # + # Only admins can create orgs. + # + # # Parameters + # + # - organization_alias: _str_ - The name of the organization. + # - models: _List_ - The models the organization has access to. + # - budget_id: _Optional[str]_ - The id for a budget (tpm/rpm/max budget) for the + # organization. + # + # ### IF NO BUDGET ID - CREATE ONE WITH THESE PARAMS + # + # - max_budget: _Optional[float]_ - Max budget for org + # - tpm_limit: _Optional[int]_ - Max tpm limit for org + # - rpm_limit: _Optional[int]_ - Max rpm limit for org + # - max_parallel_requests: _Optional[int]_ - [Not Implemented Yet] Max parallel + # requests for org + # - soft_budget: _Optional[float]_ - [Not Implemented Yet] Get a slack alert when + # this soft budget is reached. Don't block requests. + # - model_max_budget: _Optional[dict]_ - Max budget for a specific model + # - budget_duration: _Optional[str]_ - Frequency of reseting org budget + # - metadata: _Optional[dict]_ - Metadata for organization, store information for + # organization. Example metadata - {"extra_info": "some info"} + # - blocked: _bool_ - Flag indicating if the org is blocked or not - will stop all + # calls from keys with this org_id. + # - tags: _Optional[List[str]]_ - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - organization_id: _Optional[str]_ - The organization id of the team. Default is + # None. Create via `/organization/new`. + # - model_aliases: Optional[dict] - Model aliases for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # + # Case 1: Create new org **without** a budget_id + # + # ```bash + # curl --location 'http://0.0.0.0:4000/organization/new' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "organization_alias": "my-secret-org", + # "models": ["model1", "model2"], + # "max_budget": 100 + # }' + # + # + # ``` + # + # Case 2: Create new org **with** a budget_id + # + # ```bash + # curl --location 'http://0.0.0.0:4000/organization/new' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "organization_alias": "my-secret-org", + # "models": ["model1", "model2"], + # "budget_id": "428eeaa8-f3ac-4e85-a8fb-7dc8d7aa8689" + # }' + # ``` sig do params( organization_alias: String, @@ -128,8 +128,8 @@ module Hanzoai request_options: {} ); end # ``` - # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' - # ``` + # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T::Array[Hanzoai::Models::OrganizationListResponseItem]) @@ -138,9 +138,9 @@ module Hanzoai # Delete an organization # - # # Parameters: + # # Parameters: # - # - organization_ids: List[str] - The organization ids to delete. + # - organization_ids: List[str] - The organization ids to delete. sig do params( organization_ids: T::Array[String], @@ -152,41 +152,41 @@ module Hanzoai # [BETA] # - # Add new members (either via user_email or user_id) to an organization + # Add new members (either via user_email or user_id) to an organization # - # If user doesn't exist, new user row will also be added to User Table + # If user doesn't exist, new user row will also be added to User Table # - # Only proxy_admin or org_admin of organization, allowed to access this endpoint. + # Only proxy_admin or org_admin of organization, allowed to access this endpoint. # - # # Parameters: + # # Parameters: # - # - organization_id: str (required) - # - member: Union[List[Member], Member] (required) - # - role: Literal[LLMUserRoles] (required) - # - user_id: Optional[str] - # - user_email: Optional[str] + # - organization_id: str (required) + # - member: Union[List[Member], Member] (required) + # - role: Literal[LLMUserRoles] (required) + # - user_id: Optional[str] + # - user_email: Optional[str] # - # Note: Either user_id or user_email must be provided for each member. + # Note: Either user_id or user_email must be provided for each member. # - # Example: + # Example: # - # ``` - # curl -X POST 'http://0.0.0.0:4000/organization/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{ - # "organization_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", - # "member": { - # "role": "internal_user", - # "user_id": "dev247652@hanzo.ai" - # }, - # "max_budget_in_organization": 100.0 - # }' - # ``` + # ``` + # curl -X POST 'http://0.0.0.0:4000/organization/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{ + # "organization_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", + # "member": { + # "role": "internal_user", + # "user_id": "dev247652@hanzo.ai" + # }, + # "max_budget_in_organization": 100.0 + # }' + # ``` # - # The following is executed in this function: + # The following is executed in this function: # - # 1. Check if organization exists - # 2. Creates a new Internal User if the user_id or user_email is not found in - # LLM_UserTable - # 3. Add Internal User to the `LLM_OrganizationMembership` table + # 1. Check if organization exists + # 2. Creates a new Internal User if the user_id or user_email is not found in + # LLM_UserTable + # 3. Add Internal User to the `LLM_OrganizationMembership` table sig do params( member: T.any( @@ -230,16 +230,16 @@ module Hanzoai organization_id:, max_budget_in_organization: nil, # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend # - # Team Roles: TEAM: used for JWT auth + # Team Roles: TEAM: used for JWT auth # - # Customer Roles: CUSTOMER: External users -> these are customers + # Customer Roles: CUSTOMER: External users -> these are customers role: nil, user_email: nil, user_id: nil, diff --git a/rbi/lib/hanzoai/resources/provider.rbi b/rbi/lib/hanzoai/resources/provider.rbi index 63ab5e61..941c9d3d 100644 --- a/rbi/lib/hanzoai/resources/provider.rbi +++ b/rbi/lib/hanzoai/resources/provider.rbi @@ -4,49 +4,49 @@ module Hanzoai module Resources class Provider # Provider Budget Routing - Get Budget, Spend Details - # https://docs.hanzo.ai/docs/proxy/provider_budget_routing + # https://docs.hanzo.ai/docs/proxy/provider_budget_routing # - # Use this endpoint to check current budget, spend and budget reset time for a - # provider + # Use this endpoint to check current budget, spend and budget reset time for a + # provider # - # Example Request + # Example Request # - # ```bash - # curl -X GET http://localhost:4000/provider/budgets -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X GET http://localhost:4000/provider/budgets -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Response + # Example Response # - # ```json - # { - # "providers": { - # "openai": { - # "budget_limit": 1e-12, - # "time_period": "1d", - # "spend": 0.0, - # "budget_reset_at": null - # }, - # "azure": { - # "budget_limit": 100.0, - # "time_period": "1d", - # "spend": 0.0, - # "budget_reset_at": null - # }, - # "anthropic": { - # "budget_limit": 100.0, - # "time_period": "10d", - # "spend": 0.0, - # "budget_reset_at": null - # }, - # "vertex_ai": { - # "budget_limit": 100.0, - # "time_period": "12d", - # "spend": 0.0, - # "budget_reset_at": null - # } + # ```json + # { + # "providers": { + # "openai": { + # "budget_limit": 1e-12, + # "time_period": "1d", + # "spend": 0.0, + # "budget_reset_at": null + # }, + # "azure": { + # "budget_limit": 100.0, + # "time_period": "1d", + # "spend": 0.0, + # "budget_reset_at": null + # }, + # "anthropic": { + # "budget_limit": 100.0, + # "time_period": "10d", + # "spend": 0.0, + # "budget_reset_at": null + # }, + # "vertex_ai": { + # "budget_limit": 100.0, + # "time_period": "12d", + # "spend": 0.0, + # "budget_reset_at": null # } # } - # ``` + # } + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(Hanzoai::Models::ProviderListBudgetsResponse) diff --git a/rbi/lib/hanzoai/resources/responses.rbi b/rbi/lib/hanzoai/resources/responses.rbi index 5e3505fc..a467cccb 100644 --- a/rbi/lib/hanzoai/resources/responses.rbi +++ b/rbi/lib/hanzoai/resources/responses.rbi @@ -7,14 +7,14 @@ module Hanzoai attr_reader :input_items # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses + # https://platform.openai.com/docs/api-reference/responses # - # ```bash - # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ - # "model": "gpt-4o", - # "input": "Tell me about AI" - # }' - # ``` + # ```bash + # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "model": "gpt-4o", + # "input": "Tell me about AI" + # }' + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) @@ -23,12 +23,12 @@ module Hanzoai # Get a response by ID. # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/get + # Follows the OpenAI Responses API spec: + # https://platform.openai.com/docs/api-reference/responses/get # - # ```bash - # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" + # ``` sig do params( response_id: String, @@ -40,12 +40,12 @@ module Hanzoai # Delete a response by ID. # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/delete + # Follows the OpenAI Responses API spec: + # https://platform.openai.com/docs/api-reference/responses/delete # - # ```bash - # curl -X DELETE http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X DELETE http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" + # ``` sig do params( response_id: String, diff --git a/rbi/lib/hanzoai/resources/responses/input_items.rbi b/rbi/lib/hanzoai/resources/responses/input_items.rbi index 3e9c152f..1b35c1b5 100644 --- a/rbi/lib/hanzoai/resources/responses/input_items.rbi +++ b/rbi/lib/hanzoai/resources/responses/input_items.rbi @@ -6,12 +6,12 @@ module Hanzoai class InputItems # Get input items for a response. # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/input-items + # Follows the OpenAI Responses API spec: + # https://platform.openai.com/docs/api-reference/responses/input-items # - # ```bash - # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" - # ``` + # ```bash + # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" + # ``` sig do params( response_id: String, diff --git a/rbi/lib/hanzoai/resources/settings.rbi b/rbi/lib/hanzoai/resources/settings.rbi index c5beaa4b..a8523ebb 100644 --- a/rbi/lib/hanzoai/resources/settings.rbi +++ b/rbi/lib/hanzoai/resources/settings.rbi @@ -5,27 +5,27 @@ module Hanzoai class Settings # Returns a list of llm level settings # - # This is useful for debugging and ensuring the proxy server is configured - # correctly. + # This is useful for debugging and ensuring the proxy server is configured + # correctly. # - # Response schema: + # Response schema: # - # ``` - # { - # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), - # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, - # } - # ``` + # ``` + # { + # "alerting": _alerting, + # "llm.callbacks": llm_callbacks, + # "llm.input_callback": llm_input_callbacks, + # "llm.failure_callback": llm_failure_callbacks, + # "llm.success_callback": llm_success_callbacks, + # "llm._async_success_callback": llm_async_success_callbacks, + # "llm._async_failure_callback": llm_async_failure_callbacks, + # "llm._async_input_callback": llm_async_input_callbacks, + # "all_llm_callbacks": all_llm_callbacks, + # "num_callbacks": len(all_llm_callbacks), + # "num_alerting": _num_alerting, + # "llm.request_timeout": llm.request_timeout, + # } + # ``` sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/spend.rbi b/rbi/lib/hanzoai/resources/spend.rbi index 90326c91..1a420e58 100644 --- a/rbi/lib/hanzoai/resources/spend.rbi +++ b/rbi/lib/hanzoai/resources/spend.rbi @@ -5,51 +5,51 @@ module Hanzoai class Spend # Accepts all the params of completion_cost. # - # Calculate spend **before** making call: - # - # Note: If you see a spend of $0.0 you need to set custom_pricing for your model: - # https://docs.hanzo.ai/docs/proxy/custom_pricing - # - # ``` - # curl --location 'http://localhost:4000/spend/calculate' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "model": "anthropic.claude-v2", - # "messages": [{"role": "user", "content": "Hey, how'''s it going?"}] - # }' - # ``` - # - # Calculate spend **after** making call: - # - # ``` - # curl --location 'http://localhost:4000/spend/calculate' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data '{ - # "completion_response": { - # "id": "chatcmpl-123", - # "object": "chat.completion", - # "created": 1677652288, - # "model": "gpt-3.5-turbo-0125", - # "system_fingerprint": "fp_44709d6fcb", - # "choices": [{ - # "index": 0, - # "message": { - # "role": "assistant", - # "content": "Hello there, how may I assist you today?" - # }, - # "logprobs": null, - # "finish_reason": "stop" - # }] - # "usage": { - # "prompt_tokens": 9, - # "completion_tokens": 12, - # "total_tokens": 21 - # } - # } - # }' - # ``` + # Calculate spend **before** making call: + # + # Note: If you see a spend of $0.0 you need to set custom_pricing for your model: + # https://docs.hanzo.ai/docs/proxy/custom_pricing + # + # ``` + # curl --location 'http://localhost:4000/spend/calculate' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "model": "anthropic.claude-v2", + # "messages": [{"role": "user", "content": "Hey, how'''s it going?"}] + # }' + # ``` + # + # Calculate spend **after** making call: + # + # ``` + # curl --location 'http://localhost:4000/spend/calculate' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data '{ + # "completion_response": { + # "id": "chatcmpl-123", + # "object": "chat.completion", + # "created": 1677652288, + # "model": "gpt-3.5-turbo-0125", + # "system_fingerprint": "fp_44709d6fcb", + # "choices": [{ + # "index": 0, + # "message": { + # "role": "assistant", + # "content": "Hello there, how may I assist you today?" + # }, + # "logprobs": null, + # "finish_reason": "stop" + # }] + # "usage": { + # "prompt_tokens": 9, + # "completion_tokens": 12, + # "total_tokens": 21 + # } + # } + # }' + # ``` sig do params( completion_response: T.nilable(T.anything), @@ -62,31 +62,31 @@ module Hanzoai def calculate_spend(completion_response: nil, messages: nil, model: nil, request_options: {}); end # View all spend logs, if request_id is provided, only logs for that request_id - # will be returned + # will be returned # - # Example Request for all logs + # Example Request for all logs # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Request for specific request_id + # Example Request for specific request_id # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?request_id=chatcmpl-6dcb2540-d3d7-4e49-bb27-291f863f112e" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?request_id=chatcmpl-6dcb2540-d3d7-4e49-bb27-291f863f112e" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Request for specific api_key + # Example Request for specific api_key # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-Fn8Ej39NkBQmUagFEoUWPQ" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-Fn8Ej39NkBQmUagFEoUWPQ" -H "Authorization: Bearer sk-1234" + # ``` # - # Example Request for specific user_id + # Example Request for specific user_id # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=z@hanzo.ai" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=z@hanzo.ai" -H "Authorization: Bearer sk-1234" + # ``` sig do params( api_key: T.nilable(String), @@ -104,7 +104,7 @@ module Hanzoai # Time till which to view key spend end_date: nil, # request_id to get spend logs for specific request_id. If none passed then pass - # spend logs for all requests + # spend logs for all requests request_id: nil, # Time from which to start viewing key spend start_date: nil, @@ -114,17 +114,17 @@ module Hanzoai ); end # LLM Enterprise - View Spend Per Request Tag # - # Example Request: + # Example Request: # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/tags" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/tags" -H "Authorization: Bearer sk-1234" + # ``` # - # Spend with Start Date and End Date + # Spend with Start Date and End Date # - # ``` - # curl -X GET "http://0.0.0.0:8000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" - # ``` + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/tags?start_date=2022-01-01&end_date=2022-02-01" -H "Authorization: Bearer sk-1234" + # ``` sig do params( end_date: T.nilable(String), diff --git a/rbi/lib/hanzoai/resources/team.rbi b/rbi/lib/hanzoai/resources/team.rbi index 092f6d6f..8acae53d 100644 --- a/rbi/lib/hanzoai/resources/team.rbi +++ b/rbi/lib/hanzoai/resources/team.rbi @@ -11,70 +11,70 @@ module Hanzoai # Allow users to create a new team. Apply user permissions to their team. # - # 👉 - # [Detailed Doc on setting team budgets](https://docs.hanzo.ai/docs/proxy/team_budgets) - # - # Parameters: - # - # - team_alias: Optional[str] - User defined team alias - # - team_id: Optional[str] - The team id of the user. If none passed, we'll - # generate it. - # - members_with_roles: List[{"role": "admin" or "user", "user_id": - # ""}] - A list of users and their roles in the team. Get user_id when - # making a new user via `/user/new`. - # - metadata: Optional[dict] - Metadata for team, store information for team. - # Example metadata = {"extra_info": "some info"} - # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - - # all keys with this team_id will have at max this TPM limit - # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - - # all keys associated with this team_id will have at max this RPM limit - # - max_budget: Optional[float] - The maximum budget allocated to the team - all - # keys for this team_id will have at max this max_budget - # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) - # - models: Optional[list] - A list of models associated with the team - all keys - # for this team_id will have at most, these models. If empty, assumes all models - # are allowed. - # - blocked: bool - Flag indicating if the team is blocked or not - will stop all - # calls from keys with this team_id. - # - members: Optional[List] - Control team members via `/team/member/add` and - # `/team/member/delete`. - # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - organization_id: Optional[str] - The organization id of the team. Default is - # None. Create via `/organization/new`. - # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Returns: - # - team_id: (str) Unique team id - used for tracking spend across multiple keys - # for same team id. - # - # \_deprecated_params: - # - # - admins: list - A list of user_id's for the admin role - # - users: list - A list of user_id's for the user role - # - # Example Request: - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_alias": "my-new-team_2", - # "members_with_roles": [{"role": "admin", "user_id": "user-1234"}, - # {"role": "user", "user_id": "user-2434"}] - # }' - # - # ``` - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_alias": "QA Prod Bot", - # "max_budget": 0.000000001, - # "budget_duration": "1d" - # }' - # ``` + # 👉 + # [Detailed Doc on setting team budgets](https://docs.hanzo.ai/docs/proxy/team_budgets) + # + # Parameters: + # + # - team_alias: Optional[str] - User defined team alias + # - team_id: Optional[str] - The team id of the user. If none passed, we'll + # generate it. + # - members_with_roles: List[{"role": "admin" or "user", "user_id": + # ""}] - A list of users and their roles in the team. Get user_id when + # making a new user via `/user/new`. + # - metadata: Optional[dict] - Metadata for team, store information for team. + # Example metadata = {"extra_info": "some info"} + # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - + # all keys with this team_id will have at max this TPM limit + # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - + # all keys associated with this team_id will have at max this RPM limit + # - max_budget: Optional[float] - The maximum budget allocated to the team - all + # keys for this team_id will have at max this max_budget + # - budget_duration: Optional[str] - The duration of the budget for the team. Doc + # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # - models: Optional[list] - A list of models associated with the team - all keys + # for this team_id will have at most, these models. If empty, assumes all models + # are allowed. + # - blocked: bool - Flag indicating if the team is blocked or not - will stop all + # calls from keys with this team_id. + # - members: Optional[List] - Control team members via `/team/member/add` and + # `/team/member/delete`. + # - tags: Optional[List[str]] - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - organization_id: Optional[str] - The organization id of the team. Default is + # None. Create via `/organization/new`. + # - model_aliases: Optional[dict] - Model aliases for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # - guardrails: Optional[List[str]] - Guardrails for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Returns: + # - team_id: (str) Unique team id - used for tracking spend across multiple keys + # for same team id. + # + # \_deprecated_params: + # + # - admins: list - A list of user_id's for the admin role + # - users: list - A list of user_id's for the user role + # + # Example Request: + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_alias": "my-new-team_2", + # "members_with_roles": [{"role": "admin", "user_id": "user-1234"}, + # {"role": "user", "user_id": "user-2434"}] + # }' + # + # ``` + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_alias": "QA Prod Bot", + # "max_budget": 0.000000001, + # "budget_duration": "1d" + # }' + # ``` sig do params( admins: T::Array[T.anything], @@ -132,62 +132,62 @@ module Hanzoai # Body param: tpm_limit: nil, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # Use `/team/member_add` AND `/team/member/delete` to add/remove new team members # - # You can now update team budget / rate limits via /team/update - # - # Parameters: - # - # - team_id: str - The team id of the user. Required param. - # - team_alias: Optional[str] - User defined team alias - # - metadata: Optional[dict] - Metadata for team, store information for team. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } - # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - - # all keys with this team_id will have at max this TPM limit - # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - - # all keys associated with this team_id will have at max this RPM limit - # - max_budget: Optional[float] - The maximum budget allocated to the team - all - # keys for this team_id will have at max this max_budget - # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) - # - models: Optional[list] - A list of models associated with the team - all keys - # for this team_id will have at most, these models. If empty, assumes all models - # are allowed. - # - blocked: bool - Flag indicating if the team is blocked or not - will stop all - # calls from keys with this team_id. - # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) - # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). - # - organization_id: Optional[str] - The organization id of the team. Default is - # None. Create via `/organization/new`. - # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Example - update team TPM - # Limit - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", - # "tpm_limit": 100 - # }' - # ``` - # - # Example - Update Team `max_budget` budget - # - # ``` - # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", - # "max_budget": 10 - # }' - # ``` + # You can now update team budget / rate limits via /team/update + # + # Parameters: + # + # - team_id: str - The team id of the user. Required param. + # - team_alias: Optional[str] - User defined team alias + # - metadata: Optional[dict] - Metadata for team, store information for team. + # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" + # } + # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - + # all keys with this team_id will have at max this TPM limit + # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - + # all keys associated with this team_id will have at max this RPM limit + # - max_budget: Optional[float] - The maximum budget allocated to the team - all + # keys for this team_id will have at max this max_budget + # - budget_duration: Optional[str] - The duration of the budget for the team. Doc + # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # - models: Optional[list] - A list of models associated with the team - all keys + # for this team_id will have at most, these models. If empty, assumes all models + # are allowed. + # - blocked: bool - Flag indicating if the team is blocked or not - will stop all + # calls from keys with this team_id. + # - tags: Optional[List[str]] - Tags for + # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # and/or doing + # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # - organization_id: Optional[str] - The organization id of the team. Default is + # None. Create via `/organization/new`. + # - model_aliases: Optional[dict] - Model aliases for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # - guardrails: Optional[List[str]] - Guardrails for the team. + # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Example - update team TPM + # Limit + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", + # "tpm_limit": 100 + # }' + # ``` + # + # Example - Update Team `max_budget` budget + # + # ``` + # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "team_id": "8d916b1c-510d-4894-a334-1c16a93344f5", + # "max_budget": 10 + # }' + # ``` sig do params( team_id: String, @@ -236,22 +236,22 @@ module Hanzoai # Body param: tpm_limit: nil, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # ``` - # curl --location --request GET 'http://0.0.0.0:4000/team/list' --header 'Authorization: Bearer sk-1234' - # ``` + # curl --location --request GET 'http://0.0.0.0:4000/team/list' --header 'Authorization: Bearer sk-1234' + # ``` # - # Parameters: + # Parameters: # - # - user_id: str - Optional. If passed will only return teams that the user_id is - # a member of. - # - organization_id: str - Optional. If passed will only return teams that belong - # to the organization_id. Pass 'default_organization' to get all teams without - # organization_id. + # - user_id: str - Optional. If passed will only return teams that the user_id is + # a member of. + # - organization_id: str - Optional. If passed will only return teams that belong + # to the organization_id. Pass 'default_organization' to get all teams without + # organization_id. sig do params( organization_id: T.nilable(String), @@ -268,16 +268,16 @@ module Hanzoai ); end # delete team and associated team keys # - # Parameters: + # Parameters: # - # - team_ids: List[str] - Required. List of team IDs to delete. Example: - # ["team-1234", "team-5678"] + # - team_ids: List[str] - Required. List of team IDs to delete. Example: + # ["team-1234", "team-5678"] # - # ``` - # curl --location 'http://0.0.0.0:4000/team/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ - # "team_ids": ["8d916b1c-510d-4894-a334-1c16a93344f5"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ + # "team_ids": ["8d916b1c-510d-4894-a334-1c16a93344f5"] + # }' + # ``` sig do params( team_ids: T::Array[String], @@ -290,24 +290,24 @@ module Hanzoai # Body param: team_ids:, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # [BETA] # - # Add new members (either via user_email or user_id) to a team + # Add new members (either via user_email or user_id) to a team # - # If user doesn't exist, new user row will also be added to User Table + # If user doesn't exist, new user row will also be added to User Table # - # Only proxy_admin or admin of team, allowed to access this endpoint. + # Only proxy_admin or admin of team, allowed to access this endpoint. # - # ``` + # ``` # - # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "dev247652@hanzo.ai"}}' + # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "dev247652@hanzo.ai"}}' # - # ``` + # ``` sig do params( member: T.any( @@ -325,21 +325,21 @@ module Hanzoai # Blocks all calls from keys with this team id. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The unique identifier of the team to block. + # - team_id: str - Required. The unique identifier of the team to block. # - # Example: + # Example: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234" - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/block' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234" + # }' + # ``` # - # Returns: + # Returns: # - # - The updated team record with blocked=True + # - The updated team record with blocked=True sig do params( team_id: String, @@ -351,15 +351,15 @@ module Hanzoai # Disable all logging callbacks for a team # - # Parameters: + # Parameters: # - # - team_id (str, required): The unique identifier for the team + # - team_id (str, required): The unique identifier for the team # - # Example curl: + # Example curl: # - # ``` - # curl -X POST 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/disable_logging' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X POST 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/disable_logging' -H 'Authorization: Bearer sk-1234' + # ``` sig do params( team_id: String, @@ -381,19 +381,19 @@ module Hanzoai # [BETA] # - # delete members (either via user_email or user_id) from a team + # delete members (either via user_email or user_id) from a team # - # If user doesn't exist, an exception will be raised + # If user doesn't exist, an exception will be raised # - # ``` - # curl -X POST 'http://0.0.0.0:8000/team/member_delete' - # -H 'Authorization: Bearer sk-1234' - # -H 'Content-Type: application/json' - # -d '{ - # "team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", - # "user_id": "dev247652@hanzo.ai" - # }' - # ``` + # ``` + # curl -X POST 'http://0.0.0.0:8000/team/member_delete' + # -H 'Authorization: Bearer sk-1234' + # -H 'Content-Type: application/json' + # -d '{ + # "team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", + # "user_id": "dev247652@hanzo.ai" + # }' + # ``` sig do params( team_id: String, @@ -407,13 +407,13 @@ module Hanzoai # get info on team + related keys # - # Parameters: + # Parameters: # - # - team_id: str - Required. The unique identifier of the team to get info on. + # - team_id: str - Required. The unique identifier of the team to get info on. # - # ``` - # curl --location 'http://localhost:4000/team/info?team_id=your_team_id_here' --header 'Authorization: Bearer your_api_key_here' - # ``` + # ``` + # curl --location 'http://localhost:4000/team/info?team_id=your_team_id_here' --header 'Authorization: Bearer your_api_key_here' + # ``` sig do params( team_id: String, @@ -428,17 +428,17 @@ module Hanzoai ); end # Blocks all calls from keys with this team id. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The unique identifier of the team to unblock. + # - team_id: str - Required. The unique identifier of the team to unblock. # - # Example: + # Example: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234" - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/unblock' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234" + # }' + # ``` sig do params( team_id: String, @@ -450,7 +450,7 @@ module Hanzoai # [BETA] # - # Update team member budgets and team member role + # Update team member budgets and team member role sig do params( team_id: String, diff --git a/rbi/lib/hanzoai/resources/team/callback.rbi b/rbi/lib/hanzoai/resources/team/callback.rbi index 269c7bdc..a0ae9855 100644 --- a/rbi/lib/hanzoai/resources/team/callback.rbi +++ b/rbi/lib/hanzoai/resources/team/callback.rbi @@ -6,23 +6,23 @@ module Hanzoai class Callback # Get the success/failure callbacks and variables for a team # - # Parameters: + # Parameters: # - # - team_id (str, required): The unique identifier for the team + # - team_id (str, required): The unique identifier for the team # - # Example curl: + # Example curl: # - # ``` - # curl -X GET 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Authorization: Bearer sk-1234' + # ``` # - # This will return the callback settings for the team with id - # dbe2f686-a686-4896-864a-4c3924458709 + # This will return the callback settings for the team with id + # dbe2f686-a686-4896-864a-4c3924458709 # - # Returns { "status": "success", "data": { "team_id": team_id, - # "success_callbacks": team_callback_settings_obj.success_callback, - # "failure_callbacks": team_callback_settings_obj.failure_callback, - # "callback_vars": team_callback_settings_obj.callback_vars, }, } + # Returns { "status": "success", "data": { "team_id": team_id, + # "success_callbacks": team_callback_settings_obj.success_callback, + # "failure_callbacks": team_callback_settings_obj.failure_callback, + # "callback_vars": team_callback_settings_obj.callback_vars, }, } sig do params( team_id: String, @@ -34,44 +34,44 @@ module Hanzoai # Add a success/failure callback to a team # - # Use this if if you want different teams to have different success/failure - # callbacks + # Use this if if you want different teams to have different success/failure + # callbacks # - # Parameters: + # Parameters: # - # - callback_name (Literal["langfuse", "langsmith", "gcs"], required): The name of - # the callback to add - # - callback_type (Literal["success", "failure", "success_and_failure"], - # required): The type of callback to add. One of: - # - "success": Callback for successful LLM calls - # - "failure": Callback for failed LLM calls - # - "success_and_failure": Callback for both successful and failed LLM calls - # - callback_vars (StandardCallbackDynamicParams, required): A dictionary of - # variables to pass to the callback - # - langfuse_public_key: The public key for the Langfuse callback - # - langfuse_secret_key: The secret key for the Langfuse callback - # - langfuse_secret: The secret for the Langfuse callback - # - langfuse_host: The host for the Langfuse callback - # - gcs_bucket_name: The name of the GCS bucket - # - gcs_path_service_account: The path to the GCS service account - # - langsmith_api_key: The API key for the Langsmith callback - # - langsmith_project: The project for the Langsmith callback - # - langsmith_base_url: The base URL for the Langsmith callback + # - callback_name (Literal["langfuse", "langsmith", "gcs"], required): The name of + # the callback to add + # - callback_type (Literal["success", "failure", "success_and_failure"], + # required): The type of callback to add. One of: + # - "success": Callback for successful LLM calls + # - "failure": Callback for failed LLM calls + # - "success_and_failure": Callback for both successful and failed LLM calls + # - callback_vars (StandardCallbackDynamicParams, required): A dictionary of + # variables to pass to the callback + # - langfuse_public_key: The public key for the Langfuse callback + # - langfuse_secret_key: The secret key for the Langfuse callback + # - langfuse_secret: The secret for the Langfuse callback + # - langfuse_host: The host for the Langfuse callback + # - gcs_bucket_name: The name of the GCS bucket + # - gcs_path_service_account: The path to the GCS service account + # - langsmith_api_key: The API key for the Langsmith callback + # - langsmith_project: The project for the Langsmith callback + # - langsmith_base_url: The base URL for the Langsmith callback # - # Example curl: + # Example curl: # - # ``` - # curl -X POST 'http:/localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Content-Type: application/json' -H 'Authorization: Bearer sk-1234' -d '{ - # "callback_name": "langfuse", - # "callback_type": "success", - # "callback_vars": {"langfuse_public_key": "pk-lf-xxxx1", "langfuse_secret_key": "sk-xxxxx"} + # ``` + # curl -X POST 'http:/localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/callback' -H 'Content-Type: application/json' -H 'Authorization: Bearer sk-1234' -d '{ + # "callback_name": "langfuse", + # "callback_type": "success", + # "callback_vars": {"langfuse_public_key": "pk-lf-xxxx1", "langfuse_secret_key": "sk-xxxxx"} # - # }' - # ``` + # }' + # ``` # - # This means for the team where team_id = dbe2f686-a686-4896-864a-4c3924458709, - # all LLM calls will be logged to langfuse using the public key pk-lf-xxxx1 and - # the secret key sk-xxxxx + # This means for the team where team_id = dbe2f686-a686-4896-864a-4c3924458709, + # all LLM calls will be logged to langfuse using the public key pk-lf-xxxx1 and + # the secret key sk-xxxxx sig do params( team_id: String, @@ -93,8 +93,8 @@ module Hanzoai # Body param: callback_type: nil, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/resources/team/model.rbi b/rbi/lib/hanzoai/resources/team/model.rbi index d7d91251..1b95d905 100644 --- a/rbi/lib/hanzoai/resources/team/model.rbi +++ b/rbi/lib/hanzoai/resources/team/model.rbi @@ -5,21 +5,21 @@ module Hanzoai class Team class Model # Add models to a team's allowed model list. Only proxy admin or team admin can - # add models. + # add models. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The team to add models to - # - models: List[str] - Required. List of models to add to the team + # - team_id: str - Required. The team to add models to + # - models: List[str] - Required. List of models to add to the team # - # Example Request: + # Example Request: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/model/add' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234", - # "models": ["gpt-4", "claude-2"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/model/add' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234", + # "models": ["gpt-4", "claude-2"] + # }' + # ``` sig do params( models: T::Array[String], @@ -31,21 +31,21 @@ module Hanzoai def add(models:, team_id:, request_options: {}); end # Remove models from a team's allowed model list. Only proxy admin or team admin - # can remove models. + # can remove models. # - # Parameters: + # Parameters: # - # - team_id: str - Required. The team to remove models from - # - models: List[str] - Required. List of models to remove from the team + # - team_id: str - Required. The team to remove models from + # - models: List[str] - Required. List of models to remove from the team # - # Example Request: + # Example Request: # - # ``` - # curl --location 'http://0.0.0.0:4000/team/model/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "team_id": "team-1234", - # "models": ["gpt-4"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/team/model/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "team_id": "team-1234", + # "models": ["gpt-4"] + # }' + # ``` sig do params( models: T::Array[String], diff --git a/rbi/lib/hanzoai/resources/test.rbi b/rbi/lib/hanzoai/resources/test.rbi index 6dcc0e30..76f31213 100644 --- a/rbi/lib/hanzoai/resources/test.rbi +++ b/rbi/lib/hanzoai/resources/test.rbi @@ -5,11 +5,11 @@ module Hanzoai class Test # [DEPRECATED] use `/health/liveliness` instead. # - # A test endpoint that pings the proxy server to check if it's healthy. + # A test endpoint that pings the proxy server to check if it's healthy. # - # Parameters: request (Request): The incoming request. + # Parameters: request (Request): The incoming request. # - # Returns: dict: A dictionary containing the route of the request URL. + # Returns: dict: A dictionary containing the route of the request URL. sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/threads.rbi b/rbi/lib/hanzoai/resources/threads.rbi index 6582d108..506eed66 100644 --- a/rbi/lib/hanzoai/resources/threads.rbi +++ b/rbi/lib/hanzoai/resources/threads.rbi @@ -11,8 +11,8 @@ module Hanzoai # Create a thread. # - # API Reference - - # https://platform.openai.com/docs/api-reference/threads/createThread + # API Reference - + # https://platform.openai.com/docs/api-reference/threads/createThread sig do params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) .returns(T.anything) @@ -21,7 +21,7 @@ module Hanzoai # Retrieves a thread. # - # API Reference - https://platform.openai.com/docs/api-reference/threads/getThread + # API Reference - https://platform.openai.com/docs/api-reference/threads/getThread sig do params( thread_id: String, diff --git a/rbi/lib/hanzoai/resources/threads/messages.rbi b/rbi/lib/hanzoai/resources/threads/messages.rbi index e1af53a9..980b3f1d 100644 --- a/rbi/lib/hanzoai/resources/threads/messages.rbi +++ b/rbi/lib/hanzoai/resources/threads/messages.rbi @@ -6,8 +6,8 @@ module Hanzoai class Messages # Create a message. # - # API Reference - - # https://platform.openai.com/docs/api-reference/messages/createMessage + # API Reference - + # https://platform.openai.com/docs/api-reference/messages/createMessage sig do params( thread_id: String, @@ -19,8 +19,8 @@ module Hanzoai # Returns a list of messages for a given thread. # - # API Reference - - # https://platform.openai.com/docs/api-reference/messages/listMessages + # API Reference - + # https://platform.openai.com/docs/api-reference/messages/listMessages sig do params( thread_id: String, diff --git a/rbi/lib/hanzoai/resources/threads/runs.rbi b/rbi/lib/hanzoai/resources/threads/runs.rbi index 57189a96..22b762a0 100644 --- a/rbi/lib/hanzoai/resources/threads/runs.rbi +++ b/rbi/lib/hanzoai/resources/threads/runs.rbi @@ -6,7 +6,7 @@ module Hanzoai class Runs # Create a run. # - # API Reference: https://platform.openai.com/docs/api-reference/runs/createRun + # API Reference: https://platform.openai.com/docs/api-reference/runs/createRun sig do params( thread_id: String, diff --git a/rbi/lib/hanzoai/resources/user.rbi b/rbi/lib/hanzoai/resources/user.rbi index 5abbd7da..d0cce8f7 100644 --- a/rbi/lib/hanzoai/resources/user.rbi +++ b/rbi/lib/hanzoai/resources/user.rbi @@ -4,87 +4,87 @@ module Hanzoai module Resources class User # Use this to create a new INTERNAL user with a budget. Internal Users can access - # LLM Admin UI to make keys, request access to models. This creates a new user and - # generates a new api key for the new user. The new api key is returned. + # LLM Admin UI to make keys, request access to models. This creates a new user and + # generates a new api key for the new user. The new api key is returned. # - # Returns user id, budget + new key. + # Returns user id, budget + new key. # - # Parameters: + # Parameters: # - # - user_id: Optional[str] - Specify a user id. If not set, a unique id will be - # generated. - # - user_alias: Optional[str] - A descriptive name for you to know who this user - # id refers to. - # - teams: Optional[list] - specify a list of team id's a user belongs to. - # - user_email: Optional[str] - Specify a user email. - # - send_invite_email: Optional[bool] - Specify if an invite email should be sent. - # - user_role: Optional[str] - Specify a user role - "proxy_admin", - # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", - # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - # - max_budget: Optional[float] - Specify max budget for a given user. - # - budget_duration: Optional[str] - Budget is reset at the end of specified - # duration. If not set, budget is never reset. You can set duration as seconds - # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, - # key is allowed to call all models). Set to ['no-default-models'] to block all - # model access. Restricting user to only team-based model access. - # - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per - # minute) - # - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per - # minute) - # - auto_create_key: bool - Default=True. Flag used for returning a key as part of - # the /user/new response - # - aliases: Optional[dict] - Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - # - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - # - allowed_cache_controls: Optional[list] - List of allowed cache control values. - # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - # - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - # - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active - # guardrails for the user - # - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, - # eg. turning off pii masking. - # - metadata: Optional[dict] - Metadata for user, store information for user. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } - # - max_parallel_requests: Optional[int] - Rate limit a user based on the number - # of parallel requests. Raises 429 error, if user's parallel requests > x. - # - soft_budget: Optional[float] - Get alerts when user crosses given budget, - # doesn't block requests. - # - model_max_budget: Optional[dict] - Model-specific max budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - # - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated - # by proxy whenever user is used. You can set duration as seconds ("30s"), - # minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - # - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default - # is None. - # - duration: Optional[str] - Duration for the key auto-created on `/user/new`. - # Default is None. - # - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. - # Default is None. + # - user_id: Optional[str] - Specify a user id. If not set, a unique id will be + # generated. + # - user_alias: Optional[str] - A descriptive name for you to know who this user + # id refers to. + # - teams: Optional[list] - specify a list of team id's a user belongs to. + # - user_email: Optional[str] - Specify a user email. + # - send_invite_email: Optional[bool] - Specify if an invite email should be sent. + # - user_role: Optional[str] - Specify a user role - "proxy_admin", + # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", + # "customer". Info about each role here: + # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` + # - max_budget: Optional[float] - Specify max budget for a given user. + # - budget_duration: Optional[str] - Budget is reset at the end of specified + # duration. If not set, budget is never reset. You can set duration as seconds + # ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). + # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, + # key is allowed to call all models). Set to ['no-default-models'] to block all + # model access. Restricting user to only team-based model access. + # - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per + # minute) + # - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per + # minute) + # - auto_create_key: bool - Default=True. Flag used for returning a key as part of + # the /user/new response + # - aliases: Optional[dict] - Model aliases for the user - + # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. + # - allowed_cache_controls: Optional[list] - List of allowed cache control values. + # Example - ["no-cache", "no-store"]. See all values - + # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- + # - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. + # - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active + # guardrails for the user + # - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, + # eg. turning off pii masking. + # - metadata: Optional[dict] - Metadata for user, store information for user. + # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" + # } + # - max_parallel_requests: Optional[int] - Rate limit a user based on the number + # of parallel requests. Raises 429 error, if user's parallel requests > x. + # - soft_budget: Optional[float] - Get alerts when user crosses given budget, + # doesn't block requests. + # - model_max_budget: Optional[dict] - Model-specific max budget for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) + # - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated + # by proxy whenever user is used. You can set duration as seconds ("30s"), + # minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). + # - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default + # is None. + # - duration: Optional[str] - Duration for the key auto-created on `/user/new`. + # Default is None. + # - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. + # Default is None. # - # Returns: + # Returns: # - # - key: (str) The generated api key for the user - # - expires: (datetime) Datetime object for when key expires. - # - user_id: (str) Unique user id - used for tracking spend across multiple keys - # for same user id. - # - max_budget: (float|None) Max budget for given user. + # - key: (str) The generated api key for the user + # - expires: (datetime) Datetime object for when key expires. + # - user_id: (str) Unique user id - used for tracking spend across multiple keys + # for same user id. + # - max_budget: (float|None) Max budget for given user. # - # Usage Example + # Usage Example # - # ```shell - # curl -X POST "http://localhost:4000/user/new" -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ - # "username": "new_user", - # "email": "new_user@example.com" - # }' - # ``` + # ```shell + # curl -X POST "http://localhost:4000/user/new" -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "username": "new_user", + # "email": "new_user@example.com" + # }' + # ``` sig do params( aliases: T.nilable(T.anything), @@ -150,60 +150,60 @@ module Hanzoai ); end # Example curl # - # ``` - # curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", - # "user_role": "proxy_admin_viewer" - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ + # "user_id": "test-llm-user-4", + # "user_role": "proxy_admin_viewer" + # }' + # ``` # - # Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique - # id will be generated. - user_email: Optional[str] - Specify a user email. - - # password: Optional[str] - Specify a user password. - user_alias: Optional[str] - - # A descriptive name for you to know who this user id refers to. - teams: - # Optional[list] - specify a list of team id's a user belongs to. - - # send_invite_email: Optional[bool] - Specify if an invite email should be sent. - - # user_role: Optional[str] - Specify a user role - "proxy_admin", - # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", - # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - max_budget: - # Optional[float] - Specify max budget for a given user. - budget_duration: - # Optional[str] - Budget is reset at the end of specified duration. If not set, - # budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), - # hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - - # Model_name's a user is allowed to call. (if empty, key is allowed to call all - # models) - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens - # per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user - # (Requests per minute) - auto_create_key: bool - Default=True. Flag used for - # returning a key as part of the /user/new response - aliases: Optional[dict] - - # Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: - # Optional[dict] - [DEPRECATED PARAM] User-specific config. - - # allowed_cache_controls: Optional[list] - List of allowed cache control values. - # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - - # blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - - # guardrails: Optional[List[str]] - [Not Implemented Yet] List of active - # guardrails for the user - permissions: Optional[dict] - [Not Implemented Yet] - # User-specific permissions, eg. turning off pii masking. - metadata: - # Optional[dict] - Metadata for user, store information for user. Example metadata - # = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" } - - # max_parallel_requests: Optional[int] - Rate limit a user based on the number of - # parallel requests. Raises 429 error, if user's parallel requests > x. - - # soft_budget: Optional[float] - Get alerts when user crosses given budget, - # doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max - # budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - - # model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - - # model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - - # spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by - # proxy whenever user is used. You can set duration as seconds ("30s"), minutes - # ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - team_id: Optional[str] - - # [DEPRECATED PARAM] The team id of the user. Default is None. - duration: - # Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT - # IMPLEMENTED]. + # Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique + # id will be generated. - user_email: Optional[str] - Specify a user email. - + # password: Optional[str] - Specify a user password. - user_alias: Optional[str] - + # A descriptive name for you to know who this user id refers to. - teams: + # Optional[list] - specify a list of team id's a user belongs to. - + # send_invite_email: Optional[bool] - Specify if an invite email should be sent. - + # user_role: Optional[str] - Specify a user role - "proxy_admin", + # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", + # "customer". Info about each role here: + # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - max_budget: + # Optional[float] - Specify max budget for a given user. - budget_duration: + # Optional[str] - Budget is reset at the end of specified duration. If not set, + # budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), + # hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - + # Model_name's a user is allowed to call. (if empty, key is allowed to call all + # models) - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens + # per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user + # (Requests per minute) - auto_create_key: bool - Default=True. Flag used for + # returning a key as part of the /user/new response - aliases: Optional[dict] - + # Model aliases for the user - + # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: + # Optional[dict] - [DEPRECATED PARAM] User-specific config. - + # allowed_cache_controls: Optional[list] - List of allowed cache control values. + # Example - ["no-cache", "no-store"]. See all values - + # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - + # blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - + # guardrails: Optional[List[str]] - [Not Implemented Yet] List of active + # guardrails for the user - permissions: Optional[dict] - [Not Implemented Yet] + # User-specific permissions, eg. turning off pii masking. - metadata: + # Optional[dict] - Metadata for user, store information for user. Example metadata + # = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" } - + # max_parallel_requests: Optional[int] - Rate limit a user based on the number of + # parallel requests. Raises 429 error, if user's parallel requests > x. - + # soft_budget: Optional[float] - Get alerts when user crosses given budget, + # doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max + # budget for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - + # model_rpm_limit: Optional[float] - Model-specific rpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # model_tpm_limit: Optional[float] - Model-specific tpm limit for user. + # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by + # proxy whenever user is used. You can set duration as seconds ("30s"), minutes + # ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - team_id: Optional[str] - + # [DEPRECATED PARAM] The team id of the user. Default is None. - duration: + # Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT + # IMPLEMENTED]. sig do params( aliases: T.nilable(T.anything), @@ -263,21 +263,21 @@ module Hanzoai ); end # Get a paginated list of users, optionally filtered by role. # - # Used by the UI to populate the user lists. + # Used by the UI to populate the user lists. # - # Parameters: role: Optional[str] Filter users by role. Can be one of: - - # proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer - # user_ids: Optional[str] Get list of users by user_ids. Comma separated list of - # user_ids. page: int The page number to return page_size: int The number of items - # per page + # Parameters: role: Optional[str] Filter users by role. Can be one of: - + # proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer + # user_ids: Optional[str] Get list of users by user_ids. Comma separated list of + # user_ids. page: int The page number to return page_size: int The number of items + # per page # - # Currently - admin-only endpoint. + # Currently - admin-only endpoint. # - # Example curl: + # Example curl: # - # ``` - # http://0.0.0.0:4000/user/list?user_ids=default_user_id,693c1a4a-1cc0-4c7c-afe8-b5d2c8d52e17 - # ``` + # ``` + # http://0.0.0.0:4000/user/list?user_ids=default_user_id,693c1a4a-1cc0-4c7c-afe8-b5d2c8d52e17 + # ``` sig do params( page: Integer, @@ -301,18 +301,18 @@ module Hanzoai ); end # delete user and associated user keys # - # ``` - # curl --location 'http://0.0.0.0:4000/user/delete' - # --header 'Authorization: Bearer sk-1234' - # --header 'Content-Type: application/json' - # --data-raw '{ - # "user_ids": ["45e3e396-ee08-4a61-a88e-16b3ce7e0849"] - # }' - # ``` + # ``` + # curl --location 'http://0.0.0.0:4000/user/delete' + # --header 'Authorization: Bearer sk-1234' + # --header 'Content-Type: application/json' + # --data-raw '{ + # "user_ids": ["45e3e396-ee08-4a61-a88e-16b3ce7e0849"] + # }' + # ``` # - # Parameters: + # Parameters: # - # - user_ids: List[str] - The list of user id's to be deleted. + # - user_ids: List[str] - The list of user id's to be deleted. sig do params( user_ids: T::Array[String], @@ -325,20 +325,20 @@ module Hanzoai # Body param: user_ids:, # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability + # authorized users on behalf of other users, providing an audit trail for + # accountability llm_changed_by: nil, request_options: {} ); end # [10/07/2024] Note: To get all users (+pagination), use `/user/list` endpoint. # - # Use this to get user information. (user row + all user key info) + # Use this to get user information. (user row + all user key info) # - # Example request + # Example request # - # ``` - # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' + # ``` sig do params( user_id: T.nilable(String), diff --git a/rbi/lib/hanzoai/resources/utils.rbi b/rbi/lib/hanzoai/resources/utils.rbi index 2c0ae394..32136e4f 100644 --- a/rbi/lib/hanzoai/resources/utils.rbi +++ b/rbi/lib/hanzoai/resources/utils.rbi @@ -5,13 +5,13 @@ module Hanzoai class Utils # Returns supported openai params for a given llm model name # - # e.g. `gpt-4` vs `gpt-3.5-turbo` + # e.g. `gpt-4` vs `gpt-3.5-turbo` # - # Example curl: + # Example curl: # - # ``` - # curl -X GET --location 'http://localhost:4000/utils/supported_openai_params?model=gpt-3.5-turbo-16k' --header 'Authorization: Bearer sk-1234' - # ``` + # ``` + # curl -X GET --location 'http://localhost:4000/utils/supported_openai_params?model=gpt-3.5-turbo-16k' --header 'Authorization: Bearer sk-1234' + # ``` sig do params( model: String, diff --git a/rbi/lib/hanzoai/resources/vertex_ai.rbi b/rbi/lib/hanzoai/resources/vertex_ai.rbi index 83be29d4..9a51cb4e 100644 --- a/rbi/lib/hanzoai/resources/vertex_ai.rbi +++ b/rbi/lib/hanzoai/resources/vertex_ai.rbi @@ -5,7 +5,7 @@ module Hanzoai class VertexAI # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -17,7 +17,7 @@ module Hanzoai # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -29,7 +29,7 @@ module Hanzoai # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -41,7 +41,7 @@ module Hanzoai # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -53,7 +53,7 @@ module Hanzoai # Call LLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, From 749dd9794af17b1257cb859e3e4d410ba1954833 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 04:30:08 +0000 Subject: [PATCH 011/139] chore(internal): more concise handling of parameter naming conflicts (#53) --- lib/hanzoai/internal/type/base_model.rb | 9 +++------ lib/hanzoai/models/key_block_params.rb | 2 +- lib/hanzoai/models/key_delete_params.rb | 2 +- lib/hanzoai/models/key_generate_params.rb | 2 +- lib/hanzoai/models/key_regenerate_by_key_params.rb | 2 +- lib/hanzoai/models/key_unblock_params.rb | 2 +- lib/hanzoai/models/key_update_params.rb | 2 +- lib/hanzoai/models/team/callback_add_params.rb | 2 +- lib/hanzoai/models/team_create_params.rb | 2 +- lib/hanzoai/models/team_delete_params.rb | 2 +- lib/hanzoai/models/team_update_params.rb | 2 +- lib/hanzoai/models/user_delete_params.rb | 2 +- lib/hanzoai/resources/customer.rb | 4 ++-- lib/hanzoai/resources/key.rb | 2 +- 14 files changed, 17 insertions(+), 20 deletions(-) diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 7845d613..e54f1c84 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -265,7 +265,6 @@ def dump(value) return super end - is_param = singleton_class <= Hanzoai::Internal::Type::RequestParameters::Converter acc = {} coerced.each do |key, val| @@ -274,21 +273,19 @@ def dump(value) in nil acc.store(name, super(val)) else - mode, type_fn = field.fetch_values(:mode, :type_fn) + api_name, mode, type_fn = field.fetch_values(:api_name, :mode, :type_fn) case mode in :coerce next else target = type_fn.call - api_name = is_param ? name : field.fetch(:api_name) acc.store(api_name, Hanzoai::Internal::Type::Converter.dump(target, val)) end end end - known_fields.each do |name, field| - mode, const = field.fetch_values(:mode, :const) - api_name = is_param ? name : field.fetch(:api_name) + known_fields.each_value do |field| + api_name, mode, const = field.fetch_values(:api_name, :mode, :const) next if mode == :coerce || acc.key?(api_name) || const == Hanzoai::Internal::OMIT acc.store(api_name, const) end diff --git a/lib/hanzoai/models/key_block_params.rb b/lib/hanzoai/models/key_block_params.rb index 594a13b4..876f2a31 100644 --- a/lib/hanzoai/models/key_block_params.rb +++ b/lib/hanzoai/models/key_block_params.rb @@ -13,7 +13,7 @@ class KeyBlockParams < Hanzoai::Models::BlockKeyRequest # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/key_delete_params.rb b/lib/hanzoai/models/key_delete_params.rb index cff620bb..87e4db3c 100644 --- a/lib/hanzoai/models/key_delete_params.rb +++ b/lib/hanzoai/models/key_delete_params.rb @@ -23,7 +23,7 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index 7b674430..410b46e9 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -150,7 +150,7 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/key_regenerate_by_key_params.rb b/lib/hanzoai/models/key_regenerate_by_key_params.rb index 9ab33d64..2756b029 100644 --- a/lib/hanzoai/models/key_regenerate_by_key_params.rb +++ b/lib/hanzoai/models/key_regenerate_by_key_params.rb @@ -13,7 +13,7 @@ class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/key_unblock_params.rb b/lib/hanzoai/models/key_unblock_params.rb index 5069cb7c..24c3ddbb 100644 --- a/lib/hanzoai/models/key_unblock_params.rb +++ b/lib/hanzoai/models/key_unblock_params.rb @@ -13,7 +13,7 @@ class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index 3e65bab2..c40dd4f4 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -150,7 +150,7 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index cebdba48..52f6847e 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -29,7 +29,7 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index 7034c87d..263ebe6b 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -113,7 +113,7 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/team_delete_params.rb b/lib/hanzoai/models/team_delete_params.rb index 214b4c64..20b8d1c2 100644 --- a/lib/hanzoai/models/team_delete_params.rb +++ b/lib/hanzoai/models/team_delete_params.rb @@ -18,7 +18,7 @@ class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index 61bcdfbf..fbd2211d 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -78,7 +78,7 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/models/user_delete_params.rb b/lib/hanzoai/models/user_delete_params.rb index 6cc1d5e3..641bf1c9 100644 --- a/lib/hanzoai/models/user_delete_params.rb +++ b/lib/hanzoai/models/user_delete_params.rb @@ -18,7 +18,7 @@ class UserDeleteParams < Hanzoai::Internal::Type::BaseModel # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] - optional :llm_changed_by, String, api_name: :"llm-changed-by" + optional :llm_changed_by, String # @!parse # # @return [String] diff --git a/lib/hanzoai/resources/customer.rb b/lib/hanzoai/resources/customer.rb index b542c519..22da3103 100644 --- a/lib/hanzoai/resources/customer.rb +++ b/lib/hanzoai/resources/customer.rb @@ -80,7 +80,7 @@ def create(params) @client.request( method: :post, path: "customer/new", - body: parsed.transform_keys(alias_: :alias), + body: parsed, model: Hanzoai::Internal::Type::Unknown, options: options ) @@ -130,7 +130,7 @@ def update(params) @client.request( method: :post, path: "customer/update", - body: parsed.transform_keys(alias_: :alias), + body: parsed, model: Hanzoai::Internal::Type::Unknown, options: options ) diff --git a/lib/hanzoai/resources/key.rb b/lib/hanzoai/resources/key.rb index 311575cd..c145ed7e 100644 --- a/lib/hanzoai/resources/key.rb +++ b/lib/hanzoai/resources/key.rb @@ -514,7 +514,7 @@ def regenerate_by_key(path_key, params = {}) method: :post, path: ["key/%1$s/regenerate", path_key], headers: parsed.slice(*header_params.keys).transform_keys(header_params), - body: parsed.except(*header_params.keys).transform_keys(body_key: :key), + body: parsed.except(*header_params.keys), model: Hanzoai::Models::GenerateKeyResponse, options: options ) From cf9868303ad8a4f354aeef968fb2efc5f4e1becf Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 9 Apr 2025 03:39:36 +0000 Subject: [PATCH 012/139] chore: make client tests look prettier (#54) --- test/hanzoai/client_test.rb | 45 ++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 18 deletions(-) diff --git a/test/hanzoai/client_test.rb b/test/hanzoai/client_test.rb index d8dc4b27..cd038cdd 100644 --- a/test/hanzoai/client_test.rb +++ b/test/hanzoai/client_test.rb @@ -165,7 +165,10 @@ def test_retry_count_header hanzo.get_home end - retry_count_headers = requester.attempts.map { _1[:headers]["x-stainless-retry-count"] } + retry_count_headers = requester.attempts.map do + _1.fetch(:headers).fetch("x-stainless-retry-count") + end + assert_equal(%w[0 1 2], retry_count_headers) end @@ -178,7 +181,10 @@ def test_omit_retry_count_header hanzo.get_home(request_options: {extra_headers: {"x-stainless-retry-count" => nil}}) end - retry_count_headers = requester.attempts.map { _1[:headers]["x-stainless-retry-count"] } + retry_count_headers = requester.attempts.map do + _1.fetch(:headers).fetch("x-stainless-retry-count", nil) + end + assert_equal([nil, nil, nil], retry_count_headers) end @@ -191,7 +197,10 @@ def test_overwrite_retry_count_header hanzo.get_home(request_options: {extra_headers: {"x-stainless-retry-count" => "42"}}) end - retry_count_headers = requester.attempts.map { _1[:headers]["x-stainless-retry-count"] } + retry_count_headers = requester.attempts.map do + _1.fetch(:headers).fetch("x-stainless-retry-count") + end + assert_equal(%w[42 42 42], retry_count_headers) end @@ -204,12 +213,12 @@ def test_client_redirect_307 hanzo.get_home(request_options: {extra_headers: {}}) end - assert_equal("/redirected", requester.attempts.last[:url].path) - assert_equal(requester.attempts.first[:method], requester.attempts.last[:method]) - assert_equal(requester.attempts.first[:body], requester.attempts.last[:body]) + 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[:headers]["content-type"], - requester.attempts.last[:headers]["content-type"] + requester.attempts.first.fetch(:headers)["content-type"], + requester.attempts.last.fetch(:headers)["content-type"] ) end @@ -222,10 +231,10 @@ def test_client_redirect_303 hanzo.get_home(request_options: {extra_headers: {}}) end - assert_equal("/redirected", requester.attempts.last[:url].path) - assert_equal(:get, requester.attempts.last[:method]) - assert_nil(requester.attempts.last[:body]) - assert_nil(requester.attempts.last[:headers]["Content-Type"]) + 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"]) end def test_client_redirect_auth_keep_same_origin @@ -234,12 +243,12 @@ def test_client_redirect_auth_keep_same_origin hanzo.requester = requester assert_raises(Hanzoai::Errors::APIConnectionError) do - hanzo.get_home(request_options: {extra_headers: {"Authorization" => "Bearer xyz"}}) + hanzo.get_home(request_options: {extra_headers: {"authorization" => "Bearer xyz"}}) end assert_equal( - requester.attempts.first[:headers]["authorization"], - requester.attempts.last[:headers]["authorization"] + requester.attempts.first.fetch(:headers)["authorization"], + requester.attempts.last.fetch(:headers)["authorization"] ) end @@ -249,10 +258,10 @@ def test_client_redirect_auth_strip_cross_origin hanzo.requester = requester assert_raises(Hanzoai::Errors::APIConnectionError) do - hanzo.get_home(request_options: {extra_headers: {"Authorization" => "Bearer xyz"}}) + hanzo.get_home(request_options: {extra_headers: {"authorization" => "Bearer xyz"}}) end - assert_nil(requester.attempts.last[:headers]["Authorization"]) + assert_nil(requester.attempts.last.fetch(:headers)["authorization"]) end def test_default_headers @@ -260,7 +269,7 @@ def test_default_headers requester = MockRequester.new(200, {}, {}) hanzo.requester = requester hanzo.get_home - headers = requester.attempts.first[:headers] + headers = requester.attempts.first.fetch(:headers) refute_empty(headers["accept"]) refute_empty(headers["content-type"]) From c9b1d3bb58013716a3b895e320f6f705a018fe63 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 9 Apr 2025 03:43:56 +0000 Subject: [PATCH 013/139] chore: add README docs for using solargraph when installing gem from git (#55) --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index 9e7314f3..f442f2d3 100644 --- a/README.md +++ b/README.md @@ -124,6 +124,13 @@ After Solargraph is installed, **you must populate its index** either via the pr bundle exec solargraph gems ``` +Note: if you had installed the gem either using a `git:` or `github:` URL, or had vendored the gem using bundler, you will need to set up your [`.solargraph.yml`](https://solargraph.org/guides/configuration) to include the path to the gem's `lib` directory. + +```yaml +include: + - 'vendor/bundle/ruby/*/gems/hanzoai-*/lib/**/*.rb' +``` + Otherwise Solargraph will not be able to provide type information or auto-completion for any non-indexed libraries. ### Sorbet From d215aeeb2e900a30c0a7035015a621e60ced033e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 9 Apr 2025 03:45:23 +0000 Subject: [PATCH 014/139] feat: use Pathname alongside raw IO handles for file uploads (#56) --- README.md | 17 +++ lib/hanzoai.rb | 1 + .../transport/pooled_net_requester.rb | 11 +- lib/hanzoai/internal/type/array_of.rb | 8 +- lib/hanzoai/internal/type/base_model.rb | 14 ++- lib/hanzoai/internal/type/boolean.rb | 6 +- lib/hanzoai/internal/type/converter.rb | 35 ++++-- lib/hanzoai/internal/type/enum.rb | 6 +- lib/hanzoai/internal/type/hash_of.rb | 8 +- lib/hanzoai/internal/type/io_like.rb | 75 +++++++++++++ .../internal/type/request_parameters.rb | 13 ++- lib/hanzoai/internal/type/union.rb | 10 +- lib/hanzoai/internal/type/unknown.rb | 6 +- lib/hanzoai/internal/util.rb | 101 ++++++++++++++---- .../audio/transcription_create_params.rb | 6 +- lib/hanzoai/models/file_create_params.rb | 6 +- lib/hanzoai/resources/audio/transcriptions.rb | 2 +- lib/hanzoai/resources/files.rb | 2 +- .../transport/pooled_net_requester.rbi | 2 +- rbi/lib/hanzoai/internal/type/array_of.rbi | 16 +-- rbi/lib/hanzoai/internal/type/base_model.rbi | 10 +- rbi/lib/hanzoai/internal/type/boolean.rbi | 16 ++- rbi/lib/hanzoai/internal/type/converter.rbi | 30 ++++-- rbi/lib/hanzoai/internal/type/enum.rbi | 10 +- rbi/lib/hanzoai/internal/type/hash_of.rbi | 9 +- rbi/lib/hanzoai/internal/type/io_like.rbi | 49 +++++++++ rbi/lib/hanzoai/internal/type/union.rbi | 16 +-- rbi/lib/hanzoai/internal/type/unknown.rbi | 16 +-- rbi/lib/hanzoai/internal/util.rbi | 39 ++++++- .../audio/transcription_create_params.rbi | 6 +- rbi/lib/hanzoai/models/file_create_params.rbi | 6 +- .../resources/audio/transcriptions.rbi | 2 +- rbi/lib/hanzoai/resources/files.rbi | 2 +- .../transport/pooled_net_requester.rbs | 2 +- sig/hanzoai/internal/type/array_of.rbs | 7 +- sig/hanzoai/internal/type/base_model.rbs | 7 +- sig/hanzoai/internal/type/boolean.rbs | 7 +- sig/hanzoai/internal/type/converter.rbs | 16 ++- sig/hanzoai/internal/type/enum.rbs | 7 +- sig/hanzoai/internal/type/hash_of.rbs | 7 +- sig/hanzoai/internal/type/io_like.rbs | 23 ++++ sig/hanzoai/internal/type/union.rbs | 7 +- sig/hanzoai/internal/type/unknown.rbs | 7 +- sig/hanzoai/internal/util.rbs | 19 +++- .../audio/transcription_create_params.rbs | 7 +- sig/hanzoai/models/file_create_params.rbs | 10 +- .../resources/audio/transcriptions.rbs | 2 +- sig/hanzoai/resources/files.rbs | 2 +- test/hanzoai/internal/type/base_model_test.rb | 32 +++++- test/hanzoai/internal/util_test.rb | 18 ++-- .../resources/audio/transcriptions_test.rb | 2 +- test/hanzoai/resources/files_test.rb | 2 +- 52 files changed, 588 insertions(+), 152 deletions(-) create mode 100644 lib/hanzoai/internal/type/io_like.rb create mode 100644 rbi/lib/hanzoai/internal/type/io_like.rbi create mode 100644 sig/hanzoai/internal/type/io_like.rbs diff --git a/README.md b/README.md index f442f2d3..f4cfce1a 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,23 @@ response = hanzo.get_home puts(response) ``` +## 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. + +```ruby +require "pathname" + +# using `Pathname`, the file will be lazily read, without reading everything in to memory +transcription = hanzo.audio.transcriptions.create(file: Pathname("/path/to/file")) + +file = File.read("/path/to/file") +# using `StringIO`, useful if you already have the data in memory +transcription = hanzo.audio.transcriptions.create(file: StringIO.new(file)) + +puts(transcription) +``` + ### Errors When the library is unable to connect to the API, or if the API returns a non-success status code (i.e., 4xx or 5xx response), a subclass of `Hanzoai::Error` will be thrown: diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index 3762431e..483bcadc 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -40,6 +40,7 @@ require_relative "hanzoai/internal/type/converter" require_relative "hanzoai/internal/type/unknown" require_relative "hanzoai/internal/type/boolean" +require_relative "hanzoai/internal/type/io_like" require_relative "hanzoai/internal/type/enum" require_relative "hanzoai/internal/type/union" require_relative "hanzoai/internal/type/array_of" diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 8c7ce21e..26093bb1 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -54,7 +54,7 @@ def calibrate_socket_timeout(conn, deadline) # @param blk [Proc] # # @yieldparam [String] - # @return [Net::HTTPGenericRequest] + # @return [Array(Net::HTTPGenericRequest, Proc)] def build_request(request, &blk) method, url, headers, body = request.fetch_values(:method, :url, :headers, :body) req = Net::HTTPGenericRequest.new( @@ -75,12 +75,12 @@ def build_request(request, &blk) in StringIO req["content-length"] ||= body.size.to_s unless req["transfer-encoding"] req.body_stream = Hanzoai::Internal::Util::ReadIOAdapter.new(body, &blk) - in IO | Enumerator + in Pathname | IO | Enumerator req["transfer-encoding"] ||= "chunked" unless req["content-length"] req.body_stream = Hanzoai::Internal::Util::ReadIOAdapter.new(body, &blk) end - req + [req, req.body_stream&.method(:close)] end end @@ -125,11 +125,12 @@ def execute(request) eof = false finished = false + closing = nil enum = Enumerator.new do |y| with_pool(url, deadline: deadline) do |conn| next if finished - req = self.class.build_request(request) do + req, closing = self.class.build_request(request) do self.class.calibrate_socket_timeout(conn, deadline) end @@ -165,7 +166,9 @@ def execute(request) rescue StopIteration nil end + ensure conn.finish if !eof && conn&.started? + closing&.call end [Integer(response.code), response, (response.body = body)] end diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index eeebe675..0c47f0a4 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -79,12 +79,16 @@ def coerce(value, state:) # # @param value [Array, Object] # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # # @return [Array, Object] - def dump(value) + def dump(value, state:) target = item_type if value.is_a?(Array) value.map do - Hanzoai::Internal::Type::Converter.dump(target, _1) + Hanzoai::Internal::Type::Converter.dump(target, _1, state: state) end else super diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index e54f1c84..b21c69b0 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -259,8 +259,12 @@ def coerce(value, state:) # # @param value [Hanzoai::Internal::Type::BaseModel, Object] # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # # @return [Hash{Object=>Object}, Object] - def dump(value) + def dump(value, state:) unless (coerced = Hanzoai::Internal::Util.coerce_hash(value)).is_a?(Hash) return super end @@ -271,7 +275,7 @@ def dump(value) name = key.is_a?(String) ? key.to_sym : key case (field = known_fields[name]) in nil - acc.store(name, super(val)) + acc.store(name, super(val, state: state)) else api_name, mode, type_fn = field.fetch_values(:api_name, :mode, :type_fn) case mode @@ -279,7 +283,7 @@ def dump(value) next else target = type_fn.call - acc.store(api_name, Hanzoai::Internal::Type::Converter.dump(target, val)) + acc.store(api_name, Hanzoai::Internal::Type::Converter.dump(target, val, state: state)) end end end @@ -344,12 +348,12 @@ def deconstruct_keys(keys) # @param a [Object] # # @return [String] - def to_json(*a) = self.class.dump(self).to_json(*a) + def to_json(*a) = Hanzoai::Internal::Type::Converter.dump(self.class, self).to_json(*a) # @param a [Object] # # @return [String] - def to_yaml(*a) = self.class.dump(self).to_yaml(*a) + def to_yaml(*a) = Hanzoai::Internal::Type::Converter.dump(self.class, self).to_yaml(*a) # Create a new instance of a model. # diff --git a/lib/hanzoai/internal/type/boolean.rb b/lib/hanzoai/internal/type/boolean.rb index f383aa8b..f523d02e 100644 --- a/lib/hanzoai/internal/type/boolean.rb +++ b/lib/hanzoai/internal/type/boolean.rb @@ -45,8 +45,12 @@ def coerce(value, state:) # # # # @param value [Boolean, Object] # # + # # @param state [Hash{Symbol=>Object}] . + # # + # # @option state [Boolean] :can_retry + # # # # @return [Boolean, Object] - # def dump(value) = super + # def dump(value, state:) = super end end end diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index a7b44aef..b34aec6f 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -26,15 +26,24 @@ def coerce(value, state:) = (raise NotImplementedError) # # @param value [Object] # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # # @return [Object] - def dump(value) + def dump(value, state:) case value in Array - value.map { Hanzoai::Internal::Type::Unknown.dump(_1) } + value.map { Hanzoai::Internal::Type::Unknown.dump(_1, state: state) } in Hash - value.transform_values { Hanzoai::Internal::Type::Unknown.dump(_1) } + value.transform_values { Hanzoai::Internal::Type::Unknown.dump(_1, state: state) } in Hanzoai::Internal::Type::BaseModel - value.class.dump(value) + value.class.dump(value, state: state) + in StringIO + value.string + in Pathname | IO + state[:can_retry] = false if value.is_a?(IO) + Hanzoai::Internal::Util::SerializationAdapter.new(value) else value end @@ -182,7 +191,7 @@ def coerce( rescue ArgumentError, TypeError => e raise e if strictness == :strong end - in -> { _1 <= IO } if value.is_a?(String) + in -> { _1 <= StringIO } if value.is_a?(String) exactness[:yes] += 1 return StringIO.new(value.b) else @@ -207,13 +216,21 @@ def coerce( # @api private # # @param target [Hanzoai::Internal::Type::Converter, Class] + # # @param value [Object] # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # # @return [Object] - def dump(target, value) - # rubocop:disable Layout/LineLength - target.is_a?(Hanzoai::Internal::Type::Converter) ? target.dump(value) : Hanzoai::Internal::Type::Unknown.dump(value) - # rubocop:enable Layout/LineLength + def dump(target, value, state: {can_retry: true}) + case target + in Hanzoai::Internal::Type::Converter + target.dump(value, state: state) + else + Hanzoai::Internal::Type::Unknown.dump(value, state: state) + end end end end diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index e3efcf6f..7ccfa64c 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -76,8 +76,12 @@ def coerce(value, state:) # # # # @param value [Symbol, Object] # # + # # @param state [Hash{Symbol=>Object}] . + # # + # # @option state [Boolean] :can_retry + # # # # @return [Symbol, Object] - # def dump(value) = super + # def dump(value, state:) = super end end end diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index 3ac6b5c6..0962ac37 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -99,12 +99,16 @@ def coerce(value, state:) # # @param value [Hash{Object=>Object}, Object] # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # # @return [Hash{Symbol=>Object}, Object] - def dump(value) + def dump(value, state:) target = item_type if value.is_a?(Hash) value.transform_values do - Hanzoai::Internal::Type::Converter.dump(target, _1) + Hanzoai::Internal::Type::Converter.dump(target, _1, state: state) end else super diff --git a/lib/hanzoai/internal/type/io_like.rb b/lib/hanzoai/internal/type/io_like.rb new file mode 100644 index 00000000..b6a67bce --- /dev/null +++ b/lib/hanzoai/internal/type/io_like.rb @@ -0,0 +1,75 @@ +# frozen_string_literal: true + +module Hanzoai + module Internal + module Type + # @api private + # + # @abstract + # + # Either `Pathname` or `StringIO`. + class IOLike + extend Hanzoai::Internal::Type::Converter + + # @param other [Object] + # + # @return [Boolean] + def self.===(other) + case other + in StringIO | Pathname | IO + true + else + false + end + end + + # @param other [Object] + # + # @return [Boolean] + def self.==(other) = other.is_a?(Class) && other <= Hanzoai::Internal::Type::IOLike + + class << self + # @api private + # + # @param value [StringIO, String, Object] + # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean, :strong] :strictness + # + # @option state [Hash{Symbol=>Object}] :exactness + # + # @option state [Integer] :branched + # + # @return [StringIO, Object] + def coerce(value, state:) + exactness = state.fetch(:exactness) + case value + in String + exactness[:yes] += 1 + StringIO.new(value) + in StringIO + exactness[:yes] += 1 + value + else + exactness[:no] += 1 + value + 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 + end + end + end + end +end diff --git a/lib/hanzoai/internal/type/request_parameters.rb b/lib/hanzoai/internal/type/request_parameters.rb index 411bbcc4..4332f065 100644 --- a/lib/hanzoai/internal/type/request_parameters.rb +++ b/lib/hanzoai/internal/type/request_parameters.rb @@ -26,9 +26,18 @@ module Converter # # @return [Array(Object, Hash{Symbol=>Object})] def dump_request(params) - case (dumped = dump(params)) + state = {can_retry: true} + case (dumped = dump(params, state: state)) in Hash - [dumped.except(:request_options), dumped[:request_options]] + options = Hanzoai::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 + [dumped.except(:request_options), request_options] else [dumped, nil] end diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 1b4ed530..549ba69a 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -165,15 +165,19 @@ def coerce(value, state:) # # @param value [Object] # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # # @return [Object] - def dump(value) + def dump(value, state:) if (target = resolve_variant(value)) - return Hanzoai::Internal::Type::Converter.dump(target, value) + return Hanzoai::Internal::Type::Converter.dump(target, value, state: state) end known_variants.each do target = _2.call - return Hanzoai::Internal::Type::Converter.dump(target, value) if target === value + return Hanzoai::Internal::Type::Converter.dump(target, value, state: state) if target === value end super diff --git a/lib/hanzoai/internal/type/unknown.rb b/lib/hanzoai/internal/type/unknown.rb index d5b23db2..22ad6285 100644 --- a/lib/hanzoai/internal/type/unknown.rb +++ b/lib/hanzoai/internal/type/unknown.rb @@ -47,8 +47,12 @@ def coerce(value, state:) # # # # @param value [Object] # # + # # @param state [Hash{Symbol=>Object}] . + # # + # # @option state [Boolean] :can_retry + # # # # @return [Object] - # def dump(value) = super + # def dump(value, state:) = super end # rubocop:enable Lint/UnusedMethodArgument diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 9655a7ef..f728c55c 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -122,7 +122,7 @@ def coerce_float(input) # @return [Hash{Object=>Object}, Object] def coerce_hash(input) case input - in NilClass | Array | Set | Enumerator + in NilClass | Array | Set | Enumerator | StringIO | IO input else input.respond_to?(:to_h) ? input.to_h : input @@ -348,10 +348,47 @@ 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` class ReadIOAdapter + # @api private + # + # @return [Boolean, nil] + def close? = @closing + + # @api private + def close + case @stream + in Enumerator + Hanzoai::Internal::Util.close_fused!(@stream) + in IO if close? + @stream.close + else + end + end + # @api private # # @param max_len [Integer, nil] @@ -396,12 +433,21 @@ def read(max_len = nil, out_string = nil) # @api private # - # @param stream [String, IO, StringIO, Enumerable] + # @param src [String, Pathname, StringIO, Enumerable] # @param blk [Proc] # # @yieldparam [String] - def initialize(stream, &blk) - @stream = stream.is_a?(String) ? StringIO.new(stream) : stream + def initialize(src, &blk) + @stream = + case src + in String + StringIO.new(src) + in Pathname + @closing = true + src.open(binmode: true) + else + src + end @buf = String.new.b @blk = blk end @@ -414,9 +460,10 @@ class << self # @return [Enumerable] def writable_enum(&blk) Enumerator.new do |y| + buf = String.new.b y.define_singleton_method(:write) do - self << _1.clone - _1.bytesize + self << buf.replace(_1) + buf.bytesize end blk.call(y) @@ -431,29 +478,39 @@ class << self # @param boundary [String] # @param key [Symbol, String] # @param val [Object] - private def write_multipart_chunk(y, boundary:, key:, val:) + # @param closing [Array] + private def write_multipart_chunk(y, boundary:, key:, val:, closing:) + val = val.inner if val.is_a?(Hanzoai::Internal::Util::SerializationAdapter) + y << "--#{boundary}\r\n" y << "Content-Disposition: form-data" unless key.nil? name = ERB::Util.url_encode(key.to_s) y << "; name=\"#{name}\"" end - if val.is_a?(IO) + 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 Pathname + y << "Content-Type: application/octet-stream\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" - IO.copy_stream(val.tap(&:rewind), y) + IO.copy_stream(val, y) in StringIO y << "Content-Type: application/octet-stream\r\n\r\n" y << val.string in String y << "Content-Type: application/octet-stream\r\n\r\n" y << val.to_s - in true | false | Integer | Float | Symbol + in _ if primitive?(val) y << "Content-Type: text/plain\r\n\r\n" y << val.to_s else @@ -471,6 +528,7 @@ class << self private def encode_multipart_streaming(body) boundary = SecureRandom.urlsafe_base64(60) + closing = [] strio = writable_enum do |y| case body in Hash @@ -478,19 +536,20 @@ class << self case val in Array if val.all? { primitive?(_1) } val.each do |v| - write_multipart_chunk(y, boundary: boundary, key: key, val: v) + write_multipart_chunk(y, boundary: boundary, key: key, val: v, closing: closing) end else - write_multipart_chunk(y, boundary: boundary, key: key, val: val) + write_multipart_chunk(y, boundary: boundary, key: key, val: val, closing: closing) end end else - write_multipart_chunk(y, boundary: boundary, key: nil, val: body) + write_multipart_chunk(y, boundary: boundary, key: nil, val: body, closing: closing) end y << "--#{boundary}--\r\n" end - [boundary, strio] + fused_io = fused_enum(strio) { closing.each(&:call) } + [boundary, fused_io] end # @api private @@ -501,21 +560,21 @@ class << self # @return [Object] def encode_content(headers, body) content_type = headers["content-type"] + body = body.inner if body.is_a?(Hanzoai::Internal::Util::SerializationAdapter) + case [content_type, body] - in [%r{^application/(?:vnd\.api\+)?json}, _] unless body.nil? + in [%r{^application/(?:vnd\.api\+)?json}, Hash | Array | -> { primitive?(_1) }] [headers, JSON.fast_generate(body)] - in [%r{^application/(?:x-)?jsonl}, Enumerable] + in [%r{^application/(?:x-)?jsonl}, Enumerable] unless body.is_a?(StringIO) || body.is_a?(IO) [headers, body.lazy.map { JSON.fast_generate(_1) }] - in [%r{^multipart/form-data}, Hash | IO | StringIO] + in [%r{^multipart/form-data}, Hash | Pathname | StringIO | IO] boundary, strio = encode_multipart_streaming(body) headers = {**headers, "content-type" => "#{content_type}; boundary=#{boundary}"} [headers, strio] - in [_, IO] - [headers, body.tap(&:rewind)] - in [_, StringIO] - [headers, body.string] in [_, Symbol | Numeric] [headers, body.to_s] + in [_, StringIO] + [headers, body.string] else [headers, body] end diff --git a/lib/hanzoai/models/audio/transcription_create_params.rb b/lib/hanzoai/models/audio/transcription_create_params.rb index 5288bef7..c5b97159 100644 --- a/lib/hanzoai/models/audio/transcription_create_params.rb +++ b/lib/hanzoai/models/audio/transcription_create_params.rb @@ -11,11 +11,11 @@ class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute file # - # @return [IO, StringIO] - required :file, IO + # @return [Pathname, StringIO] + required :file, Hanzoai::Internal::Type::IOLike # @!parse - # # @param file [IO, StringIO] + # # @param file [Pathname, StringIO] # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # # # def initialize(file:, request_options: {}, **) = super diff --git a/lib/hanzoai/models/file_create_params.rb b/lib/hanzoai/models/file_create_params.rb index 3abed68d..1c4cf8e2 100644 --- a/lib/hanzoai/models/file_create_params.rb +++ b/lib/hanzoai/models/file_create_params.rb @@ -10,8 +10,8 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute file # - # @return [IO, StringIO] - required :file, IO + # @return [Pathname, StringIO] + required :file, Hanzoai::Internal::Type::IOLike # @!attribute purpose # @@ -28,7 +28,7 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel # attr_writer :custom_llm_provider # @!parse - # # @param file [IO, StringIO] + # # @param file [Pathname, StringIO] # # @param purpose [String] # # @param custom_llm_provider [String] # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/resources/audio/transcriptions.rb b/lib/hanzoai/resources/audio/transcriptions.rb index 756f41ee..e7f14fca 100644 --- a/lib/hanzoai/resources/audio/transcriptions.rb +++ b/lib/hanzoai/resources/audio/transcriptions.rb @@ -10,7 +10,7 @@ class Transcriptions # # @overload create(file:, request_options: {}) # - # @param file [IO, StringIO] + # @param file [Pathname, StringIO] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/files.rb b/lib/hanzoai/resources/files.rb index 2c9c35aa..eb674fa6 100644 --- a/lib/hanzoai/resources/files.rb +++ b/lib/hanzoai/resources/files.rb @@ -22,7 +22,7 @@ class Files # @overload create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}) # # @param provider [String] - # @param file [IO, StringIO] + # @param file [Pathname, StringIO] # @param purpose [String] # @param custom_llm_provider [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi index bcd65532..6674a464 100644 --- a/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi +++ b/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi @@ -35,7 +35,7 @@ module Hanzoai request: Hanzoai::Internal::Transport::PooledNetRequester::RequestShape, blk: T.proc.params(arg0: String).void ) - .returns(Net::HTTPGenericRequest) + .returns([Net::HTTPGenericRequest, T.proc.void]) end def build_request(request, &blk); end end diff --git a/rbi/lib/hanzoai/internal/type/array_of.rbi b/rbi/lib/hanzoai/internal/type/array_of.rbi index ff71da5d..bb20fb00 100644 --- a/rbi/lib/hanzoai/internal/type/array_of.rbi +++ b/rbi/lib/hanzoai/internal/type/array_of.rbi @@ -36,11 +36,10 @@ module Hanzoai # @api private sig(:final) do override - .params(value: T.any( - T::Array[T.anything], - T.anything - ), - state: Hanzoai::Internal::Type::Converter::State) + .params( + value: T.any(T::Array[T.anything], T.anything), + state: Hanzoai::Internal::Type::Converter::CoerceState + ) .returns(T.any(T::Array[T.anything], T.anything)) end def coerce(value, state:); end @@ -48,10 +47,13 @@ module Hanzoai # @api private sig(:final) do override - .params(value: T.any(T::Array[T.anything], T.anything)) + .params( + value: T.any(T::Array[T.anything], T.anything), + state: Hanzoai::Internal::Type::Converter::DumpState + ) .returns(T.any(T::Array[T.anything], T.anything)) end - def dump(value); end + def dump(value, state:); end # @api private sig(:final) { returns(Elem) } diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index 082cf45d..29f55d06 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -122,7 +122,7 @@ module Hanzoai override .params( value: T.any(Hanzoai::Internal::Type::BaseModel, T::Hash[T.anything, T.anything], T.anything), - state: Hanzoai::Internal::Type::Converter::State + state: Hanzoai::Internal::Type::Converter::CoerceState ) .returns(T.any(T.attached_class, T.anything)) end @@ -131,10 +131,14 @@ module Hanzoai # @api private sig do override - .params(value: T.any(T.attached_class, T.anything)) + .params(value: T.any( + T.attached_class, + T.anything + ), + state: Hanzoai::Internal::Type::Converter::DumpState) .returns(T.any(T::Hash[T.anything, T.anything], T.anything)) end - def dump(value); end + def dump(value, state:); end end # Returns the raw value associated with the given key, if found. Otherwise, nil is diff --git a/rbi/lib/hanzoai/internal/type/boolean.rbi b/rbi/lib/hanzoai/internal/type/boolean.rbi index 8d3570e4..32323e79 100644 --- a/rbi/lib/hanzoai/internal/type/boolean.rbi +++ b/rbi/lib/hanzoai/internal/type/boolean.rbi @@ -22,16 +22,26 @@ module Hanzoai # @api private sig(:final) do override - .params(value: T.any(T::Boolean, T.anything), state: Hanzoai::Internal::Type::Converter::State) + .params(value: T.any( + T::Boolean, + T.anything + ), + state: Hanzoai::Internal::Type::Converter::CoerceState) .returns(T.any(T::Boolean, T.anything)) end def coerce(value, state:); end # @api private sig(:final) do - override.params(value: T.any(T::Boolean, T.anything)).returns(T.any(T::Boolean, T.anything)) + override + .params(value: T.any( + T::Boolean, + T.anything + ), + state: Hanzoai::Internal::Type::Converter::DumpState) + .returns(T.any(T::Boolean, T.anything)) end - def dump(value); end + def dump(value, state:); end end end end diff --git a/rbi/lib/hanzoai/internal/type/converter.rbi b/rbi/lib/hanzoai/internal/type/converter.rbi index 64e45217..37326b2c 100644 --- a/rbi/lib/hanzoai/internal/type/converter.rbi +++ b/rbi/lib/hanzoai/internal/type/converter.rbi @@ -7,7 +7,7 @@ module Hanzoai module Converter Input = T.type_alias { T.any(Hanzoai::Internal::Type::Converter, T::Class[T.anything]) } - State = + CoerceState = T.type_alias do { strictness: T.any(T::Boolean, Symbol), @@ -16,18 +16,23 @@ module Hanzoai } end + DumpState = T.type_alias { {can_retry: T::Boolean} } + # @api private sig do - overridable.params( - value: T.anything, - state: Hanzoai::Internal::Type::Converter::State - ).returns(T.anything) + overridable + .params(value: T.anything, state: Hanzoai::Internal::Type::Converter::CoerceState) + .returns(T.anything) end def coerce(value, state:); end # @api private - sig { overridable.params(value: T.anything).returns(T.anything) } - def dump(value); end + sig do + overridable + .params(value: T.anything, state: Hanzoai::Internal::Type::Converter::DumpState) + .returns(T.anything) + end + def dump(value, state:); end class << self # @api private @@ -62,7 +67,7 @@ module Hanzoai params( target: Hanzoai::Internal::Type::Converter::Input, value: T.anything, - state: Hanzoai::Internal::Type::Converter::State + state: Hanzoai::Internal::Type::Converter::CoerceState ) .returns(T.anything) end @@ -92,9 +97,14 @@ module Hanzoai ); end # @api private sig do - params(target: Hanzoai::Internal::Type::Converter::Input, value: T.anything).returns(T.anything) + params( + target: Hanzoai::Internal::Type::Converter::Input, + value: T.anything, + state: Hanzoai::Internal::Type::Converter::DumpState + ) + .returns(T.anything) end - def self.dump(target, value); end + def self.dump(target, value, state: {can_retry: true}); end end end end diff --git a/rbi/lib/hanzoai/internal/type/enum.rbi b/rbi/lib/hanzoai/internal/type/enum.rbi index 4f0d7715..cfad6038 100644 --- a/rbi/lib/hanzoai/internal/type/enum.rbi +++ b/rbi/lib/hanzoai/internal/type/enum.rbi @@ -45,14 +45,18 @@ module Hanzoai Symbol, T.anything ), - state: Hanzoai::Internal::Type::Converter::State) + state: Hanzoai::Internal::Type::Converter::CoerceState) .returns(T.any(Symbol, T.anything)) end def coerce(value, state:); end # @api private - sig { override.params(value: T.any(Symbol, T.anything)).returns(T.any(Symbol, T.anything)) } - def dump(value); end + sig do + override + .params(value: T.any(Symbol, T.anything), state: Hanzoai::Internal::Type::Converter::DumpState) + .returns(T.any(Symbol, T.anything)) + end + def dump(value, state:); end end end end diff --git a/rbi/lib/hanzoai/internal/type/hash_of.rbi b/rbi/lib/hanzoai/internal/type/hash_of.rbi index 86723940..cddfb080 100644 --- a/rbi/lib/hanzoai/internal/type/hash_of.rbi +++ b/rbi/lib/hanzoai/internal/type/hash_of.rbi @@ -38,7 +38,7 @@ module Hanzoai override .params( value: T.any(T::Hash[T.anything, T.anything], T.anything), - state: Hanzoai::Internal::Type::Converter::State + state: Hanzoai::Internal::Type::Converter::CoerceState ) .returns(T.any(Hanzoai::Internal::AnyHash, T.anything)) end @@ -47,10 +47,13 @@ module Hanzoai # @api private sig(:final) do override - .params(value: T.any(T::Hash[T.anything, T.anything], T.anything)) + .params( + value: T.any(T::Hash[T.anything, T.anything], T.anything), + state: Hanzoai::Internal::Type::Converter::DumpState + ) .returns(T.any(Hanzoai::Internal::AnyHash, T.anything)) end - def dump(value); end + def dump(value, state:); end # @api private sig(:final) { returns(Elem) } diff --git a/rbi/lib/hanzoai/internal/type/io_like.rbi b/rbi/lib/hanzoai/internal/type/io_like.rbi new file mode 100644 index 00000000..2b26a2dd --- /dev/null +++ b/rbi/lib/hanzoai/internal/type/io_like.rbi @@ -0,0 +1,49 @@ +# typed: strong + +module Hanzoai + module Internal + module Type + # @api private + # + # Either `Pathname` or `StringIO`. + class IOLike + extend Hanzoai::Internal::Type::Converter + + abstract! + final! + + sig(:final) { params(other: T.anything).returns(T::Boolean) } + def self.===(other); end + + sig(:final) { params(other: T.anything).returns(T::Boolean) } + def self.==(other); end + + class << self + # @api private + sig(:final) do + override + .params(value: T.any( + StringIO, + String, + T.anything + ), + state: Hanzoai::Internal::Type::Converter::CoerceState) + .returns(T.any(StringIO, T.anything)) + end + def coerce(value, state:); end + + # @api private + sig(:final) do + override + .params( + value: T.any(Pathname, StringIO, IO, String, T.anything), + state: Hanzoai::Internal::Type::Converter::DumpState + ) + .returns(T.any(Pathname, StringIO, IO, String, T.anything)) + end + def dump(value, state:); end + end + end + end + end +end diff --git a/rbi/lib/hanzoai/internal/type/union.rbi b/rbi/lib/hanzoai/internal/type/union.rbi index 6c07b000..fa0cd14d 100644 --- a/rbi/lib/hanzoai/internal/type/union.rbi +++ b/rbi/lib/hanzoai/internal/type/union.rbi @@ -49,16 +49,20 @@ module Hanzoai # @api private sig do - override.params( - value: T.anything, - state: Hanzoai::Internal::Type::Converter::State - ).returns(T.anything) + override + .params(value: T.anything, state: Hanzoai::Internal::Type::Converter::CoerceState) + .returns(T.anything) end def coerce(value, state:); end # @api private - sig { override.params(value: T.anything).returns(T.anything) } - def dump(value); end + sig do + override.params( + value: T.anything, + state: Hanzoai::Internal::Type::Converter::DumpState + ).returns(T.anything) + end + def dump(value, state:); end end end end diff --git a/rbi/lib/hanzoai/internal/type/unknown.rbi b/rbi/lib/hanzoai/internal/type/unknown.rbi index 17085d9b..c3b0647e 100644 --- a/rbi/lib/hanzoai/internal/type/unknown.rbi +++ b/rbi/lib/hanzoai/internal/type/unknown.rbi @@ -21,16 +21,20 @@ module Hanzoai class << self # @api private sig(:final) do - override.params( - value: T.anything, - state: Hanzoai::Internal::Type::Converter::State - ).returns(T.anything) + override + .params(value: T.anything, state: Hanzoai::Internal::Type::Converter::CoerceState) + .returns(T.anything) end def coerce(value, state:); end # @api private - sig(:final) { override.params(value: T.anything).returns(T.anything) } - def dump(value); end + sig(:final) do + override.params( + value: T.anything, + state: Hanzoai::Internal::Type::Converter::DumpState + ).returns(T.anything) + end + def dump(value, state:); end end end end diff --git a/rbi/lib/hanzoai/internal/util.rbi b/rbi/lib/hanzoai/internal/util.rbi index 7a9dcc41..a9506455 100644 --- a/rbi/lib/hanzoai/internal/util.rbi +++ b/rbi/lib/hanzoai/internal/util.rbi @@ -140,10 +140,34 @@ module Hanzoai 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` class ReadIOAdapter + # @api private + sig { returns(T.nilable(T::Boolean)) } + def close?; end + + # @api private + sig { void } + def close; end + # @api private sig { params(max_len: T.nilable(Integer)).returns(String) } private def read_enum(max_len); end @@ -155,12 +179,12 @@ module Hanzoai # @api private sig do params( - stream: T.any(String, IO, StringIO, T::Enumerable[String]), + src: T.any(String, Pathname, StringIO, T::Enumerable[String]), blk: T.proc.params(arg0: String).void ) .returns(T.attached_class) end - def self.new(stream, &blk); end + def self.new(src, &blk); end end class << self @@ -171,9 +195,16 @@ module Hanzoai class << self # @api private sig do - params(y: Enumerator::Yielder, boundary: String, key: T.any(Symbol, String), val: T.anything).void + params( + y: Enumerator::Yielder, + boundary: String, + key: T.any(Symbol, String), + val: T.anything, + closing: T::Array[T.proc.void] + ) + .void end - private def write_multipart_chunk(y, boundary:, key:, val:); end + private def write_multipart_chunk(y, boundary:, key:, val:, closing:); end # @api private sig { params(body: T.anything).returns([String, T::Enumerable[String]]) } diff --git a/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi b/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi index 1ddce5b4..f214b345 100644 --- a/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi +++ b/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi @@ -7,19 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(T.any(IO, StringIO)) } + sig { returns(T.any(Pathname, StringIO)) } attr_accessor :file sig do params( - file: T.any(IO, StringIO), + file: T.any(Pathname, StringIO), request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) ) .returns(T.attached_class) end def self.new(file:, request_options: {}); end - sig { override.returns({file: T.any(IO, StringIO), request_options: Hanzoai::RequestOptions}) } + sig { override.returns({file: T.any(Pathname, StringIO), request_options: Hanzoai::RequestOptions}) } def to_hash; end end end diff --git a/rbi/lib/hanzoai/models/file_create_params.rbi b/rbi/lib/hanzoai/models/file_create_params.rbi index 8bb47fc2..525d83e4 100644 --- a/rbi/lib/hanzoai/models/file_create_params.rbi +++ b/rbi/lib/hanzoai/models/file_create_params.rbi @@ -6,7 +6,7 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(T.any(IO, StringIO)) } + sig { returns(T.any(Pathname, StringIO)) } attr_accessor :file sig { returns(String) } @@ -20,7 +20,7 @@ module Hanzoai sig do params( - file: T.any(IO, StringIO), + file: T.any(Pathname, StringIO), purpose: String, custom_llm_provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) @@ -33,7 +33,7 @@ module Hanzoai override .returns( { - file: T.any(IO, StringIO), + file: T.any(Pathname, StringIO), purpose: String, custom_llm_provider: String, request_options: Hanzoai::RequestOptions diff --git a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi index 30869f26..e5936136 100644 --- a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi +++ b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi @@ -9,7 +9,7 @@ module Hanzoai # https://platform.openai.com/docs/api-reference/audio/createTranscription?lang=curl sig do params( - file: T.any(IO, StringIO), + file: T.any(Pathname, StringIO), request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) ) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/files.rbi b/rbi/lib/hanzoai/resources/files.rbi index 465efb60..16973a1a 100644 --- a/rbi/lib/hanzoai/resources/files.rbi +++ b/rbi/lib/hanzoai/resources/files.rbi @@ -21,7 +21,7 @@ module Hanzoai sig do params( provider: String, - file: T.any(IO, StringIO), + file: T.any(Pathname, StringIO), purpose: String, custom_llm_provider: String, request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) diff --git a/sig/hanzoai/internal/transport/pooled_net_requester.rbs b/sig/hanzoai/internal/transport/pooled_net_requester.rbs index 53451049..fc8e1d4d 100644 --- a/sig/hanzoai/internal/transport/pooled_net_requester.rbs +++ b/sig/hanzoai/internal/transport/pooled_net_requester.rbs @@ -21,7 +21,7 @@ module Hanzoai Hanzoai::Internal::Transport::PooledNetRequester::request request ) { (String arg0) -> void - } -> top + } -> [top, (^-> void)] private def with_pool: ( URI::Generic url, diff --git a/sig/hanzoai/internal/type/array_of.rbs b/sig/hanzoai/internal/type/array_of.rbs index 1c93e408..9c8322ba 100644 --- a/sig/hanzoai/internal/type/array_of.rbs +++ b/sig/hanzoai/internal/type/array_of.rbs @@ -17,10 +17,13 @@ module Hanzoai def coerce: ( ::Array[top] | top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> (::Array[top] | top) - def dump: (::Array[top] | top value) -> (::Array[top] | top) + def dump: ( + ::Array[top] | top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> (::Array[top] | top) def item_type: -> Elem diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index 68d95355..05afba3f 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -53,10 +53,13 @@ module Hanzoai def self.coerce: ( Hanzoai::Internal::Type::BaseModel | ::Hash[top, top] | top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> (instance | top) - def self.dump: (instance | top value) -> (::Hash[top, top] | top) + def self.dump: ( + instance | top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> (::Hash[top, top] | top) def []: (Symbol key) -> top? diff --git a/sig/hanzoai/internal/type/boolean.rbs b/sig/hanzoai/internal/type/boolean.rbs index 655b9cbd..6635537e 100644 --- a/sig/hanzoai/internal/type/boolean.rbs +++ b/sig/hanzoai/internal/type/boolean.rbs @@ -10,10 +10,13 @@ module Hanzoai def self.coerce: ( bool | top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> (bool | top) - def self.dump: (bool | top value) -> (bool | top) + def self.dump: ( + bool | top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> (bool | top) end end end diff --git a/sig/hanzoai/internal/type/converter.rbs b/sig/hanzoai/internal/type/converter.rbs index 5414df39..d3c7c699 100644 --- a/sig/hanzoai/internal/type/converter.rbs +++ b/sig/hanzoai/internal/type/converter.rbs @@ -4,19 +4,24 @@ module Hanzoai module Converter type input = Hanzoai::Internal::Type::Converter | Class - type state = + type coerce_state = { strictness: bool | :strong, exactness: { yes: Integer, no: Integer, maybe: Integer }, branched: Integer } + type dump_state = { can_retry: bool } + def coerce: ( top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> top - def dump: (top value) -> top + def dump: ( + top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> top def self.type_info: ( { @@ -31,12 +36,13 @@ module Hanzoai def self.coerce: ( Hanzoai::Internal::Type::Converter::input target, top value, - ?state: Hanzoai::Internal::Type::Converter::state + ?state: Hanzoai::Internal::Type::Converter::coerce_state ) -> top def self.dump: ( Hanzoai::Internal::Type::Converter::input target, - top value + top value, + ?state: Hanzoai::Internal::Type::Converter::dump_state ) -> top end end diff --git a/sig/hanzoai/internal/type/enum.rbs b/sig/hanzoai/internal/type/enum.rbs index 616b3663..50490033 100644 --- a/sig/hanzoai/internal/type/enum.rbs +++ b/sig/hanzoai/internal/type/enum.rbs @@ -14,10 +14,13 @@ module Hanzoai def coerce: ( String | Symbol | top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> (Symbol | top) - def dump: (Symbol | top value) -> (Symbol | top) + def dump: ( + Symbol | top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> (Symbol | top) end end end diff --git a/sig/hanzoai/internal/type/hash_of.rbs b/sig/hanzoai/internal/type/hash_of.rbs index eb210a3d..5a6477d5 100644 --- a/sig/hanzoai/internal/type/hash_of.rbs +++ b/sig/hanzoai/internal/type/hash_of.rbs @@ -17,10 +17,13 @@ module Hanzoai def coerce: ( ::Hash[top, top] | top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> (::Hash[Symbol, top] | top) - def dump: (::Hash[top, top] | top value) -> (::Hash[Symbol, top] | top) + def dump: ( + ::Hash[top, top] | top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> (::Hash[Symbol, top] | top) def item_type: -> Elem diff --git a/sig/hanzoai/internal/type/io_like.rbs b/sig/hanzoai/internal/type/io_like.rbs new file mode 100644 index 00000000..dc6204e8 --- /dev/null +++ b/sig/hanzoai/internal/type/io_like.rbs @@ -0,0 +1,23 @@ +module Hanzoai + module Internal + module Type + class IOLike + extend Hanzoai::Internal::Type::Converter + + def self.===: (top other) -> bool + + def self.==: (top other) -> bool + + def self.coerce: ( + StringIO | String | top value, + state: Hanzoai::Internal::Type::Converter::coerce_state + ) -> (StringIO | top) + + def self.dump: ( + Pathname | StringIO | IO | String | top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> (Pathname | StringIO | IO | String | top) + end + end + end +end diff --git a/sig/hanzoai/internal/type/union.rbs b/sig/hanzoai/internal/type/union.rbs index 12d3090a..d5ce6cd6 100644 --- a/sig/hanzoai/internal/type/union.rbs +++ b/sig/hanzoai/internal/type/union.rbs @@ -32,10 +32,13 @@ module Hanzoai def coerce: ( top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> top - def dump: (top value) -> top + def dump: ( + top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> top end end end diff --git a/sig/hanzoai/internal/type/unknown.rbs b/sig/hanzoai/internal/type/unknown.rbs index a46fe501..c2b52a4b 100644 --- a/sig/hanzoai/internal/type/unknown.rbs +++ b/sig/hanzoai/internal/type/unknown.rbs @@ -10,10 +10,13 @@ module Hanzoai def self.coerce: ( top value, - state: Hanzoai::Internal::Type::Converter::state + state: Hanzoai::Internal::Type::Converter::coerce_state ) -> top - def self.dump: (top value) -> top + def self.dump: ( + top value, + state: Hanzoai::Internal::Type::Converter::dump_state + ) -> top end end end diff --git a/sig/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index 3f97dbbb..6fd5f238 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -73,13 +73,27 @@ module Hanzoai | ::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? + + def close: -> void + private def read_enum: (Integer? max_len) -> String def read: (?Integer? max_len, ?String? out_string) -> String? def initialize: ( - String | IO | StringIO | Enumerable[String] stream + String | Pathname | StringIO | Enumerable[String] src ) { (String arg0) -> void } -> void @@ -93,7 +107,8 @@ module Hanzoai Enumerator::Yielder y, boundary: String, key: Symbol | String, - val: top + val: top, + closing: ::Array[^-> void] ) -> void def self?.encode_multipart_streaming: ( diff --git a/sig/hanzoai/models/audio/transcription_create_params.rbs b/sig/hanzoai/models/audio/transcription_create_params.rbs index b4c19658..ba0f0a84 100644 --- a/sig/hanzoai/models/audio/transcription_create_params.rbs +++ b/sig/hanzoai/models/audio/transcription_create_params.rbs @@ -2,16 +2,17 @@ module Hanzoai module Models module Audio type transcription_create_params = - { file: (IO | StringIO) } & Hanzoai::Internal::Type::request_parameters + { file: (Pathname | StringIO) } + & Hanzoai::Internal::Type::request_parameters class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor file: IO | StringIO + attr_accessor file: Pathname | StringIO def initialize: ( - file: IO | StringIO, + file: Pathname | StringIO, ?request_options: Hanzoai::request_opts ) -> void diff --git a/sig/hanzoai/models/file_create_params.rbs b/sig/hanzoai/models/file_create_params.rbs index 066ae8e8..b9f77329 100644 --- a/sig/hanzoai/models/file_create_params.rbs +++ b/sig/hanzoai/models/file_create_params.rbs @@ -1,14 +1,18 @@ module Hanzoai module Models type file_create_params = - { file: (IO | StringIO), purpose: String, custom_llm_provider: String } + { + file: (Pathname | StringIO), + purpose: String, + custom_llm_provider: String + } & Hanzoai::Internal::Type::request_parameters class FileCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor file: IO | StringIO + attr_accessor file: Pathname | StringIO attr_accessor purpose: String @@ -17,7 +21,7 @@ module Hanzoai def custom_llm_provider=: (String) -> String def initialize: ( - file: IO | StringIO, + file: Pathname | StringIO, purpose: String, ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts diff --git a/sig/hanzoai/resources/audio/transcriptions.rbs b/sig/hanzoai/resources/audio/transcriptions.rbs index 04333f87..0405171b 100644 --- a/sig/hanzoai/resources/audio/transcriptions.rbs +++ b/sig/hanzoai/resources/audio/transcriptions.rbs @@ -3,7 +3,7 @@ module Hanzoai class Audio class Transcriptions def create: ( - file: IO | StringIO, + file: Pathname | StringIO, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/files.rbs b/sig/hanzoai/resources/files.rbs index 271e6542..bb897cfd 100644 --- a/sig/hanzoai/resources/files.rbs +++ b/sig/hanzoai/resources/files.rbs @@ -5,7 +5,7 @@ module Hanzoai def create: ( String provider, - file: IO | StringIO, + file: Pathname | StringIO, purpose: String, ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 81f7ed69..f5151395 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -92,7 +92,9 @@ def test_dump [String, "one"] => "one", [String, :one] => :one, [:a, :b] => :b, - [:a, "a"] => "a" + [:a, "a"] => "a", + [String, StringIO.new("one")] => "one", + [String, Pathname(__FILE__)] => Hanzoai::Internal::Util::SerializationAdapter } cases.each do @@ -122,6 +124,34 @@ def test_coerce_errors end end end + + def test_dump_retry + types = [ + Hanzoai::Internal::Type::Unknown, + Hanzoai::Internal::Type::Boolean, + A, + H, + E, + U, + B + ] + Pathname(__FILE__).open do |fd| + cases = [ + fd, + [fd], + {a: fd}, + {a: {b: fd}} + ] + types.product(cases).each do |target, input| + state = {can_retry: true} + Hanzoai::Internal::Type::Converter.dump(target, input, state: state) + + assert_pattern do + state => {can_retry: false} + end + end + end + end end class Hanzoai::Test::EnumModelTest < Minitest::Test diff --git a/test/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index bb411ac9..17fa3995 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -160,11 +160,12 @@ def test_joining_queries class Hanzoai::Test::UtilFormDataEncodingTest < Minitest::Test class FakeCGI < CGI def initialize(headers, io) + encoded = io.to_a @ctype = headers["content-type"] # rubocop:disable Lint/EmptyBlock - @io = Hanzoai::Internal::Util::ReadIOAdapter.new(io) {} + @io = Hanzoai::Internal::Util::ReadIOAdapter.new(encoded.to_enum) {} # rubocop:enable Lint/EmptyBlock - @c_len = io.to_a.join.bytesize.to_s + @c_len = encoded.join.bytesize.to_s super() end @@ -180,15 +181,17 @@ def env_table end def test_file_encode + file = Pathname(__FILE__) headers = {"content-type" => "multipart/form-data"} cases = { - StringIO.new("abc") => "abc" + StringIO.new("abc") => "abc", + file => /^class Hanzoai/ } cases.each do |body, val| encoded = Hanzoai::Internal::Util.encode_content(headers, body) cgi = FakeCGI.new(*encoded) assert_pattern do - cgi[""] => ^val + cgi[""].read => ^val end end end @@ -199,13 +202,16 @@ def test_hash_encode {a: 2, b: 3} => {"a" => "2", "b" => "3"}, {a: 2, b: nil} => {"a" => "2", "b" => "null"}, {a: 2, b: [1, 2, 3]} => {"a" => "2", "b" => "1"}, - {file: StringIO.new("a")} => {"file" => "a"} + {strio: StringIO.new("a")} => {"strio" => "a"}, + {pathname: Pathname(__FILE__)} => {"pathname" => -> { _1.read in /^class Hanzoai/ }} } cases.each do |body, testcase| encoded = Hanzoai::Internal::Util.encode_content(headers, body) cgi = FakeCGI.new(*encoded) testcase.each do |key, val| - assert_equal(val, cgi[key]) + assert_pattern do + cgi[key] => ^val + end end end end diff --git a/test/hanzoai/resources/audio/transcriptions_test.rb b/test/hanzoai/resources/audio/transcriptions_test.rb index ebf7caec..006f2168 100644 --- a/test/hanzoai/resources/audio/transcriptions_test.rb +++ b/test/hanzoai/resources/audio/transcriptions_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Audio::TranscriptionsTest < Hanzoai::Test::ResourceTest def test_create_required_params - response = @hanzo.audio.transcriptions.create(file: StringIO.new("some file contents")) + response = @hanzo.audio.transcriptions.create(file: Pathname(__FILE__)) assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/files_test.rb b/test/hanzoai/resources/files_test.rb index 2576f993..91d656a7 100644 --- a/test/hanzoai/resources/files_test.rb +++ b/test/hanzoai/resources/files_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::FilesTest < Hanzoai::Test::ResourceTest def test_create_required_params - response = @hanzo.files.create("provider", file: StringIO.new("some file contents"), purpose: "purpose") + response = @hanzo.files.create("provider", file: Pathname(__FILE__), purpose: "purpose") assert_pattern do response => Hanzoai::Internal::Type::Unknown From 05edcf8da3d94ee0f3ef61faaf7e310b37669497 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 9 Apr 2025 03:46:48 +0000 Subject: [PATCH 015/139] fix: raise connection error for errors that result from HTTP transports (#57) --- lib/hanzoai/internal/transport/base_client.rb | 2 +- lib/hanzoai/internal/transport/pooled_net_requester.rb | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 77ce4e16..5aa9dd6c 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -380,7 +380,7 @@ def initialize( in (400..) | Hanzoai::Errors::APIConnectionError self.class.reap_connection!(status, stream: stream) - delay = retry_delay(response, retry_count: retry_count) + delay = retry_delay(response || {}, retry_count: retry_count) sleep(delay) send_request( diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 26093bb1..067f7bda 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -123,9 +123,12 @@ def build_request(request, &blk) def execute(request) url, deadline = request.fetch_values(:url, :deadline) + req = nil eof = false finished = false closing = nil + + # rubocop:disable Metrics/BlockLength enum = Enumerator.new do |y| with_pool(url, deadline: deadline) do |conn| next if finished @@ -155,8 +158,11 @@ def execute(request) end end rescue Timeout::Error - raise Hanzoai::Errors::APITimeoutError + raise Hanzoai::Errors::APITimeoutError.new(url: url, request: req) + rescue StandardError + raise Hanzoai::Errors::APIConnectionError.new(url: url, request: req) end + # rubocop:enable Metrics/BlockLength conn, _, response = enum.next body = Hanzoai::Internal::Util.fused_enum(enum, external: true) do From 5f7ec21f35b5abf1055e66a72a1db31e833f6322 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 9 Apr 2025 03:48:02 +0000 Subject: [PATCH 016/139] chore: loosen const and integer coercion rules (#58) --- lib/hanzoai/internal/type/converter.rb | 24 ++++++++++++------- test/hanzoai/internal/type/base_model_test.rb | 10 ++++---- 2 files changed, 21 insertions(+), 13 deletions(-) diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index b34aec6f..bd315b10 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -149,9 +149,9 @@ def coerce( if value.is_a?(Integer) exactness[:yes] += 1 return value - elsif strictness == :strong + elsif strictness == :strong && Integer(value, exception: false) != value message = "no implicit conversion of #{value.class} into #{target.inspect}" - raise TypeError.new(message) + raise value.is_a?(Numeric) ? ArgumentError.new(message) : TypeError.new(message) else Kernel.then do return Integer(value).tap { exactness[:maybe] += 1 } @@ -197,12 +197,20 @@ def coerce( else end in Symbol - if (value.is_a?(Symbol) || value.is_a?(String)) && value.to_sym == target - exactness[:yes] += 1 - return target - elsif strictness == :strong - message = "cannot convert non-matching #{value.class} into #{target.inspect}" - raise ArgumentError.new(message) + case value + in Symbol | String + if value.to_sym == target + exactness[:yes] += 1 + return target + else + exactness[:maybe] += 1 + return value + end + else + if strictness == :strong + message = "cannot convert non-matching #{value.class} into #{target.inspect}" + raise ArgumentError.new(message) + end end else end diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index f5151395..89a7360e 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -111,7 +111,6 @@ def test_coerce_errors [Integer, "one"] => TypeError, [Float, "one"] => TypeError, [String, Time] => TypeError, - [:a, "one"] => ArgumentError, [Date, "one"] => ArgumentError, [Time, "one"] => ArgumentError } @@ -346,7 +345,7 @@ def test_coerce [M2, {a: "1990-09-19", c: nil}] => [{yes: 2, maybe: 2}, {a: "1990-09-19", c: nil}], [M3, {c: "c", d: "d"}] => [{yes: 3}, {c: :c, d: :d}], - [M3, {c: "d", d: "c"}] => [{yes: 1, no: 2}, {c: "d", d: "c"}], + [M3, {c: "d", d: "c"}] => [{yes: 1, maybe: 2}, {c: "d", d: "c"}], [M4, {c: 2}] => [{yes: 5}, {c: 2}], [M4, {a: "1", c: 2}] => [{yes: 4, maybe: 1}, {a: "1", c: 2}], @@ -404,7 +403,8 @@ def test_accessors cases = { M2.new({a: "1990-09-19", b: "1"}) => {a: Time.new(1990, 9, 19), b: TypeError}, M2.new(a: "one", b: "one") => {a: ArgumentError, b: TypeError}, - M2.new(a: nil, b: 2.0) => {a: TypeError, b: TypeError}, + M2.new(a: nil, b: 2.0) => {a: TypeError}, + M2.new(a: nil, b: 2.2) => {a: TypeError, b: ArgumentError}, M3.new => {d: :d}, M3.new(d: 1) => {d: ArgumentError}, @@ -520,8 +520,8 @@ def test_coerce [U0, :""] => [{no: 1}, 0, :""], [U1, "a"] => [{yes: 1}, 1, :a], - [U1, "2"] => [{maybe: 1}, 2, 2], - [U1, :b] => [{no: 1}, 2, :b], + [U1, "2"] => [{maybe: 1}, 2, "2"], + [U1, :b] => [{maybe: 1}, 2, :b], [U2, {type: :a}] => [{yes: 3}, 0, {t: :a}], [U2, {type: "b"}] => [{yes: 3}, 0, {type: :b}], From 10667f32ced592c75964e8d3a9a04e804843439f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 10 Apr 2025 03:25:37 +0000 Subject: [PATCH 017/139] chore: ensure readme.md is bumped when release please updates versions --- .stats.yml | 2 +- release-please-config.json | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 53107a1b..bb9fef09 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 188 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2FHanzo-AI-ec4be99f95dc46e9442eb60f233b2bff271d6f5bf57d7c61a52bc4804f55bbd1.yml +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-ec4be99f95dc46e9442eb60f233b2bff271d6f5bf57d7c61a52bc4804f55bbd1.yml openapi_spec_hash: 87bc62c36bb6028ffd1f3e54a2809099 config_hash: 830747463ff4d018b5633ce511e88558 diff --git a/release-please-config.json b/release-please-config.json index d37ba985..0327b6dd 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -60,5 +60,8 @@ } ], "release-type": "ruby", - "version-file": "lib/hanzoai/version.rb" + "version-file": "lib/hanzoai/version.rb", + "extra-files": [ + "README.md" + ] } \ No newline at end of file From f42785bf8a2960e8d10ecbef32a2ca6c5c796f03 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 10 Apr 2025 03:42:20 +0000 Subject: [PATCH 018/139] fix(internal): update release-please to use ruby strategy for README.md --- release-please-config.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/release-please-config.json b/release-please-config.json index 0327b6dd..1eda1f84 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -62,6 +62,9 @@ "release-type": "ruby", "version-file": "lib/hanzoai/version.rb", "extra-files": [ - "README.md" + { + "type": "ruby-readme", + "path": "README.md" + } ] } \ No newline at end of file From 12c39d3a4fec0840481ea21170ee1f2dbaa2a5af Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 10 Apr 2025 03:46:50 +0000 Subject: [PATCH 019/139] chore(internal): expand CI branch coverage --- .github/workflows/ci.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6992080f..1a75c727 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,18 +1,18 @@ name: CI on: push: - branches: - - main - pull_request: - branches: - - main - - next + branches-ignore: + - 'generated' + - 'codegen/**' + - 'integrated/**' + - 'preview-head/**' + - 'preview-base/**' + - 'preview/**' jobs: lint: name: lint runs-on: ubuntu-latest - steps: - uses: actions/checkout@v4 @@ -29,7 +29,6 @@ jobs: test: name: test runs-on: ubuntu-latest - steps: - uses: actions/checkout@v4 - name: Set up Ruby From 1b6772ecc6dfe3842268495c669c90bb7a7e2edc Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 10 Apr 2025 03:48:26 +0000 Subject: [PATCH 020/139] chore: fix readme typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f4cfce1a..103264a8 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ response = hanzo.get_home puts(response) ``` -## File uploads +### 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. From c77e9701dd564ff03ba1e8e5580402ea379908cc Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 10 Apr 2025 04:11:43 +0000 Subject: [PATCH 021/139] chore(internal): reduce CI branch coverage --- .github/workflows/ci.yml | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1a75c727..b2c0c8f7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,19 +1,17 @@ name: CI on: push: - branches-ignore: - - 'generated' - - 'codegen/**' - - 'integrated/**' - - 'preview-head/**' - - 'preview-base/**' - - 'preview/**' + branches: + - main + pull_request: + branches: + - main + - next jobs: lint: name: lint runs-on: ubuntu-latest - steps: - uses: actions/checkout@v4 - name: Set up Ruby From 4e2b9ca07a6b653ed983f0e83a9238e94f274d93 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 12 Apr 2025 03:34:24 +0000 Subject: [PATCH 022/139] fix: inaccuracies in the README.md --- README.md | 11 ++--------- hanzoai.gemspec | 2 +- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 103264a8..cb531277 100644 --- a/README.md +++ b/README.md @@ -22,12 +22,6 @@ gem "hanzoai", "~> 0.1.0.pre.alpha.4" -To fetch an initial copy of the gem: - -```sh -bundle install -``` - ## Usage ```ruby @@ -63,7 +57,7 @@ puts(transcription) ### Errors -When the library is unable to connect to the API, or if the API returns a non-success status code (i.e., 4xx or 5xx response), a subclass of `Hanzoai::Error` will be thrown: +When the library is unable to connect to the API, or if the API returns a non-success status code (i.e., 4xx or 5xx response), a subclass of `Hanzoai::Errors::APIError` will be thrown: ```ruby begin @@ -189,8 +183,7 @@ If you want to explicitly send an extra param, you can do so with the `extra_que To make requests to undocumented endpoints, you can make requests using `client.request`. Options on the client will be respected (such as retries) when making this request. ```ruby -response = - client.request( +response = client.request( method: :post, path: '/undocumented/endpoint', query: {"dog": "woof"}, diff --git a/hanzoai.gemspec b/hanzoai.gemspec index 3c0f4141..e91f2c0f 100644 --- a/hanzoai.gemspec +++ b/hanzoai.gemspec @@ -8,7 +8,7 @@ Gem::Specification.new do |s| s.summary = "Ruby library to access the Hanzo API" s.authors = ["Hanzo"] s.email = "dev@hanzo.ai" - s.files = Dir["lib/**/*.rb", "rbi/**/*.rbi", "sig/**/*.rbs", "manifest.yaml"] + s.files = Dir["lib/**/*.rb", "rbi/**/*.rbi", "sig/**/*.rbs", "manifest.yaml", "CHANGELOG.md", "SECURITY.md"] s.extra_rdoc_files = ["README.md"] s.required_ruby_version = ">= 3.0.0" s.add_dependency "connection_pool" From f3d8de6659234a8db1d284a18af468aaa81bf120 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 03:38:51 +0000 Subject: [PATCH 023/139] chore: make internal types pretty print --- lib/hanzoai/internal.rb | 6 ++- lib/hanzoai/internal/transport/base_client.rb | 2 + lib/hanzoai/internal/type/array_of.rb | 15 +++++++- lib/hanzoai/internal/type/base_model.rb | 38 ++++++++++++++++--- lib/hanzoai/internal/type/base_page.rb | 1 + lib/hanzoai/internal/type/boolean.rb | 2 + lib/hanzoai/internal/type/converter.rb | 24 ++++++++++++ lib/hanzoai/internal/type/enum.rb | 13 +++++++ lib/hanzoai/internal/type/hash_of.rb | 15 +++++++- lib/hanzoai/internal/type/io_like.rb | 2 + lib/hanzoai/internal/type/union.rb | 13 +++++++ lib/hanzoai/internal/type/unknown.rb | 2 + rbi/lib/hanzoai/internal.rbi | 2 +- .../internal/transport/base_client.rbi | 1 + rbi/lib/hanzoai/internal/type/array_of.rbi | 4 ++ rbi/lib/hanzoai/internal/type/base_model.rbi | 7 ++++ rbi/lib/hanzoai/internal/type/converter.rbi | 8 ++++ rbi/lib/hanzoai/internal/type/enum.rbi | 4 ++ rbi/lib/hanzoai/internal/type/hash_of.rbi | 4 ++ rbi/lib/hanzoai/internal/type/union.rbi | 4 ++ sig/hanzoai/internal.rbs | 2 +- sig/hanzoai/internal/type/array_of.rbs | 2 + sig/hanzoai/internal/type/base_model.rbs | 2 + sig/hanzoai/internal/type/converter.rbs | 4 ++ sig/hanzoai/internal/type/enum.rbs | 2 + sig/hanzoai/internal/type/hash_of.rbs | 2 + sig/hanzoai/internal/type/union.rbs | 2 + 27 files changed, 173 insertions(+), 10 deletions(-) diff --git a/lib/hanzoai/internal.rb b/lib/hanzoai/internal.rb index 6e9a7ab8..7e7c6918 100644 --- a/lib/hanzoai/internal.rb +++ b/lib/hanzoai/internal.rb @@ -3,6 +3,10 @@ module Hanzoai # @api private module Internal - OMIT = Object.new.freeze + OMIT = + Object.new.tap do + _1.define_singleton_method(:inspect) { "#<#{Hanzoai::Internal}::OMIT>" } + end + .freeze end end diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 5aa9dd6c..2b047cab 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -460,6 +460,8 @@ def request(req) end end + # @api private + # # @return [String] def inspect # rubocop:disable Layout/LineLength diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index 0c47f0a4..a2d5ec28 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -13,6 +13,8 @@ module Type class ArrayOf include Hanzoai::Internal::Type::Converter + private_class_method :new + # @param type_info [Hash{Symbol=>Object}, Proc, Hanzoai::Internal::Type::Converter, Class] # # @param spec [Hash{Symbol=>Object}] . @@ -120,7 +122,18 @@ def dump(value, state:) # @option spec [Boolean] :"nil?" def initialize(type_info, spec = {}) @item_type_fn = Hanzoai::Internal::Type::Converter.type_info(type_info || spec) - @nilable = spec[:nil?] + @nilable = spec.fetch(:nil?, false) + end + + # @api private + # + # @param depth [Integer] + # + # @return [String] + def inspect(depth: 0) + # rubocop:disable Layout/LineLength + "#{self.class}[#{[Hanzoai::Internal::Type::Converter.inspect(item_type, depth: depth.succ), nilable? ? 'nil' : nil].compact.join(' | ')}]" + # rubocop:enable Layout/LineLength end end end diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index b21c69b0..a39efc6d 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -63,7 +63,7 @@ def fields setter = "#{name_sym}=" api_name = info.fetch(:api_name, name_sym) - nilable = info[:nil?] + nilable = info.fetch(:nil?, false) const = if required && !nilable info.fetch( :const, @@ -368,14 +368,42 @@ def initialize(data = {}) end end + class << self + # @api private + # + # @param depth [Integer] + # + # @return [String] + def inspect(depth: 0) + return super() if depth.positive? + + depth = depth.succ + deferred = fields.transform_values do |field| + type, required, nilable = field.fetch_values(:type, :required, :nilable) + -> do + [ + Hanzoai::Internal::Type::Converter.inspect(type, depth: depth), + !required || nilable ? "nil" : nil + ].compact.join(" | ") + end + .tap { _1.define_singleton_method(:inspect) { call } } + end + + "#{name}[#{deferred.inspect}]" + end + end + + # @api private + # # @return [String] def inspect - rows = self.class.known_fields.keys.map do - "#{_1}=#{@data.key?(_1) ? public_send(_1) : ''}" + rows = @data.map do + "#{_1}=#{self.class.known_fields.key?(_1) ? public_send(_1).inspect : ''}" rescue Hanzoai::Errors::ConversionError - "#{_1}=#{@data.fetch(_1)}" + "#{_1}=#{_2.inspect}" end - "#<#{self.class.name}:0x#{object_id.to_s(16)} #{rows.join(' ')}>" + + "#<#{self.class}:0x#{object_id.to_s(16)} #{rows.join(' ')}>" end end end diff --git a/lib/hanzoai/internal/type/base_page.rb b/lib/hanzoai/internal/type/base_page.rb index 128407d5..ae954d10 100644 --- a/lib/hanzoai/internal/type/base_page.rb +++ b/lib/hanzoai/internal/type/base_page.rb @@ -36,6 +36,7 @@ def to_enum = super(:auto_paging_each) def initialize(client:, req:, headers:, page_data:) @client = client @req = req + @model = req.fetch(:model) super() end diff --git a/lib/hanzoai/internal/type/boolean.rb b/lib/hanzoai/internal/type/boolean.rb index f523d02e..1bfea8d6 100644 --- a/lib/hanzoai/internal/type/boolean.rb +++ b/lib/hanzoai/internal/type/boolean.rb @@ -11,6 +11,8 @@ module Type class Boolean extend Hanzoai::Internal::Type::Converter + private_class_method :new + # @param other [Object] # # @return [Boolean] diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index bd315b10..0b41c884 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -49,6 +49,15 @@ def dump(value, state:) end end + # @api private + # + # @param depth [Integer] + # + # @return [String] + def inspect(depth: 0) + super() + end + # rubocop:enable Lint/UnusedMethodArgument class << self @@ -240,6 +249,21 @@ def dump(target, value, state: {can_retry: true}) Hanzoai::Internal::Type::Unknown.dump(value, state: state) end end + + # @api private + # + # @param target [Object] + # @param depth [Integer] + # + # @return [String] + def inspect(target, depth:) + case target + in Hanzoai::Internal::Type::Converter + target.inspect(depth: depth.succ) + else + target.inspect + end + end end end end diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 7ccfa64c..2e8938a9 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -82,6 +82,19 @@ def coerce(value, state:) # # # # @return [Symbol, Object] # def dump(value, state:) = super + + # @api private + # + # @param depth [Integer] + # + # @return [String] + def inspect(depth: 0) + # rubocop:disable Layout/LineLength + return super() if depth.positive? + + "#{name}[#{values.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) }.join(' | ')}]" + # rubocop:enable Layout/LineLength + end end end end diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index 0962ac37..13ec0c2e 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -13,6 +13,8 @@ module Type class HashOf include Hanzoai::Internal::Type::Converter + private_class_method :new + # @param type_info [Hash{Symbol=>Object}, Proc, Hanzoai::Internal::Type::Converter, Class] # # @param spec [Hash{Symbol=>Object}] . @@ -140,7 +142,18 @@ def dump(value, state:) # @option spec [Boolean] :"nil?" def initialize(type_info, spec = {}) @item_type_fn = Hanzoai::Internal::Type::Converter.type_info(type_info || spec) - @nilable = spec[:nil?] + @nilable = spec.fetch(:nil?, false) + end + + # @api private + # + # @param depth [Integer] + # + # @return [String] + def inspect(depth: 0) + # rubocop:disable Layout/LineLength + "#{self.class}[#{[Hanzoai::Internal::Type::Converter.inspect(item_type, depth: depth.succ), nilable? ? 'nil' : nil].compact.join(' | ')}]" + # rubocop:enable Layout/LineLength end end end diff --git a/lib/hanzoai/internal/type/io_like.rb b/lib/hanzoai/internal/type/io_like.rb index b6a67bce..b2024d9f 100644 --- a/lib/hanzoai/internal/type/io_like.rb +++ b/lib/hanzoai/internal/type/io_like.rb @@ -11,6 +11,8 @@ module Type class IOLike extend Hanzoai::Internal::Type::Converter + private_class_method :new + # @param other [Object] # # @return [Boolean] diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 549ba69a..ab8e4233 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -185,6 +185,19 @@ def dump(value, state:) # rubocop:enable Style/CaseEquality # rubocop:enable Style/HashEachMethods + + # @api private + # + # @param depth [Integer] + # + # @return [String] + def inspect(depth: 0) + # rubocop:disable Layout/LineLength + return super() if depth.positive? + + "#{name}[#{variants.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) }.join(' | ')}]" + # rubocop:enable Layout/LineLength + end end end end diff --git a/lib/hanzoai/internal/type/unknown.rb b/lib/hanzoai/internal/type/unknown.rb index 22ad6285..dc9cffb0 100644 --- a/lib/hanzoai/internal/type/unknown.rb +++ b/lib/hanzoai/internal/type/unknown.rb @@ -13,6 +13,8 @@ class Unknown # rubocop:disable Lint/UnusedMethodArgument + private_class_method :new + # @param other [Object] # # @return [Boolean] diff --git a/rbi/lib/hanzoai/internal.rbi b/rbi/lib/hanzoai/internal.rbi index 06a474ad..390fd218 100644 --- a/rbi/lib/hanzoai/internal.rbi +++ b/rbi/lib/hanzoai/internal.rbi @@ -7,6 +7,6 @@ module Hanzoai # this alias might be refined in the future. AnyHash = T.type_alias { T::Hash[Symbol, T.anything] } - OMIT = T.let(T.anything, T.anything) + OMIT = T.let(Object.new.freeze, T.anything) end end diff --git a/rbi/lib/hanzoai/internal/transport/base_client.rbi b/rbi/lib/hanzoai/internal/transport/base_client.rbi index 05366c84..9b7d4aef 100644 --- a/rbi/lib/hanzoai/internal/transport/base_client.rbi +++ b/rbi/lib/hanzoai/internal/transport/base_client.rbi @@ -190,6 +190,7 @@ module Hanzoai model: Hanzoai::Internal::Type::Unknown, options: {} ); end + # @api private sig { returns(String) } def inspect; end end diff --git a/rbi/lib/hanzoai/internal/type/array_of.rbi b/rbi/lib/hanzoai/internal/type/array_of.rbi index bb20fb00..1ca1d39a 100644 --- a/rbi/lib/hanzoai/internal/type/array_of.rbi +++ b/rbi/lib/hanzoai/internal/type/array_of.rbi @@ -76,6 +76,10 @@ module Hanzoai .void end def initialize(type_info, spec = {}); end + + # @api private + sig(:final) { params(depth: Integer).returns(String) } + def inspect(depth: 0); end end end end diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index 29f55d06..a7cdea8d 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -185,6 +185,13 @@ module Hanzoai sig { params(data: T.any(T::Hash[Symbol, T.anything], T.self_type)).returns(T.attached_class) } def self.new(data = {}); end + class << self + # @api private + sig { params(depth: Integer).returns(String) } + def inspect(depth: 0); end + end + + # @api private sig { returns(String) } def inspect; end end diff --git a/rbi/lib/hanzoai/internal/type/converter.rbi b/rbi/lib/hanzoai/internal/type/converter.rbi index 37326b2c..394caef6 100644 --- a/rbi/lib/hanzoai/internal/type/converter.rbi +++ b/rbi/lib/hanzoai/internal/type/converter.rbi @@ -34,6 +34,10 @@ module Hanzoai end def dump(value, state:); end + # @api private + sig { params(depth: Integer).returns(String) } + def inspect(depth: 0); end + class << self # @api private sig do @@ -105,6 +109,10 @@ module Hanzoai .returns(T.anything) 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 end end end diff --git a/rbi/lib/hanzoai/internal/type/enum.rbi b/rbi/lib/hanzoai/internal/type/enum.rbi index cfad6038..183a334f 100644 --- a/rbi/lib/hanzoai/internal/type/enum.rbi +++ b/rbi/lib/hanzoai/internal/type/enum.rbi @@ -57,6 +57,10 @@ module Hanzoai .returns(T.any(Symbol, T.anything)) end def dump(value, state:); end + + # @api private + sig { params(depth: Integer).returns(String) } + def inspect(depth: 0); end end end end diff --git a/rbi/lib/hanzoai/internal/type/hash_of.rbi b/rbi/lib/hanzoai/internal/type/hash_of.rbi index cddfb080..430294f0 100644 --- a/rbi/lib/hanzoai/internal/type/hash_of.rbi +++ b/rbi/lib/hanzoai/internal/type/hash_of.rbi @@ -76,6 +76,10 @@ module Hanzoai .void end def initialize(type_info, spec = {}); end + + # @api private + sig(:final) { params(depth: Integer).returns(String) } + def inspect(depth: 0); end end end end diff --git a/rbi/lib/hanzoai/internal/type/union.rbi b/rbi/lib/hanzoai/internal/type/union.rbi index fa0cd14d..9f1d58c6 100644 --- a/rbi/lib/hanzoai/internal/type/union.rbi +++ b/rbi/lib/hanzoai/internal/type/union.rbi @@ -63,6 +63,10 @@ module Hanzoai ).returns(T.anything) end def dump(value, state:); end + + # @api private + sig { params(depth: Integer).returns(String) } + def inspect(depth: 0); end end end end diff --git a/sig/hanzoai/internal.rbs b/sig/hanzoai/internal.rbs index 03ed65bd..3fd5af5b 100644 --- a/sig/hanzoai/internal.rbs +++ b/sig/hanzoai/internal.rbs @@ -1,5 +1,5 @@ module Hanzoai module Internal - OMIT: top + OMIT: Object end end diff --git a/sig/hanzoai/internal/type/array_of.rbs b/sig/hanzoai/internal/type/array_of.rbs index 9c8322ba..ca4d9928 100644 --- a/sig/hanzoai/internal/type/array_of.rbs +++ b/sig/hanzoai/internal/type/array_of.rbs @@ -35,6 +35,8 @@ module Hanzoai | Hanzoai::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec ) -> void + + def inspect: (?depth: Integer) -> String end end end diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index 05afba3f..9fbd0d8f 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -75,6 +75,8 @@ module Hanzoai def initialize: (?::Hash[Symbol, top] | self data) -> void + def self.inspect: (?depth: Integer) -> String + def inspect: -> String end end diff --git a/sig/hanzoai/internal/type/converter.rbs b/sig/hanzoai/internal/type/converter.rbs index d3c7c699..b5e375bf 100644 --- a/sig/hanzoai/internal/type/converter.rbs +++ b/sig/hanzoai/internal/type/converter.rbs @@ -23,6 +23,8 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::dump_state ) -> top + def inspect: (?depth: Integer) -> String + def self.type_info: ( { const: (nil | bool | Integer | Float | Symbol)?, @@ -44,6 +46,8 @@ module Hanzoai top value, ?state: Hanzoai::Internal::Type::Converter::dump_state ) -> top + + def self.inspect: (top target, depth: Integer) -> String end end end diff --git a/sig/hanzoai/internal/type/enum.rbs b/sig/hanzoai/internal/type/enum.rbs index 50490033..79f33d51 100644 --- a/sig/hanzoai/internal/type/enum.rbs +++ b/sig/hanzoai/internal/type/enum.rbs @@ -21,6 +21,8 @@ module Hanzoai Symbol | top value, state: Hanzoai::Internal::Type::Converter::dump_state ) -> (Symbol | top) + + def inspect: (?depth: Integer) -> String end end end diff --git a/sig/hanzoai/internal/type/hash_of.rbs b/sig/hanzoai/internal/type/hash_of.rbs index 5a6477d5..0bf8dada 100644 --- a/sig/hanzoai/internal/type/hash_of.rbs +++ b/sig/hanzoai/internal/type/hash_of.rbs @@ -35,6 +35,8 @@ module Hanzoai | Hanzoai::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec ) -> void + + def inspect: (?depth: Integer) -> String end end end diff --git a/sig/hanzoai/internal/type/union.rbs b/sig/hanzoai/internal/type/union.rbs index d5ce6cd6..667fa2b7 100644 --- a/sig/hanzoai/internal/type/union.rbs +++ b/sig/hanzoai/internal/type/union.rbs @@ -39,6 +39,8 @@ module Hanzoai top value, state: Hanzoai::Internal::Type::Converter::dump_state ) -> top + + def inspect: (?depth: Integer) -> String end end end From a4ab1ff28a41a08639ac2bcc2d356592a1b6855f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 03:42:12 +0000 Subject: [PATCH 024/139] chore(internal): minor touch ups on sdk internals --- lib/hanzoai/internal/transport/base_client.rb | 14 +++++++++++--- lib/hanzoai/internal/type/array_of.rb | 10 ++++++---- lib/hanzoai/internal/type/enum.rb | 6 +++--- lib/hanzoai/internal/type/hash_of.rb | 10 ++++++---- lib/hanzoai/internal/type/union.rb | 6 +++--- 5 files changed, 29 insertions(+), 17 deletions(-) diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 2b047cab..f1b6d2a2 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -93,7 +93,11 @@ def follow_redirect(request, status:, response_headers:) URI.join(url, response_headers["location"]) rescue ArgumentError message = "Server responded with status #{status} but no valid location header." - raise Hanzoai::Errors::APIConnectionError.new(url: url, message: message) + raise Hanzoai::Errors::APIConnectionError.new( + url: url, + response: response_headers, + message: message + ) end request = {**request, url: location} @@ -101,7 +105,11 @@ def follow_redirect(request, status:, response_headers:) case [url.scheme, location.scheme] in ["https", "http"] message = "Tried to redirect to a insecure URL" - raise Hanzoai::Errors::APIConnectionError.new(url: url, message: message) + raise Hanzoai::Errors::APIConnectionError.new( + url: url, + response: response_headers, + message: message + ) else nil end @@ -350,7 +358,7 @@ def initialize( self.class.reap_connection!(status, stream: stream) message = "Failed to complete the request within #{self.class::MAX_REDIRECTS} redirects." - raise Hanzoai::Errors::APIConnectionError.new(url: url, message: message) + raise Hanzoai::Errors::APIConnectionError.new(url: url, response: response, message: message) in 300..399 self.class.reap_connection!(status, stream: stream) diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index a2d5ec28..1dda3686 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -15,6 +15,8 @@ class ArrayOf private_class_method :new + # @overload [](type_info, spec = {}) + # # @param type_info [Hash{Symbol=>Object}, Proc, Hanzoai::Internal::Type::Converter, Class] # # @param spec [Hash{Symbol=>Object}] . @@ -26,7 +28,7 @@ class ArrayOf # @option spec [Proc] :union # # @option spec [Boolean] :"nil?" - def self.[](type_info, spec = {}) = new(type_info, spec) + def self.[](...) = new(...) # @param other [Object] # @@ -131,9 +133,9 @@ def initialize(type_info, spec = {}) # # @return [String] def inspect(depth: 0) - # rubocop:disable Layout/LineLength - "#{self.class}[#{[Hanzoai::Internal::Type::Converter.inspect(item_type, depth: depth.succ), nilable? ? 'nil' : nil].compact.join(' | ')}]" - # rubocop:enable Layout/LineLength + items = Hanzoai::Internal::Type::Converter.inspect(item_type, depth: depth.succ) + + "#{self.class}[#{[items, nilable? ? 'nil' : nil].compact.join(' | ')}]" end end end diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 2e8938a9..4d75ca23 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -89,11 +89,11 @@ def coerce(value, state:) # # @return [String] def inspect(depth: 0) - # rubocop:disable Layout/LineLength return super() if depth.positive? - "#{name}[#{values.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) }.join(' | ')}]" - # rubocop:enable Layout/LineLength + members = values.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) } + + "#{name}[#{members.join(' | ')}]" end end end diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index 13ec0c2e..84fc23a2 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -15,6 +15,8 @@ class HashOf private_class_method :new + # @overload [](type_info, spec = {}) + # # @param type_info [Hash{Symbol=>Object}, Proc, Hanzoai::Internal::Type::Converter, Class] # # @param spec [Hash{Symbol=>Object}] . @@ -26,7 +28,7 @@ class HashOf # @option spec [Proc] :union # # @option spec [Boolean] :"nil?" - def self.[](type_info, spec = {}) = new(type_info, spec) + def self.[](...) = new(...) # @param other [Object] # @@ -151,9 +153,9 @@ def initialize(type_info, spec = {}) # # @return [String] def inspect(depth: 0) - # rubocop:disable Layout/LineLength - "#{self.class}[#{[Hanzoai::Internal::Type::Converter.inspect(item_type, depth: depth.succ), nilable? ? 'nil' : nil].compact.join(' | ')}]" - # rubocop:enable Layout/LineLength + items = Hanzoai::Internal::Type::Converter.inspect(item_type, depth: depth.succ) + + "#{self.class}[#{[items, nilable? ? 'nil' : nil].compact.join(' | ')}]" end end end diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index ab8e4233..187fde56 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -192,11 +192,11 @@ def dump(value, state:) # # @return [String] def inspect(depth: 0) - # rubocop:disable Layout/LineLength return super() if depth.positive? - "#{name}[#{variants.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) }.join(' | ')}]" - # rubocop:enable Layout/LineLength + members = variants.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) } + + "#{name}[#{members.join(' | ')}]" end end end From 52fe8ba0423ed67626bf8c2acd4c60eb9bc6251f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 03:46:30 +0000 Subject: [PATCH 025/139] chore(internal): loosen internal type restrictions --- lib/hanzoai/internal/type/enum.rb | 6 +-- lib/hanzoai/internal/type/union.rb | 4 +- rbi/lib/hanzoai/internal/type/array_of.rbi | 19 ++++--- rbi/lib/hanzoai/internal/type/boolean.rbi | 9 ++-- rbi/lib/hanzoai/internal/type/hash_of.rbi | 19 ++++--- rbi/lib/hanzoai/internal/type/io_like.rbi | 9 ++-- rbi/lib/hanzoai/internal/type/unknown.rbi | 9 ++-- test/hanzoai/internal/type/base_model_test.rb | 54 ++++++++++++++++++- 8 files changed, 86 insertions(+), 43 deletions(-) diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 4d75ca23..c5144312 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -37,9 +37,9 @@ def ===(other) = values.include?(other) # # @return [Boolean] def ==(other) - # rubocop:disable Layout/LineLength - other.is_a?(Module) && other.singleton_class <= Hanzoai::Internal::Type::Enum && other.values.to_set == values.to_set - # rubocop:enable Layout/LineLength + # rubocop:disable Style/CaseEquality + Hanzoai::Internal::Type::Enum === other && other.values.to_set == values.to_set + # rubocop:enable Style/CaseEquality end # @api private diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 187fde56..847c8c4a 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -100,9 +100,7 @@ def ===(other) # # @return [Boolean] def ==(other) - # rubocop:disable Layout/LineLength - other.is_a?(Module) && other.singleton_class <= Hanzoai::Internal::Type::Union && other.derefed_variants == derefed_variants - # rubocop:enable Layout/LineLength + Hanzoai::Internal::Type::Union === other && other.derefed_variants == derefed_variants end # @api private diff --git a/rbi/lib/hanzoai/internal/type/array_of.rbi b/rbi/lib/hanzoai/internal/type/array_of.rbi index 1ca1d39a..f473ca34 100644 --- a/rbi/lib/hanzoai/internal/type/array_of.rbi +++ b/rbi/lib/hanzoai/internal/type/array_of.rbi @@ -10,11 +10,10 @@ module Hanzoai include Hanzoai::Internal::Type::Converter abstract! - final! Elem = type_member(:out) - sig(:final) do + sig do params( type_info: T.any( Hanzoai::Internal::AnyHash, @@ -27,14 +26,14 @@ module Hanzoai end def self.[](type_info, spec = {}); end - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def ===(other); end - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end # @api private - sig(:final) do + sig do override .params( value: T.any(T::Array[T.anything], T.anything), @@ -45,7 +44,7 @@ module Hanzoai def coerce(value, state:); end # @api private - sig(:final) do + sig do override .params( value: T.any(T::Array[T.anything], T.anything), @@ -56,15 +55,15 @@ module Hanzoai def dump(value, state:); end # @api private - sig(:final) { returns(Elem) } + sig { returns(Elem) } protected def item_type; end # @api private - sig(:final) { returns(T::Boolean) } + sig { returns(T::Boolean) } protected def nilable?; end # @api private - sig(:final) do + sig do params( type_info: T.any( Hanzoai::Internal::AnyHash, @@ -78,7 +77,7 @@ module Hanzoai def initialize(type_info, spec = {}); end # @api private - sig(:final) { params(depth: Integer).returns(String) } + sig { params(depth: Integer).returns(String) } def inspect(depth: 0); end end end diff --git a/rbi/lib/hanzoai/internal/type/boolean.rbi b/rbi/lib/hanzoai/internal/type/boolean.rbi index 32323e79..504b8caf 100644 --- a/rbi/lib/hanzoai/internal/type/boolean.rbi +++ b/rbi/lib/hanzoai/internal/type/boolean.rbi @@ -10,17 +10,16 @@ module Hanzoai extend Hanzoai::Internal::Type::Converter abstract! - final! - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def self.===(other); end - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def self.==(other); end class << self # @api private - sig(:final) do + sig do override .params(value: T.any( T::Boolean, @@ -32,7 +31,7 @@ module Hanzoai def coerce(value, state:); end # @api private - sig(:final) do + sig do override .params(value: T.any( T::Boolean, diff --git a/rbi/lib/hanzoai/internal/type/hash_of.rbi b/rbi/lib/hanzoai/internal/type/hash_of.rbi index 430294f0..cc7aadcb 100644 --- a/rbi/lib/hanzoai/internal/type/hash_of.rbi +++ b/rbi/lib/hanzoai/internal/type/hash_of.rbi @@ -10,11 +10,10 @@ module Hanzoai include Hanzoai::Internal::Type::Converter abstract! - final! Elem = type_member(:out) - sig(:final) do + sig do params( type_info: T.any( Hanzoai::Internal::AnyHash, @@ -27,14 +26,14 @@ module Hanzoai end def self.[](type_info, spec = {}); end - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def ===(other); end - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end # @api private - sig(:final) do + sig do override .params( value: T.any(T::Hash[T.anything, T.anything], T.anything), @@ -45,7 +44,7 @@ module Hanzoai def coerce(value, state:); end # @api private - sig(:final) do + sig do override .params( value: T.any(T::Hash[T.anything, T.anything], T.anything), @@ -56,15 +55,15 @@ module Hanzoai def dump(value, state:); end # @api private - sig(:final) { returns(Elem) } + sig { returns(Elem) } protected def item_type; end # @api private - sig(:final) { returns(T::Boolean) } + sig { returns(T::Boolean) } protected def nilable?; end # @api private - sig(:final) do + sig do params( type_info: T.any( Hanzoai::Internal::AnyHash, @@ -78,7 +77,7 @@ module Hanzoai def initialize(type_info, spec = {}); end # @api private - sig(:final) { params(depth: Integer).returns(String) } + sig { params(depth: Integer).returns(String) } def inspect(depth: 0); end end end diff --git a/rbi/lib/hanzoai/internal/type/io_like.rbi b/rbi/lib/hanzoai/internal/type/io_like.rbi index 2b26a2dd..eea90565 100644 --- a/rbi/lib/hanzoai/internal/type/io_like.rbi +++ b/rbi/lib/hanzoai/internal/type/io_like.rbi @@ -10,17 +10,16 @@ module Hanzoai extend Hanzoai::Internal::Type::Converter abstract! - final! - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def self.===(other); end - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def self.==(other); end class << self # @api private - sig(:final) do + sig do override .params(value: T.any( StringIO, @@ -33,7 +32,7 @@ module Hanzoai def coerce(value, state:); end # @api private - sig(:final) do + sig do override .params( value: T.any(Pathname, StringIO, IO, String, T.anything), diff --git a/rbi/lib/hanzoai/internal/type/unknown.rbi b/rbi/lib/hanzoai/internal/type/unknown.rbi index c3b0647e..3f8ae645 100644 --- a/rbi/lib/hanzoai/internal/type/unknown.rbi +++ b/rbi/lib/hanzoai/internal/type/unknown.rbi @@ -10,17 +10,16 @@ module Hanzoai extend Hanzoai::Internal::Type::Converter abstract! - final! - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def self.===(other); end - sig(:final) { params(other: T.anything).returns(T::Boolean) } + sig { params(other: T.anything).returns(T::Boolean) } def self.==(other); end class << self # @api private - sig(:final) do + sig do override .params(value: T.anything, state: Hanzoai::Internal::Type::Converter::CoerceState) .returns(T.anything) @@ -28,7 +27,7 @@ module Hanzoai def coerce(value, state:); end # @api private - sig(:final) do + sig do override.params( value: T.anything, state: Hanzoai::Internal::Type::Converter::DumpState diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 89a7360e..88199e14 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -154,6 +154,12 @@ def test_dump_retry end class Hanzoai::Test::EnumModelTest < Minitest::Test + class E0 + include Hanzoai::Internal::Type::Enum + + def initialize(*values) = (@values = values) + end + module E1 extend Hanzoai::Internal::Type::Enum @@ -183,6 +189,10 @@ module E4 def test_coerce cases = { + [E0.new, "one"] => [{no: 1}, "one"], + [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], @@ -432,8 +442,10 @@ def test_accessors end class Hanzoai::Test::UnionTest < Minitest::Test - module U0 - extend Hanzoai::Internal::Type::Union + class U0 + include Hanzoai::Internal::Type::Union + + def initialize(*variants) = variants.each { variant(_1) } end module U1 @@ -519,6 +531,11 @@ def test_coerce cases = { [U0, :""] => [{no: 1}, 0, :""], + [U0.new(Integer, Float), "one"] => [{no: 1}, 2, "one"], + [U0.new(Integer, Float), 1.0] => [{yes: 1}, 2, 1.0], + [U0.new({const: :a}), "a"] => [{yes: 1}, 1, :a], + [U0.new({const: :a}), "2"] => [{maybe: 1}, 1, "2"], + [U1, "a"] => [{yes: 1}, 1, :a], [U1, "2"] => [{maybe: 1}, 2, "2"], [U1, :b] => [{maybe: 1}, 2, :b], @@ -556,6 +573,12 @@ def test_coerce end class Hanzoai::Test::BaseModelQoLTest < Minitest::Test + class E0 + include Hanzoai::Internal::Type::Enum + + def initialize(*values) = (@values = values) + end + module E1 extend Hanzoai::Internal::Type::Enum @@ -575,6 +598,26 @@ module E3 B = 3 end + class U0 + include Hanzoai::Internal::Type::Union + + def initialize(*variants) = variants.each { variant(_1) } + end + + module U1 + extend Hanzoai::Internal::Type::Union + + variant String + variant Integer + end + + module U2 + extend Hanzoai::Internal::Type::Union + + variant String + variant Integer + end + class M1 < Hanzoai::Internal::Type::BaseModel required :a, Integer end @@ -592,8 +635,15 @@ def test_equality [Hanzoai::Internal::Type::Unknown, Hanzoai::Internal::Type::Unknown] => true, [Hanzoai::Internal::Type::Boolean, Hanzoai::Internal::Type::Boolean] => true, [Hanzoai::Internal::Type::Unknown, Hanzoai::Internal::Type::Boolean] => false, + [E0.new(:a, :b), E0.new(:a, :b)] => true, + [E0.new(:a, :b), E0.new(:b, :a)] => true, + [E0.new(:a, :b), E0.new(:b, :c)] => false, [E1, E2] => true, [E1, E3] => false, + [U0.new(String, Integer), U0.new(String, Integer)] => true, + [U0.new(String, Integer), U0.new(Integer, String)] => false, + [U0.new(String, Float), U0.new(String, Integer)] => false, + [U1, U2] => true, [M1, M2] => false, [M1, M3] => true } From 37f21a8010eb14ed8820a244a23890b6c3ce7aa3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 04:07:54 +0000 Subject: [PATCH 026/139] chore(internal): mostly README touch ups --- README.md | 2 +- lib/hanzoai/internal/type/enum.rb | 3 ++- lib/hanzoai/internal/type/union.rb | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index cb531277..b231a7dc 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ It is generated with [Stainless](https://www.stainless.com/). ## Documentation -Documentation for released of this gem can be found [on RubyDoc](https://gemdocs.org/gems/hanzoai). +Documentation for releases of this gem can be found [on RubyDoc](https://gemdocs.org/gems/hanzoai). The underlying REST API documentation can be found on [docs.hanzo.ai](https://docs.hanzo.ai). diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index c5144312..4d7aba9b 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -92,8 +92,9 @@ def inspect(depth: 0) return super() if depth.positive? members = values.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) } + prefix = is_a?(Module) ? name : self.class.name - "#{name}[#{members.join(' | ')}]" + "#{prefix}[#{members.join(' | ')}]" end end end diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 847c8c4a..a615d32d 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -193,8 +193,9 @@ def inspect(depth: 0) return super() if depth.positive? members = variants.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) } + prefix = is_a?(Module) ? name : self.class.name - "#{name}[#{members.join(' | ')}]" + "#{prefix}[#{members.join(' | ')}]" end end end From dc4f904b61cb044b1a9df5e42ae17ce2accd1295 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 04:10:56 +0000 Subject: [PATCH 027/139] docs: update documentation links to be more uniform --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b231a7dc..bf227619 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ It is generated with [Stainless](https://www.stainless.com/). Documentation for releases of this gem can be found [on RubyDoc](https://gemdocs.org/gems/hanzoai). -The underlying REST API documentation can be found on [docs.hanzo.ai](https://docs.hanzo.ai). +The REST API documentation can be found on [docs.hanzo.ai](https://docs.hanzo.ai). ## Installation From 5d4c89ad4f61bf02f7c3870449871693b3cfbbdc Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 04:18:26 +0000 Subject: [PATCH 028/139] chore(internal): always run post-processing when formatting when syntax_tree --- .rubocop.yml | 1 + Rakefile | 9 ++++++++- lib/hanzoai/internal/type/enum.rb | 4 +++- lib/hanzoai/internal/type/union.rb | 4 +++- 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 88fbf3d4..6b1ed516 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -244,6 +244,7 @@ Style/SafeNavigation: Style/SignalException: Exclude: - Rakefile + - "**/*.rake" # We use these sparingly, where we anticipate future branches for the # inner conditional. diff --git a/Rakefile b/Rakefile index 883a061f..8a3782f2 100644 --- a/Rakefile +++ b/Rakefile @@ -59,12 +59,19 @@ multitask(:syntax_tree) do # 2. at label `l1`, join previously annotated line with `class | module` information. pst = sed + [subst, "--"] + success = false + # 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}") + sh("#{find.shelljoin} | #{fmt.shelljoin}") do + success = _1 + end # transform type aliases back to class aliases sh("#{find.shelljoin} | #{pst.shelljoin}") + + # always run post-processing to remove comment marker + fail unless success end multitask(format: [:ruboformat, :syntax_tree]) diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 4d7aba9b..d665b4ed 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -89,7 +89,9 @@ def coerce(value, state:) # # @return [String] def inspect(depth: 0) - return super() if depth.positive? + if depth.positive? + return is_a?(Module) ? super() : self.class.name + end members = values.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) } prefix = is_a?(Module) ? name : self.class.name diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index a615d32d..b3fd6e81 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -190,7 +190,9 @@ def dump(value, state:) # # @return [String] def inspect(depth: 0) - return super() if depth.positive? + if depth.positive? + return is_a?(Module) ? super() : self.class.name + end members = variants.map { Hanzoai::Internal::Type::Converter.inspect(_1, depth: depth.succ) } prefix = is_a?(Module) ? name : self.class.name From dbf9a70ccd8029f3d9cd4270582a54d0d8e5219d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 16 Apr 2025 03:18:38 +0000 Subject: [PATCH 029/139] chore(internal): protect SSE parsing pipeline from broken UTF-8 characters --- .../transport/pooled_net_requester.rb | 2 +- lib/hanzoai/internal/util.rb | 45 +++++++++++++++---- rbi/lib/hanzoai/internal/util.rbi | 15 +++++++ sig/hanzoai/internal/util.rbs | 2 + test/hanzoai/internal/util_test.rb | 22 ++++++++- 5 files changed, 75 insertions(+), 11 deletions(-) diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 067f7bda..2217368a 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -149,7 +149,7 @@ def execute(request) break if finished rsp.read_body do |bytes| - y << bytes + y << bytes.force_encoding(Encoding::BINARY) break if finished self.class.calibrate_socket_timeout(conn, deadline) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index f728c55c..5001fa4b 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -448,7 +448,7 @@ def initialize(src, &blk) else src end - @buf = String.new.b + @buf = String.new @blk = blk end end @@ -460,7 +460,7 @@ class << self # @return [Enumerable] def writable_enum(&blk) Enumerator.new do |y| - buf = String.new.b + buf = String.new y.define_singleton_method(:write) do self << buf.replace(_1) buf.bytesize @@ -582,6 +582,27 @@ def encode_content(headers, body) # @api private # + # https://www.iana.org/assignments/character-sets/character-sets.xhtml + # + # @param content_type [String] + # @param text [String] + def force_charset!(content_type, text:) + charset = /charset=([^;\s]+)/.match(content_type)&.captures&.first + + return unless charset + + begin + encoding = Encoding.find(charset) + text.force_encoding(encoding) + rescue ArgumentError + nil + end + end + + # @api private + # + # Assumes each chunk in stream has `Encoding::BINARY`. + # # @param headers [Hash{String=>String}, Net::HTTPHeader] # @param stream [Enumerable] # @param suppress_error [Boolean] @@ -589,7 +610,7 @@ def encode_content(headers, body) # @raise [JSON::ParserError] # @return [Object] def decode_content(headers, stream:, suppress_error: false) - case headers["content-type"] + case (content_type = headers["content-type"]) in %r{^application/(?:vnd\.api\+)?json} json = stream.to_a.join begin @@ -606,11 +627,10 @@ def decode_content(headers, stream:, suppress_error: false) in %r{^text/event-stream} lines = decode_lines(stream) decode_sse(lines) - in %r{^text/} - stream.to_a.join else - # TODO: parsing other response types - StringIO.new(stream.to_a.join) + text = stream.to_a.join + force_charset!(content_type, text: text) + StringIO.new(text) end end end @@ -675,12 +695,17 @@ def chain_fused(enum, &blk) class << self # @api private # + # Assumes Strings have been forced into having `Encoding::BINARY`. + # + # This decoder is responsible for reassembling lines split across multiple + # fragments. + # # @param enum [Enumerable] # # @return [Enumerable] def decode_lines(enum) re = /(\r\n|\r|\n)/ - buffer = String.new.b + buffer = String.new cr_seen = nil chain_fused(enum) do |y| @@ -711,6 +736,8 @@ def decode_lines(enum) # # https://html.spec.whatwg.org/multipage/server-sent-events.html#parsing-an-event-stream # + # Assumes that `lines` has been decoded with `#decode_lines`. + # # @param lines [Enumerable] # # @return [EnumerableObject}>] @@ -734,7 +761,7 @@ def decode_sse(lines) in "event" current.merge!(event: value) in "data" - (current[:data] ||= String.new.b) << (value << "\n") + (current[:data] ||= String.new) << (value << "\n") in "id" unless value.include?("\0") current.merge!(id: value) in "retry" if /^\d+$/ =~ value diff --git a/rbi/lib/hanzoai/internal/util.rbi b/rbi/lib/hanzoai/internal/util.rbi index a9506455..bceb6d5d 100644 --- a/rbi/lib/hanzoai/internal/util.rbi +++ b/rbi/lib/hanzoai/internal/util.rbi @@ -215,6 +215,14 @@ module Hanzoai 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 + + # @api private + # + # Assumes each chunk in stream has `Encoding::BINARY`. sig do params( headers: T.any(T::Hash[String, String], Net::HTTPHeader), @@ -263,12 +271,19 @@ module Hanzoai class << self # @api private + # + # Assumes Strings have been forced into having `Encoding::BINARY`. + # + # 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 # @api private # # https://html.spec.whatwg.org/multipage/server-sent-events.html#parsing-an-event-stream + # + # Assumes that `lines` has been decoded with `#decode_lines`. sig do params(lines: T::Enumerable[String]).returns(T::Enumerable[Hanzoai::Internal::Util::ServerSentEvent]) end diff --git a/sig/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index 6fd5f238..cd6b04a4 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -120,6 +120,8 @@ module Hanzoai top body ) -> top + def self?.force_charset!: (String content_type, text: String) -> void + def self?.decode_content: ( ::Hash[String, String] headers, stream: Enumerable[String], diff --git a/test/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index 17fa3995..a0cd40ff 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -368,6 +368,24 @@ def test_close_fused_sse_chain end end +class Hanzoai::Test::UtilContentDecodingTest < Minitest::Test + def test_charset + cases = { + "application/json" => Encoding::BINARY, + "application/json; charset=utf-8" => Encoding::UTF_8, + "charset=uTf-8 application/json; " => Encoding::UTF_8, + "charset=UTF-8; application/json; " => Encoding::UTF_8, + "charset=ISO-8859-1 ;application/json; " => Encoding::ISO_8859_1, + "charset=EUC-KR ;application/json; " => Encoding::EUC_KR + } + text = String.new.force_encoding(Encoding::BINARY) + cases.each do |content_type, encoding| + Hanzoai::Internal::Util.force_charset!(content_type, text: text) + assert_equal(encoding, text.encoding) + end + end +end + class Hanzoai::Test::UtilSseTest < Minitest::Test def test_decode_lines cases = { @@ -381,7 +399,9 @@ def test_decode_lines %W[\na b\n\n] => %W[\n ab\n \n], %W[\na b] => %W[\n ab], %W[\u1F62E\u200D\u1F4A8] => %W[\u1F62E\u200D\u1F4A8], - %W[\u1F62E \u200D \u1F4A8] => %W[\u1F62E\u200D\u1F4A8] + %W[\u1F62E \u200D \u1F4A8] => %W[\u1F62E\u200D\u1F4A8], + ["\xf0\x9f".b, "\xa5\xba".b] => ["\xf0\x9f\xa5\xba".b], + ["\xf0".b, "\x9f".b, "\xa5".b, "\xba".b] => ["\xf0\x9f\xa5\xba".b] } eols = %W[\n \r \r\n] cases.each do |enum, expected| From 4f1e8e27d74879486ced2be56ea88219a3788655 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 17 Apr 2025 03:28:52 +0000 Subject: [PATCH 030/139] feat(client): enable setting base URL from environment variable --- lib/hanzoai/client.rb | 16 +++++----------- rbi/lib/hanzoai/client.rbi | 5 +++-- test/hanzoai/client_test.rb | 13 ++----------- 3 files changed, 10 insertions(+), 24 deletions(-) diff --git a/lib/hanzoai/client.rb b/lib/hanzoai/client.rb index 22b2a10d..746690e9 100644 --- a/lib/hanzoai/client.rb +++ b/lib/hanzoai/client.rb @@ -205,7 +205,8 @@ def get_home(params = {}) # - `production` corresponds to `https://api.hanzo.ai` # - `sandbox` corresponds to `https://api.sandbox.hanzo.ai` # - # @param base_url [String, nil] Override the default base URL for the API, e.g., `"https://api.example.com/v2/"` + # @param base_url [String, nil] Override the default base URL for the API, e.g., + # `"https://api.example.com/v2/"`. Defaults to `ENV["HANZO_BASE_URL"]` # # @param max_retries [Integer] Max number of retries to attempt after a failed retryable request. # @@ -217,21 +218,14 @@ def get_home(params = {}) def initialize( api_key: ENV["HANZO_API_KEY"], environment: nil, - base_url: nil, + base_url: ENV["HANZO_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 ) - case [environment, base_url] - in [Symbol | String, String] - raise ArgumentError.new("both environment and base_url given, expected only one") - in [Symbol | String, nil] - base_url = ENVIRONMENTS.fetch(environment.to_sym) do - raise ArgumentError.new("environment must be one of #{ENVIRONMENTS.keys}, got #{environment}") - end - else - base_url ||= ENVIRONMENTS.fetch(:production) + base_url ||= ENVIRONMENTS.fetch(environment || :production) do + raise ArgumentError.new("environment must be one of #{ENVIRONMENTS.keys}, got #{environment}") end if api_key.nil? diff --git a/rbi/lib/hanzoai/client.rbi b/rbi/lib/hanzoai/client.rbi index 25ad0942..4778d782 100644 --- a/rbi/lib/hanzoai/client.rbi +++ b/rbi/lib/hanzoai/client.rbi @@ -199,8 +199,9 @@ module Hanzoai # - `production` corresponds to `https://api.hanzo.ai` # - `sandbox` corresponds to `https://api.sandbox.hanzo.ai` environment: nil, - # Override the default base URL for the API, e.g., `"https://api.example.com/v2/"` - base_url: nil, + # Override the default base URL for the API, e.g., + # `"https://api.example.com/v2/"`. Defaults to `ENV["HANZO_BASE_URL"]` + base_url: ENV["HANZO_BASE_URL"], # Max number of retries to attempt after a failed retryable request. max_retries: DEFAULT_MAX_RETRIES, timeout: DEFAULT_TIMEOUT_IN_SECONDS, diff --git a/test/hanzoai/client_test.rb b/test/hanzoai/client_test.rb index cd038cdd..d654118e 100644 --- a/test/hanzoai/client_test.rb +++ b/test/hanzoai/client_test.rb @@ -11,19 +11,10 @@ def teardown Thread.current.thread_variable_set(:mock_sleep, nil) end - def test_raises_on_both_base_url_and_environment - e = assert_raises(ArgumentError) do - Hanzoai::Client.new( - base_url: "https://localhost:8000", - environment: "production" - ) - end - assert_match(/both environment and base_url given/, e.message) - end - def test_raises_on_unknown_environment e = assert_raises(ArgumentError) do - Hanzoai::Client.new(environment: "wrong") + v = Hanzoai::Client.new(environment: "wrong") + puts(v.base_url) end assert_match(/environment must be one of/, e.message) end From ecc5e6814ea56ec225ce700106f7a944f11af10c Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 18 Apr 2025 03:00:09 +0000 Subject: [PATCH 031/139] fix(client): send correct HTTP path --- lib/hanzoai/internal/transport/pooled_net_requester.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 2217368a..d4e7783c 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -57,11 +57,15 @@ def calibrate_socket_timeout(conn, deadline) # @return [Array(Net::HTTPGenericRequest, Proc)] def build_request(request, &blk) method, url, headers, body = request.fetch_values(:method, :url, :headers, :body) + + # ensure we construct a URI class of the right scheme + url = URI(url.to_s) + req = Net::HTTPGenericRequest.new( method.to_s.upcase, !body.nil?, method != :head, - url.to_s + url ) headers.each { req[_1] = _2 } From 0f9728a6a15786aea8f49c730d279dd1d3800225 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 18 Apr 2025 03:01:29 +0000 Subject: [PATCH 032/139] fix: restore ability to configure server environment as string during client construction --- lib/hanzoai/client.rb | 5 +++-- test/hanzoai/client_test.rb | 3 +-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/hanzoai/client.rb b/lib/hanzoai/client.rb index 746690e9..2116a458 100644 --- a/lib/hanzoai/client.rb +++ b/lib/hanzoai/client.rb @@ -224,8 +224,9 @@ def initialize( initial_retry_delay: DEFAULT_INITIAL_RETRY_DELAY, max_retry_delay: DEFAULT_MAX_RETRY_DELAY ) - base_url ||= ENVIRONMENTS.fetch(environment || :production) do - raise ArgumentError.new("environment must be one of #{ENVIRONMENTS.keys}, got #{environment}") + base_url ||= Hanzoai::Client::ENVIRONMENTS.fetch(environment&.to_sym || :production) do + message = "environment must be one of #{Hanzoai::Client::ENVIRONMENTS.keys}, got #{environment}" + raise ArgumentError.new(message) end if api_key.nil? diff --git a/test/hanzoai/client_test.rb b/test/hanzoai/client_test.rb index d654118e..1326afaa 100644 --- a/test/hanzoai/client_test.rb +++ b/test/hanzoai/client_test.rb @@ -13,8 +13,7 @@ def teardown def test_raises_on_unknown_environment e = assert_raises(ArgumentError) do - v = Hanzoai::Client.new(environment: "wrong") - puts(v.base_url) + Hanzoai::Client.new(environment: "wrong") end assert_match(/environment must be one of/, e.message) end From f5471b0639d6786fc37b168fe2086e778356f292 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 18 Apr 2025 03:17:38 +0000 Subject: [PATCH 033/139] chore(internal): contribute.md and contributor QoL improvements --- .gitignore | 6 +- .ruby-version | 1 + CONTRIBUTING.md | 132 ++++++++++++++++++++++++++++++++++++++++++ Rakefile | 67 ++++++++++++++++----- hanzoai.gemspec | 17 ++++-- scripts/bootstrap | 4 +- scripts/format | 1 + scripts/lint | 2 + scripts/test | 2 +- sorbet/rbi/.gitignore | 2 + 10 files changed, 210 insertions(+), 24 deletions(-) create mode 100644 .ruby-version create mode 100644 CONTRIBUTING.md create mode 100644 sorbet/rbi/.gitignore diff --git a/.gitignore b/.gitignore index 8b1228a8..3d26ceed 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,10 @@ *.gem .idea/ +.ignore .prism.log .ruby-lsp/ .yardoc/ -Brewfile.lock.json bin/tapioca +Brewfile.lock.json doc/ -sorbet/* -!/sorbet/config +sorbet/tapioca/* diff --git a/.ruby-version b/.ruby-version new file mode 100644 index 00000000..fd2a0186 --- /dev/null +++ b/.ruby-version @@ -0,0 +1 @@ +3.1.0 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..b2d1adba --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,132 @@ +## Setting up the environment + +This repository contains a `.ruby-version` file, which should work with either [rbenv](https://github.com/rbenv/rbenv) or [asdf](https://github.com/asdf-vm/asdf) with the [ruby plugin](https://github.com/asdf-vm/asdf-ruby). + +Please follow the instructions for your preferred version manager to install the Ruby version specified in the `.ruby-version` file. + +To set up the repository, run: + +```bash +$ ./scripts/bootstrap +``` + +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. + +## Adding and running examples + +All files in the `examples/` directory are not modified by the generator and can be freely edited or added to. + +```ruby +#!/usr/bin/env ruby +# frozen_string_literal: true + +require_relative "../lib/hanzoai" + +# ... +``` + +```bash +$ chmod +x './examples/.rb' + +# run the example against your api +$ ruby './examples/.rb' +``` + +## Using the repository from source + +If you’d like to use the repository from source, you can either install from git or reference a cloned repository: + +To install via git in your `Gemfile`: + +```ruby +gem "hanzoai", git: "https://www.github.com/hanzoai/ruby-sdk" +``` + +Alternatively, reference local copy of the repo: + +```bash +$ git clone -- 'https://www.github.com/hanzoai/ruby-sdk' '' +``` + +```ruby +gem "hanzoai", path: "" +``` + +## Running commands + +Running `rake` by itself will show all runnable commands. + +```bash +$ bundle exec rake +``` + +## Running tests + +Most tests require you to [set up a mock server](https://github.com/stoplightio/prism) against the OpenAPI spec to run the tests. + +```bash +$ npx prism mock path/to/your/openapi.yml +``` + +```bash +$ bundle exec rake test +``` + +## Linting and formatting + +This repository uses [rubocop](https://github.com/rubocop/rubocop) for linting and formatting of `*.rb` and `*.rbi` files. [syntax_tree](https://github.com/ruby-syntax-tree/syntax_tree) is used for formatting `*.rbs` files. + +There are two separate type checkers supported by this library: [sorbet](https://github.com/sorbet/sorbet) and [steep](https://github.com/soutaro/steep) are used for verifying `*.rbi` and `*.rbs` files respectively. + +To lint and typecheck: + +```bash +$ bundle exec rake lint +``` + +To format and fix all lint issues automatically: + +```bash +$ bundle exec rake format +``` + +## Editor Support + +### Solargraph + +This library includes [Solargraph](https://solargraph.org) support for both auto-completion and go to definition. + +```ruby +gem "solargraph", group: :development +``` + +Note: if you had installed the gem locally using `git: "..."` or `path: "..."`, you must update your [`.solargraph.yml`](https://solargraph.org/guides/configuration) to include the path to where the gem is located: + +```yaml +include: + - '/lib/**/*.rb' +``` + +### Sorbet + +[Sorbet](https://sorbet.org) should mostly work out of the box when editing this library directly. However, there are a some caveats due to the colocation of `*.rb` and `*.rbi` files in the same project. These issues should not otherwise manifest when this library is used as a dependency. + +1. For go to definition usages, sorbet might get confused and may not always navigate to the correct location. + +2. For each generic type in `*.rbi` files, a spurious "Duplicate type member" error is present. + +### Ruby LSP + +The Ruby LSP has [best effort support](https://shopify.github.io/ruby-lsp/#guessed-types) for inferring type information from Ruby code, and as such it may not always be able to provide accurate type information. + +## Documentation Preview + +To preview the documentation, run: + +```bash +$ bundle exec rake docs:preview [PORT=8808] +``` diff --git a/Rakefile b/Rakefile index 8a3782f2..b01c2735 100644 --- a/Rakefile +++ b/Rakefile @@ -1,5 +1,6 @@ # frozen_string_literal: true +require "pathname" require "securerandom" require "shellwords" @@ -7,10 +8,23 @@ require "minitest/test_task" require "rake/clean" require "rubocop/rake_task" -CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/]) +tapioca = "sorbet/tapioca" +ignore_file = ".ignore" -multitask(default: [:test]) +CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/ doc/], *FileList["*.gem"], ignore_file) +CLOBBER.push(*%w[sorbet/rbi/annotations/ sorbet/rbi/gems/], tapioca) + +multitask(:default) do + sh(*%w[rake --tasks]) +end + +desc("Preview docs; use `PORT=` to change the port") +multitask(:"docs:preview") do + sh(*%w[yard server --bind [::] --reload --quiet --port], ENV.fetch("PORT", "8808")) +end + +desc("Run test suites; use `TEST=path/to/test.rb` to run a specific test file") multitask(:test) do rb = FileList[ENV.fetch("TEST", "./test/**/*_test.rb")] @@ -23,17 +37,20 @@ 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 --] -multitask(:rubocop) do +desc("Lint `*.rb(i)`") +multitask(:"lint:rubocop") do lint = xargs + %w[rubocop --fail-level E] + (ENV.key?("CI") ? %w[--format github] : []) sh("#{rubo_find.shelljoin} | #{lint.shelljoin}") end -multitask(:ruboformat) do +desc("Format `*.rb(i)`") +multitask(:"format:rubocop") do fmt = xargs + %w[rubocop --fail-level F --autocorrect --format simple --] sh("#{rubo_find.shelljoin} | #{fmt.shelljoin}") end -multitask(:syntax_tree) do +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] uuid = SecureRandom.uuid @@ -74,27 +91,49 @@ multitask(:syntax_tree) do fail unless success end -multitask(format: [:ruboformat, :syntax_tree]) +desc("Format everything") +multitask(format: [:"format:rubocop", :"format:syntax_tree"]) -multitask(:steep) do +desc("Typecheck `*.rbs`") +multitask(:"typecheck:steep") do sh(*%w[steep check]) end -multitask(:sorbet) do +desc("Typecheck `*.rbi`") +multitask(:"typecheck:sorbet") do sh(*%w[srb typecheck]) end -file("sorbet/tapioca") do +file(tapioca) do sh(*%w[tapioca init]) end -multitask(typecheck: [:steep, :sorbet]) -multitask(lint: [:rubocop, :typecheck]) +desc("Typecheck everything") +multitask(typecheck: [:"typecheck:steep", :"typecheck:sorbet"]) + +desc("Lint everything") +multitask(lint: [:"lint:rubocop", :typecheck]) + +desc("Build yard docs") +multitask(:"build:docs") do + sh(*%w[yard]) +end -multitask(:build) do - sh(*%w[gem build -- hanzoai.gemspec]) +desc("Build ruby gem") +multitask(:"build:gem") do + # optimizing for grepping through the gem bundle: many tools honour `.ignore` files, including VSCode + # + # both `rbi` and `sig` directories are navigable by their respective tool chains and therefore can be ignored by tools such as `rg` + Pathname(ignore_file).write(<<~GLOB) + rbi/* + sig/* + GLOB + + sh(*%w[gem build -- openai.gemspec]) + rm_rf(ignore_file) end -multitask(release: [:build]) do +desc("Release ruby gem") +multitask(release: [:"build:gem"]) do sh(*%w[gem push], *FileList["hanzoai-*.gem"]) end diff --git a/hanzoai.gemspec b/hanzoai.gemspec index e91f2c0f..4ce5ce65 100644 --- a/hanzoai.gemspec +++ b/hanzoai.gemspec @@ -8,12 +8,21 @@ Gem::Specification.new do |s| s.summary = "Ruby library to access the Hanzo API" s.authors = ["Hanzo"] s.email = "dev@hanzo.ai" - s.files = Dir["lib/**/*.rb", "rbi/**/*.rbi", "sig/**/*.rbs", "manifest.yaml", "CHANGELOG.md", "SECURITY.md"] - s.extra_rdoc_files = ["README.md"] - s.required_ruby_version = ">= 3.0.0" - s.add_dependency "connection_pool" s.homepage = "https://gemdocs.org/gems/hanzoai" s.metadata["homepage_uri"] = s.homepage s.metadata["source_code_uri"] = "https://github.com/hanzoai/ruby-sdk" s.metadata["rubygems_mfa_required"] = false.to_s + s.required_ruby_version = ">= 3.0.0" + + s.files = Dir[ + "lib/**/*.rb", + "rbi/**/*.rbi", + "sig/**/*.rbs", + "manifest.yaml", + "SECURITY.md", + "CHANGELOG.md", + ".ignore" + ] + s.extra_rdoc_files = ["README.md"] + s.add_dependency "connection_pool" end diff --git a/scripts/bootstrap b/scripts/bootstrap index 88566757..cc31aa85 100755 --- a/scripts/bootstrap +++ b/scripts/bootstrap @@ -2,7 +2,7 @@ set -e -cd "$(dirname "$0")/.." +cd -- "$(dirname -- "$0")/.." if [ -f "Brewfile" ] && [ "$(uname -s)" = "Darwin" ] && [ "$SKIP_BREW" != "1" ]; then brew bundle check >/dev/null 2>&1 || { @@ -13,4 +13,4 @@ fi echo "==> Installing Ruby dependencies…" -bundle install +exec -- bundle install "$@" diff --git a/scripts/format b/scripts/format index 67b400de..177d1e63 100755 --- a/scripts/format +++ b/scripts/format @@ -5,4 +5,5 @@ set -e cd -- "$(dirname -- "$0")/.." echo "==> Running formatters" + exec -- bundle exec rake format "$@" diff --git a/scripts/lint b/scripts/lint index 39581dc1..08b0dbeb 100755 --- a/scripts/lint +++ b/scripts/lint @@ -4,4 +4,6 @@ set -e cd -- "$(dirname -- "$0")/.." +echo "==> Running linters" + exec -- bundle exec rake lint "$@" diff --git a/scripts/test b/scripts/test index 2e1fe093..8e5d35cd 100755 --- a/scripts/test +++ b/scripts/test @@ -2,7 +2,7 @@ set -e -cd "$(dirname "$0")/.." +cd -- "$(dirname -- "$0")/.." RED='\033[0;31m' GREEN='\033[0;32m' diff --git a/sorbet/rbi/.gitignore b/sorbet/rbi/.gitignore new file mode 100644 index 00000000..d6b7ef32 --- /dev/null +++ b/sorbet/rbi/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore From fece7cfcbb1cec7ab83f328135036956876855a3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 18 Apr 2025 03:18:39 +0000 Subject: [PATCH 034/139] fix: always send idempotency header when specified as a request option --- lib/hanzoai/internal/transport/base_client.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index f1b6d2a2..0a28a889 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -253,7 +253,7 @@ def initialize( if @idempotency_header && !headers.key?(@idempotency_header) && - !Net::HTTP::IDEMPOTENT_METHODS_.include?(method.to_s.upcase) + (!Net::HTTP::IDEMPOTENT_METHODS_.include?(method.to_s.upcase) || opts.key?(:idempotency_key)) headers[@idempotency_header] = opts.fetch(:idempotency_key) { generate_idempotency_key } end From 27c96f0ada319aae9419532da269d6afbe83f694 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 18 Apr 2025 03:21:22 +0000 Subject: [PATCH 035/139] chore: refine `#inspect` and `#to_s` for model classes --- lib/hanzoai/internal/type/base_model.rb | 46 +++++++++++++------- rbi/lib/hanzoai/internal/type/base_model.rbi | 9 ++++ sig/hanzoai/internal/type/base_model.rbs | 6 +++ 3 files changed, 46 insertions(+), 15 deletions(-) diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index a39efc6d..3ccf9be5 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -345,6 +345,27 @@ def deconstruct_keys(keys) .to_h end + class << self + # @param model [Hanzoai::Internal::Type::BaseModel] + # + # @return [Hash{Symbol=>Object}] + def walk(model) + walk = ->(x) do + case x + in Hanzoai::Internal::Type::BaseModel + walk.call(x.to_h) + in Hash + x.transform_values(&walk) + in Array + x.map(&walk) + else + x + end + end + walk.call(model) + end + end + # @param a [Object] # # @return [String] @@ -380,13 +401,11 @@ def inspect(depth: 0) depth = depth.succ deferred = fields.transform_values do |field| type, required, nilable = field.fetch_values(:type, :required, :nilable) - -> do - [ - Hanzoai::Internal::Type::Converter.inspect(type, depth: depth), - !required || nilable ? "nil" : nil - ].compact.join(" | ") - end - .tap { _1.define_singleton_method(:inspect) { call } } + inspected = [ + Hanzoai::Internal::Type::Converter.inspect(type, depth: depth), + !required || nilable ? "nil" : nil + ].compact.join(" | ") + -> { inspected }.tap { _1.define_singleton_method(:inspect) { call } } end "#{name}[#{deferred.inspect}]" @@ -396,15 +415,12 @@ def inspect(depth: 0) # @api private # # @return [String] - def inspect - rows = @data.map do - "#{_1}=#{self.class.known_fields.key?(_1) ? public_send(_1).inspect : ''}" - rescue Hanzoai::Errors::ConversionError - "#{_1}=#{_2.inspect}" - end + def to_s = self.class.walk(@data).to_s - "#<#{self.class}:0x#{object_id.to_s(16)} #{rows.join(' ')}>" - end + # @api private + # + # @return [String] + def inspect = "#<#{self.class}:0x#{object_id.to_s(16)} #{self}>" end end end diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index a7cdea8d..3a34b9dc 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -175,6 +175,11 @@ module Hanzoai sig { params(keys: T.nilable(T::Array[Symbol])).returns(Hanzoai::Internal::AnyHash) } def deconstruct_keys(keys); end + class << self + sig { params(model: Hanzoai::Internal::Type::BaseModel).returns(Hanzoai::Internal::AnyHash) } + def walk(model); end + end + sig { params(a: T.anything).returns(String) } def to_json(*a); end @@ -191,6 +196,10 @@ module Hanzoai def inspect(depth: 0); end end + # @api private + sig { returns(String) } + def to_s; end + # @api private sig { returns(String) } def inspect; end diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index 9fbd0d8f..d66a5fdb 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -69,6 +69,10 @@ module Hanzoai def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top] + def self.walk: ( + Hanzoai::Internal::Type::BaseModel model + ) -> ::Hash[Symbol, top] + def to_json: (*top a) -> String def to_yaml: (*top a) -> String @@ -77,6 +81,8 @@ module Hanzoai def self.inspect: (?depth: Integer) -> String + def to_s: -> String + def inspect: -> String end end From 2d35e00e17f4426a3cf72136226e7b272b950ed9 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 03:25:27 +0000 Subject: [PATCH 036/139] chore: make sorbet enums easier to read --- rbi/lib/hanzoai/models/customer_create_params.rbi | 3 +-- rbi/lib/hanzoai/models/customer_list_response.rbi | 3 +-- .../models/customer_retrieve_info_response.rbi | 3 +-- rbi/lib/hanzoai/models/customer_update_params.rbi | 3 +-- .../hanzoai/models/fine_tuning/job_create_params.rbi | 3 +-- .../hanzoai/models/fine_tuning/job_list_params.rbi | 3 +-- .../models/fine_tuning/job_retrieve_params.rbi | 3 +-- .../models/global/spend_retrieve_report_params.rbi | 3 +-- .../hanzoai/models/health_check_services_params.rbi | 5 ++--- rbi/lib/hanzoai/models/key_check_health_response.rbi | 6 ++---- rbi/lib/hanzoai/models/key_list_response.rbi | 12 ++---------- rbi/lib/hanzoai/models/member.rbi | 2 +- rbi/lib/hanzoai/models/model_info.rbi | 2 +- rbi/lib/hanzoai/models/org_member.rbi | 2 +- .../models/organization_update_member_params.rbi | 3 +-- rbi/lib/hanzoai/models/team/callback_add_params.rbi | 3 +-- rbi/lib/hanzoai/models/team_update_member_params.rbi | 3 +-- rbi/lib/hanzoai/models/user_create_params.rbi | 3 +-- rbi/lib/hanzoai/models/user_create_response.rbi | 3 +-- rbi/lib/hanzoai/models/user_update_params.rbi | 3 +-- .../hanzoai/models/util_transform_request_params.rbi | 3 +-- 21 files changed, 24 insertions(+), 50 deletions(-) diff --git a/rbi/lib/hanzoai/models/customer_create_params.rbi b/rbi/lib/hanzoai/models/customer_create_params.rbi index 01c60189..93c0ae31 100644 --- a/rbi/lib/hanzoai/models/customer_create_params.rbi +++ b/rbi/lib/hanzoai/models/customer_create_params.rbi @@ -120,8 +120,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } EU = T.let(:eu, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol) US = T.let(:us, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/customer_list_response.rbi b/rbi/lib/hanzoai/models/customer_list_response.rbi index d87f9f51..2c4dd937 100644 --- a/rbi/lib/hanzoai/models/customer_list_response.rbi +++ b/rbi/lib/hanzoai/models/customer_list_response.rbi @@ -78,8 +78,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } EU = T.let(:eu, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol) US = T.let(:us, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi b/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi index 9472b368..c65fedc8 100644 --- a/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi +++ b/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi @@ -82,8 +82,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } EU = T.let(:eu, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol) US = T.let(:us, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/customer_update_params.rbi b/rbi/lib/hanzoai/models/customer_update_params.rbi index b65d43af..78a99893 100644 --- a/rbi/lib/hanzoai/models/customer_update_params.rbi +++ b/rbi/lib/hanzoai/models/customer_update_params.rbi @@ -74,8 +74,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } EU = T.let(:eu, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol) US = T.let(:us, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi b/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi index 177c134c..906c6a63 100644 --- a/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi +++ b/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi @@ -91,8 +91,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } OPENAI = T.let(:openai, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol) AZURE = T.let(:azure, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi b/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi index a790f51d..e54004a6 100644 --- a/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi +++ b/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi @@ -45,8 +45,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } OPENAI = T.let(:openai, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol) AZURE = T.let(:azure, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi b/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi index 939b4ff2..757e64f8 100644 --- a/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi +++ b/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi @@ -35,8 +35,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } OPENAI = T.let(:openai, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol) AZURE = T.let(:azure, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi index f0939580..df2dd652 100644 --- a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi +++ b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi @@ -82,8 +82,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } TEAM = T.let(:team, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol) CUSTOMER = T.let(:customer, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/health_check_services_params.rbi b/rbi/lib/hanzoai/models/health_check_services_params.rbi index dc5e9a06..215ea06e 100644 --- a/rbi/lib/hanzoai/models/health_check_services_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_services_params.rbi @@ -34,12 +34,11 @@ module Hanzoai module Service extend Hanzoai::Internal::Type::Union - sig { override.returns([Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String]) } + sig { override.returns([Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol, String]) } def self.variants; end TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::HealthCheckServicesParams::Service) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } SLACK_BUDGET_ALERTS = T.let(:slack_budget_alerts, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/key_check_health_response.rbi b/rbi/lib/hanzoai/models/key_check_health_response.rbi index 7d137be1..92320a49 100644 --- a/rbi/lib/hanzoai/models/key_check_health_response.rbi +++ b/rbi/lib/hanzoai/models/key_check_health_response.rbi @@ -44,8 +44,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::KeyCheckHealthResponse::Key) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } HEALTHY = T.let(:healthy, Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol) UNHEALTHY = T.let(:unhealthy, Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol) @@ -97,8 +96,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } HEALTHY = T.let(:healthy, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/key_list_response.rbi b/rbi/lib/hanzoai/models/key_list_response.rbi index 3adda318..ded894b7 100644 --- a/rbi/lib/hanzoai/models/key_list_response.rbi +++ b/rbi/lib/hanzoai/models/key_list_response.rbi @@ -458,14 +458,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion) } - OrSymbol = - T.type_alias do - T.any( - Symbol, - String, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol - ) - end + OrSymbol = T.type_alias { T.any(Symbol, String) } EU = T.let(:eu, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol) US = T.let(:us, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol) @@ -500,8 +493,7 @@ module Hanzoai TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/member.rbi b/rbi/lib/hanzoai/models/member.rbi index c2fc3a1b..23baac40 100644 --- a/rbi/lib/hanzoai/models/member.rbi +++ b/rbi/lib/hanzoai/models/member.rbi @@ -34,7 +34,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::Member::Role) } - OrSymbol = T.type_alias { T.any(Symbol, String, Hanzoai::Models::Member::Role::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } ADMIN = T.let(:admin, Hanzoai::Models::Member::Role::TaggedSymbol) USER = T.let(:user, Hanzoai::Models::Member::Role::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/model_info.rbi b/rbi/lib/hanzoai/models/model_info.rbi index eed7105c..086b11db 100644 --- a/rbi/lib/hanzoai/models/model_info.rbi +++ b/rbi/lib/hanzoai/models/model_info.rbi @@ -86,7 +86,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::ModelInfo::Tier) } - OrSymbol = T.type_alias { T.any(Symbol, String, Hanzoai::Models::ModelInfo::Tier::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } FREE = T.let(:free, Hanzoai::Models::ModelInfo::Tier::TaggedSymbol) PAID = T.let(:paid, Hanzoai::Models::ModelInfo::Tier::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/org_member.rbi b/rbi/lib/hanzoai/models/org_member.rbi index 221e418f..d404d7ab 100644 --- a/rbi/lib/hanzoai/models/org_member.rbi +++ b/rbi/lib/hanzoai/models/org_member.rbi @@ -34,7 +34,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::OrgMember::Role) } - OrSymbol = T.type_alias { T.any(Symbol, String, Hanzoai::Models::OrgMember::Role::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } ORG_ADMIN = T.let(:org_admin, Hanzoai::Models::OrgMember::Role::TaggedSymbol) INTERNAL_USER = T.let(:internal_user, Hanzoai::Models::OrgMember::Role::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/organization_update_member_params.rbi b/rbi/lib/hanzoai/models/organization_update_member_params.rbi index 39c337af..5bf8ba3b 100644 --- a/rbi/lib/hanzoai/models/organization_update_member_params.rbi +++ b/rbi/lib/hanzoai/models/organization_update_member_params.rbi @@ -81,8 +81,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) PROXY_ADMIN_VIEWER = diff --git a/rbi/lib/hanzoai/models/team/callback_add_params.rbi b/rbi/lib/hanzoai/models/team/callback_add_params.rbi index 8976fa3b..b65f496f 100644 --- a/rbi/lib/hanzoai/models/team/callback_add_params.rbi +++ b/rbi/lib/hanzoai/models/team/callback_add_params.rbi @@ -61,8 +61,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } SUCCESS = T.let(:success, Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol) FAILURE = T.let(:failure, Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/team_update_member_params.rbi b/rbi/lib/hanzoai/models/team_update_member_params.rbi index 6e3be1bd..2a3970c7 100644 --- a/rbi/lib/hanzoai/models/team_update_member_params.rbi +++ b/rbi/lib/hanzoai/models/team_update_member_params.rbi @@ -61,8 +61,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } ADMIN = T.let(:admin, Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol) USER = T.let(:user, Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol) diff --git a/rbi/lib/hanzoai/models/user_create_params.rbi b/rbi/lib/hanzoai/models/user_create_params.rbi index 1315fa29..7a0be922 100644 --- a/rbi/lib/hanzoai/models/user_create_params.rbi +++ b/rbi/lib/hanzoai/models/user_create_params.rbi @@ -194,8 +194,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UserCreateParams::UserRole) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol) PROXY_ADMIN_VIEWER = diff --git a/rbi/lib/hanzoai/models/user_create_response.rbi b/rbi/lib/hanzoai/models/user_create_response.rbi index 3d01bf9d..e773ce19 100644 --- a/rbi/lib/hanzoai/models/user_create_response.rbi +++ b/rbi/lib/hanzoai/models/user_create_response.rbi @@ -242,8 +242,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UserCreateResponse::UserRole) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) PROXY_ADMIN_VIEWER = diff --git a/rbi/lib/hanzoai/models/user_update_params.rbi b/rbi/lib/hanzoai/models/user_update_params.rbi index 9575c477..2fa7130f 100644 --- a/rbi/lib/hanzoai/models/user_update_params.rbi +++ b/rbi/lib/hanzoai/models/user_update_params.rbi @@ -173,8 +173,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UserUpdateParams::UserRole) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol) PROXY_ADMIN_VIEWER = diff --git a/rbi/lib/hanzoai/models/util_transform_request_params.rbi b/rbi/lib/hanzoai/models/util_transform_request_params.rbi index 0c418239..2fb00ca2 100644 --- a/rbi/lib/hanzoai/models/util_transform_request_params.rbi +++ b/rbi/lib/hanzoai/models/util_transform_request_params.rbi @@ -38,8 +38,7 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType) } - OrSymbol = - T.type_alias { T.any(Symbol, String, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) } + OrSymbol = T.type_alias { T.any(Symbol, String) } EMBEDDING = T.let(:embedding, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) AEMBEDDING = T.let(:aembedding, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) From b6c473ade59990aabc591b322b527f2bea1b2623 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 03:27:56 +0000 Subject: [PATCH 037/139] chore: use `@!method` instead of `@!parse` for virtual method type definitions --- .yardopts | 1 + lib/hanzoai/internal/type/base_model.rb | 2 + lib/hanzoai/internal/type/enum.rb | 7 +- .../models/active_list_callbacks_params.rb | 8 +- .../models/add_add_allowed_ip_params.rb | 8 +- lib/hanzoai/models/anthropic_create_params.rb | 8 +- lib/hanzoai/models/anthropic_delete_params.rb | 8 +- lib/hanzoai/models/anthropic_modify_params.rb | 8 +- .../models/anthropic_retrieve_params.rb | 8 +- lib/hanzoai/models/anthropic_update_params.rb | 8 +- .../models/assemblyai_create_params.rb | 8 +- .../models/assemblyai_delete_params.rb | 8 +- lib/hanzoai/models/assemblyai_patch_params.rb | 8 +- .../models/assemblyai_retrieve_params.rb | 8 +- .../models/assemblyai_update_params.rb | 8 +- lib/hanzoai/models/assistant_create_params.rb | 8 +- lib/hanzoai/models/assistant_delete_params.rb | 8 +- lib/hanzoai/models/assistant_list_params.rb | 8 +- .../models/audio/speech_create_params.rb | 8 +- .../audio/transcription_create_params.rb | 10 +- lib/hanzoai/models/azure_call_params.rb | 8 +- lib/hanzoai/models/azure_create_params.rb | 8 +- lib/hanzoai/models/azure_delete_params.rb | 8 +- lib/hanzoai/models/azure_patch_params.rb | 8 +- lib/hanzoai/models/azure_update_params.rb | 8 +- .../batch_cancel_with_provider_params.rb | 10 +- lib/hanzoai/models/batch_create_params.rb | 10 +- .../batch_create_with_provider_params.rb | 8 +- lib/hanzoai/models/batch_list_params.rb | 14 +- .../models/batch_list_with_provider_params.rb | 12 +- lib/hanzoai/models/batch_retrieve_params.rb | 10 +- .../batch_retrieve_with_provider_params.rb | 10 +- .../models/batches/cancel_cancel_params.rb | 10 +- lib/hanzoai/models/bedrock_create_params.rb | 8 +- lib/hanzoai/models/bedrock_delete_params.rb | 8 +- lib/hanzoai/models/bedrock_patch_params.rb | 8 +- lib/hanzoai/models/bedrock_retrieve_params.rb | 8 +- lib/hanzoai/models/bedrock_update_params.rb | 8 +- lib/hanzoai/models/block_key_request.rb | 8 +- lib/hanzoai/models/block_team_request.rb | 8 +- lib/hanzoai/models/block_users.rb | 8 +- lib/hanzoai/models/budget_create_params.rb | 8 +- lib/hanzoai/models/budget_delete_params.rb | 10 +- lib/hanzoai/models/budget_info_params.rb | 10 +- lib/hanzoai/models/budget_list_params.rb | 8 +- lib/hanzoai/models/budget_new.rb | 48 +-- lib/hanzoai/models/budget_settings_params.rb | 10 +- lib/hanzoai/models/budget_update_params.rb | 8 +- .../models/cache/redi_retrieve_info_params.rb | 8 +- lib/hanzoai/models/cache_delete_params.rb | 8 +- lib/hanzoai/models/cache_flush_all_params.rb | 8 +- lib/hanzoai/models/cache_ping_params.rb | 8 +- lib/hanzoai/models/cache_ping_response.rb | 28 +- .../models/chat/completion_create_params.rb | 10 +- lib/hanzoai/models/client_get_home_params.rb | 8 +- lib/hanzoai/models/cohere_create_params.rb | 8 +- lib/hanzoai/models/cohere_delete_params.rb | 8 +- lib/hanzoai/models/cohere_modify_params.rb | 8 +- lib/hanzoai/models/cohere_retrieve_params.rb | 8 +- lib/hanzoai/models/cohere_update_params.rb | 8 +- .../models/completion_create_params.rb | 10 +- .../pass_through_endpoint_create_params.rb | 8 +- .../pass_through_endpoint_delete_params.rb | 10 +- .../pass_through_endpoint_list_params.rb | 10 +- .../config/pass_through_endpoint_response.rb | 8 +- .../pass_through_endpoint_update_params.rb | 8 +- .../config/pass_through_generic_endpoint.rb | 12 +- ...figurable_clientside_params_custom_auth.rb | 8 +- .../models/credential_create_params.rb | 16 +- .../models/credential_delete_params.rb | 8 +- lib/hanzoai/models/credential_item.rb | 12 +- lib/hanzoai/models/credential_list_params.rb | 8 +- lib/hanzoai/models/customer_block_params.rb | 8 +- lib/hanzoai/models/customer_create_params.rb | 73 ++--- lib/hanzoai/models/customer_delete_params.rb | 10 +- lib/hanzoai/models/customer_list_params.rb | 8 +- lib/hanzoai/models/customer_list_response.rb | 73 ++--- .../models/customer_retrieve_info_params.rb | 10 +- .../models/customer_retrieve_info_response.rb | 73 ++--- lib/hanzoai/models/customer_unblock_params.rb | 8 +- lib/hanzoai/models/customer_update_params.rb | 41 +-- .../models/delete_create_allowed_ip_params.rb | 8 +- lib/hanzoai/models/embedding_create_params.rb | 10 +- lib/hanzoai/models/engine_complete_params.rb | 8 +- lib/hanzoai/models/engine_embed_params.rb | 8 +- .../models/engines/chat_complete_params.rb | 8 +- .../models/eu_assemblyai_create_params.rb | 8 +- .../models/eu_assemblyai_delete_params.rb | 8 +- .../models/eu_assemblyai_patch_params.rb | 8 +- .../models/eu_assemblyai_retrieve_params.rb | 8 +- .../models/eu_assemblyai_update_params.rb | 8 +- lib/hanzoai/models/file_create_params.rb | 14 +- lib/hanzoai/models/file_delete_params.rb | 10 +- lib/hanzoai/models/file_list_params.rb | 10 +- lib/hanzoai/models/file_retrieve_params.rb | 10 +- .../models/files/content_retrieve_params.rb | 10 +- .../models/fine_tuning/job_create_params.rb | 71 ++--- .../models/fine_tuning/job_list_params.rb | 21 +- .../models/fine_tuning/job_retrieve_params.rb | 17 +- .../fine_tuning/jobs/cancel_create_params.rb | 8 +- lib/hanzoai/models/gemini_create_params.rb | 8 +- lib/hanzoai/models/gemini_delete_params.rb | 8 +- lib/hanzoai/models/gemini_patch_params.rb | 8 +- lib/hanzoai/models/gemini_retrieve_params.rb | 8 +- lib/hanzoai/models/gemini_update_params.rb | 8 +- lib/hanzoai/models/generate_key_response.rb | 106 +++---- .../models/global/spend_list_tags_params.rb | 14 +- .../models/global/spend_list_tags_response.rb | 87 ++---- .../models/global/spend_reset_params.rb | 8 +- .../global/spend_retrieve_report_params.rb | 41 +-- .../global/spend_retrieve_report_response.rb | 87 ++---- lib/hanzoai/models/guardrail_list_params.rb | 8 +- lib/hanzoai/models/guardrail_list_response.rb | 41 +-- lib/hanzoai/models/health_check_all_params.rb | 10 +- .../models/health_check_liveliness_params.rb | 8 +- .../models/health_check_liveness_params.rb | 8 +- .../models/health_check_readiness_params.rb | 8 +- .../models/health_check_services_params.rb | 15 +- .../models/images/generation_create_params.rb | 8 +- lib/hanzoai/models/ip_address.rb | 8 +- .../models/key/regenerate_key_request.rb | 94 ++---- lib/hanzoai/models/key_block_params.rb | 10 +- lib/hanzoai/models/key_block_response.rb | 102 ++----- lib/hanzoai/models/key_check_health_params.rb | 8 +- .../models/key_check_health_response.rb | 36 +-- lib/hanzoai/models/key_delete_params.rb | 14 +- lib/hanzoai/models/key_generate_params.rb | 97 ++---- lib/hanzoai/models/key_list_params.rb | 37 +-- lib/hanzoai/models/key_list_response.rb | 217 +++++--------- .../models/key_regenerate_by_key_params.rb | 10 +- .../models/key_retrieve_info_params.rb | 10 +- lib/hanzoai/models/key_unblock_params.rb | 10 +- lib/hanzoai/models/key_update_params.rb | 97 ++---- lib/hanzoai/models/langfuse_create_params.rb | 8 +- lib/hanzoai/models/langfuse_delete_params.rb | 8 +- lib/hanzoai/models/langfuse_patch_params.rb | 8 +- .../models/langfuse_retrieve_params.rb | 8 +- lib/hanzoai/models/langfuse_update_params.rb | 8 +- lib/hanzoai/models/member.rb | 19 +- lib/hanzoai/models/model/info_list_params.rb | 10 +- lib/hanzoai/models/model/update_deployment.rb | 135 +++------ .../models/model/update_full_params.rb | 8 +- .../models/model/update_partial_params.rb | 8 +- lib/hanzoai/models/model_create_params.rb | 141 +++------ lib/hanzoai/models/model_delete_params.rb | 10 +- .../model_group_retrieve_info_params.rb | 10 +- lib/hanzoai/models/model_info.rb | 47 +-- lib/hanzoai/models/model_list_params.rb | 12 +- .../models/moderation_create_params.rb | 8 +- .../openai/deployment_complete_params.rb | 8 +- .../models/openai/deployment_embed_params.rb | 8 +- .../deployments/chat_complete_params.rb | 8 +- lib/hanzoai/models/openai_create_params.rb | 8 +- lib/hanzoai/models/openai_delete_params.rb | 8 +- lib/hanzoai/models/openai_patch_params.rb | 8 +- lib/hanzoai/models/openai_retrieve_params.rb | 8 +- lib/hanzoai/models/openai_update_params.rb | 8 +- lib/hanzoai/models/org_member.rb | 19 +- .../organization/info_deprecated_params.rb | 10 +- .../organization/info_retrieve_params.rb | 10 +- .../organization/info_retrieve_response.rb | 250 +++++----------- .../models/organization_add_member_params.rb | 19 +- .../organization_add_member_response.rb | 226 +++++--------- .../models/organization_create_params.rb | 49 +--- .../models/organization_create_response.rb | 40 +-- .../organization_delete_member_params.rb | 14 +- .../models/organization_delete_params.rb | 10 +- .../models/organization_delete_response.rb | 250 +++++----------- .../models/organization_list_params.rb | 8 +- .../models/organization_list_response.rb | 250 +++++----------- .../organization_update_member_params.rb | 35 +-- .../organization_update_member_response.rb | 78 ++--- .../models/organization_update_params.rb | 34 +-- .../models/organization_update_response.rb | 250 +++++----------- .../models/provider_list_budgets_params.rb | 8 +- .../models/provider_list_budgets_response.rb | 32 +- lib/hanzoai/models/rerank_create_params.rb | 8 +- lib/hanzoai/models/rerank_create_v1_params.rb | 8 +- lib/hanzoai/models/rerank_create_v2_params.rb | 8 +- lib/hanzoai/models/response_create_params.rb | 8 +- lib/hanzoai/models/response_delete_params.rb | 8 +- .../models/response_retrieve_params.rb | 8 +- .../responses/input_item_list_params.rb | 8 +- lib/hanzoai/models/route_list_params.rb | 8 +- lib/hanzoai/models/setting_retrieve_params.rb | 8 +- .../models/spend_calculate_spend_params.rb | 14 +- lib/hanzoai/models/spend_list_logs_params.rb | 18 +- .../models/spend_list_logs_response.rb | 87 ++---- lib/hanzoai/models/spend_list_tags_params.rb | 12 +- .../models/spend_list_tags_response.rb | 87 ++---- .../models/team/callback_add_params.rb | 23 +- .../models/team/callback_retrieve_params.rb | 8 +- lib/hanzoai/models/team/model_add_params.rb | 12 +- .../models/team/model_remove_params.rb | 12 +- lib/hanzoai/models/team_add_member_params.rb | 19 +- .../models/team_add_member_response.rb | 275 ++++++------------ lib/hanzoai/models/team_block_params.rb | 8 +- lib/hanzoai/models/team_create_params.rb | 64 ++-- lib/hanzoai/models/team_create_response.rb | 84 ++---- lib/hanzoai/models/team_delete_params.rb | 12 +- .../models/team_disable_logging_params.rb | 8 +- .../models/team_list_available_params.rb | 10 +- lib/hanzoai/models/team_list_params.rb | 12 +- .../models/team_remove_member_params.rb | 14 +- .../models/team_retrieve_info_params.rb | 10 +- lib/hanzoai/models/team_unblock_params.rb | 8 +- .../models/team_update_member_params.rb | 25 +- .../models/team_update_member_response.rb | 14 +- lib/hanzoai/models/team_update_params.rb | 55 +--- lib/hanzoai/models/test_ping_params.rb | 8 +- lib/hanzoai/models/thread_create_params.rb | 8 +- lib/hanzoai/models/thread_retrieve_params.rb | 8 +- .../models/threads/message_create_params.rb | 8 +- .../models/threads/message_list_params.rb | 8 +- .../models/threads/run_create_params.rb | 8 +- lib/hanzoai/models/user_create_params.rb | 101 ++----- lib/hanzoai/models/user_create_response.rb | 125 +++----- lib/hanzoai/models/user_delete_params.rb | 12 +- lib/hanzoai/models/user_list_params.rb | 16 +- .../models/user_retrieve_info_params.rb | 10 +- lib/hanzoai/models/user_update_params.rb | 92 ++---- ...util_get_supported_openai_params_params.rb | 10 +- .../models/util_token_counter_params.rb | 14 +- .../models/util_token_counter_response.rb | 14 +- .../models/util_transform_request_params.rb | 19 +- .../models/util_transform_request_response.rb | 14 +- lib/hanzoai/models/vertex_ai_create_params.rb | 8 +- lib/hanzoai/models/vertex_ai_delete_params.rb | 8 +- lib/hanzoai/models/vertex_ai_patch_params.rb | 8 +- .../models/vertex_ai_retrieve_params.rb | 8 +- lib/hanzoai/models/vertex_ai_update_params.rb | 8 +- lib/hanzoai/request_options.rb | 7 +- rbi/lib/hanzoai/internal/type/base_model.rbi | 1 + rbi/lib/hanzoai/internal/type/enum.rbi | 6 - sig/hanzoai/internal/type/enum.rbs | 2 - test/hanzoai/internal/type/base_model_test.rb | 2 + 236 files changed, 1819 insertions(+), 4251 deletions(-) diff --git a/.yardopts b/.yardopts index 004c697b..5757768a 100644 --- a/.yardopts +++ b/.yardopts @@ -1,3 +1,4 @@ +--type-name-tag generic:Generic --markup markdown --markup-provider redcarpet --exclude /rbi diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 3ccf9be5..6eff89c6 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -346,6 +346,8 @@ def deconstruct_keys(keys) end class << self + # @api private + # # @param model [Hanzoai::Internal::Type::BaseModel] # # @return [Hash{Symbol=>Object}] diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index d665b4ed..412cf315 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -21,12 +21,7 @@ module Enum # All of the valid Symbol values for this enum. # # @return [Array] - def values = (@values ||= constants.map { const_get(_1) }) - - # @api private - # - # Guard against thread safety issues by instantiating `@values`. - private def finalize! = values + def values = constants.map { const_get(_1) } # @param other [Object] # diff --git a/lib/hanzoai/models/active_list_callbacks_params.rb b/lib/hanzoai/models/active_list_callbacks_params.rb index bfe7fcb5..9cfac535 100644 --- a/lib/hanzoai/models/active_list_callbacks_params.rb +++ b/lib/hanzoai/models/active_list_callbacks_params.rb @@ -8,12 +8,8 @@ class ActiveListCallbacksParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/add_add_allowed_ip_params.rb b/lib/hanzoai/models/add_add_allowed_ip_params.rb index 70328061..4c9a5a3b 100644 --- a/lib/hanzoai/models/add_add_allowed_ip_params.rb +++ b/lib/hanzoai/models/add_add_allowed_ip_params.rb @@ -8,12 +8,8 @@ class AddAddAllowedIPParams < Hanzoai::Models::IPAddress # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/anthropic_create_params.rb b/lib/hanzoai/models/anthropic_create_params.rb index 801d1600..fb4087c5 100644 --- a/lib/hanzoai/models/anthropic_create_params.rb +++ b/lib/hanzoai/models/anthropic_create_params.rb @@ -8,12 +8,8 @@ class AnthropicCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/anthropic_delete_params.rb b/lib/hanzoai/models/anthropic_delete_params.rb index 885d0204..7165ce41 100644 --- a/lib/hanzoai/models/anthropic_delete_params.rb +++ b/lib/hanzoai/models/anthropic_delete_params.rb @@ -8,12 +8,8 @@ class AnthropicDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/anthropic_modify_params.rb b/lib/hanzoai/models/anthropic_modify_params.rb index 90a1a050..f6fa9bd4 100644 --- a/lib/hanzoai/models/anthropic_modify_params.rb +++ b/lib/hanzoai/models/anthropic_modify_params.rb @@ -8,12 +8,8 @@ class AnthropicModifyParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/anthropic_retrieve_params.rb b/lib/hanzoai/models/anthropic_retrieve_params.rb index 4455642c..715ba1e8 100644 --- a/lib/hanzoai/models/anthropic_retrieve_params.rb +++ b/lib/hanzoai/models/anthropic_retrieve_params.rb @@ -8,12 +8,8 @@ class AnthropicRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/anthropic_update_params.rb b/lib/hanzoai/models/anthropic_update_params.rb index 45fe748f..2e63cf4a 100644 --- a/lib/hanzoai/models/anthropic_update_params.rb +++ b/lib/hanzoai/models/anthropic_update_params.rb @@ -8,12 +8,8 @@ class AnthropicUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assemblyai_create_params.rb b/lib/hanzoai/models/assemblyai_create_params.rb index 3aa52186..6d3d109e 100644 --- a/lib/hanzoai/models/assemblyai_create_params.rb +++ b/lib/hanzoai/models/assemblyai_create_params.rb @@ -8,12 +8,8 @@ class AssemblyaiCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assemblyai_delete_params.rb b/lib/hanzoai/models/assemblyai_delete_params.rb index 88eafd6a..125b164b 100644 --- a/lib/hanzoai/models/assemblyai_delete_params.rb +++ b/lib/hanzoai/models/assemblyai_delete_params.rb @@ -8,12 +8,8 @@ class AssemblyaiDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assemblyai_patch_params.rb b/lib/hanzoai/models/assemblyai_patch_params.rb index f572f73b..74ea0874 100644 --- a/lib/hanzoai/models/assemblyai_patch_params.rb +++ b/lib/hanzoai/models/assemblyai_patch_params.rb @@ -8,12 +8,8 @@ class AssemblyaiPatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assemblyai_retrieve_params.rb b/lib/hanzoai/models/assemblyai_retrieve_params.rb index 5d91a7bd..97dc1419 100644 --- a/lib/hanzoai/models/assemblyai_retrieve_params.rb +++ b/lib/hanzoai/models/assemblyai_retrieve_params.rb @@ -8,12 +8,8 @@ class AssemblyaiRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assemblyai_update_params.rb b/lib/hanzoai/models/assemblyai_update_params.rb index eba65c15..1c870520 100644 --- a/lib/hanzoai/models/assemblyai_update_params.rb +++ b/lib/hanzoai/models/assemblyai_update_params.rb @@ -8,12 +8,8 @@ class AssemblyaiUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assistant_create_params.rb b/lib/hanzoai/models/assistant_create_params.rb index 32e6ba1d..81d29d8e 100644 --- a/lib/hanzoai/models/assistant_create_params.rb +++ b/lib/hanzoai/models/assistant_create_params.rb @@ -8,12 +8,8 @@ class AssistantCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assistant_delete_params.rb b/lib/hanzoai/models/assistant_delete_params.rb index 48ef1c5d..0d1afe7a 100644 --- a/lib/hanzoai/models/assistant_delete_params.rb +++ b/lib/hanzoai/models/assistant_delete_params.rb @@ -8,12 +8,8 @@ class AssistantDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/assistant_list_params.rb b/lib/hanzoai/models/assistant_list_params.rb index d49d6108..b640e8a5 100644 --- a/lib/hanzoai/models/assistant_list_params.rb +++ b/lib/hanzoai/models/assistant_list_params.rb @@ -8,12 +8,8 @@ class AssistantListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/audio/speech_create_params.rb b/lib/hanzoai/models/audio/speech_create_params.rb index 408755d9..55796097 100644 --- a/lib/hanzoai/models/audio/speech_create_params.rb +++ b/lib/hanzoai/models/audio/speech_create_params.rb @@ -9,12 +9,8 @@ class SpeechCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/audio/transcription_create_params.rb b/lib/hanzoai/models/audio/transcription_create_params.rb index c5b97159..33e1cd55 100644 --- a/lib/hanzoai/models/audio/transcription_create_params.rb +++ b/lib/hanzoai/models/audio/transcription_create_params.rb @@ -14,13 +14,9 @@ class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Pathname, StringIO] required :file, Hanzoai::Internal::Type::IOLike - # @!parse - # # @param file [Pathname, StringIO] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(file:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(file:, request_options: {}) + # @param file [Pathname, StringIO] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/azure_call_params.rb b/lib/hanzoai/models/azure_call_params.rb index 03f5b5a3..c8fde838 100644 --- a/lib/hanzoai/models/azure_call_params.rb +++ b/lib/hanzoai/models/azure_call_params.rb @@ -8,12 +8,8 @@ class AzureCallParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/azure_create_params.rb b/lib/hanzoai/models/azure_create_params.rb index 9c6cea4d..2c593706 100644 --- a/lib/hanzoai/models/azure_create_params.rb +++ b/lib/hanzoai/models/azure_create_params.rb @@ -8,12 +8,8 @@ class AzureCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/azure_delete_params.rb b/lib/hanzoai/models/azure_delete_params.rb index 2501b03b..97f8df14 100644 --- a/lib/hanzoai/models/azure_delete_params.rb +++ b/lib/hanzoai/models/azure_delete_params.rb @@ -8,12 +8,8 @@ class AzureDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/azure_patch_params.rb b/lib/hanzoai/models/azure_patch_params.rb index 67df8566..f32c85ed 100644 --- a/lib/hanzoai/models/azure_patch_params.rb +++ b/lib/hanzoai/models/azure_patch_params.rb @@ -8,12 +8,8 @@ class AzurePatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/azure_update_params.rb b/lib/hanzoai/models/azure_update_params.rb index 2339fc00..b94a04f8 100644 --- a/lib/hanzoai/models/azure_update_params.rb +++ b/lib/hanzoai/models/azure_update_params.rb @@ -8,12 +8,8 @@ class AzureUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batch_cancel_with_provider_params.rb b/lib/hanzoai/models/batch_cancel_with_provider_params.rb index 21bba089..d56d2003 100644 --- a/lib/hanzoai/models/batch_cancel_with_provider_params.rb +++ b/lib/hanzoai/models/batch_cancel_with_provider_params.rb @@ -13,13 +13,9 @@ class BatchCancelWithProviderParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :provider, String - # @!parse - # # @param provider [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider:, request_options: {}) + # @param provider [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batch_create_params.rb b/lib/hanzoai/models/batch_create_params.rb index 8ca61ebd..5788c98e 100644 --- a/lib/hanzoai/models/batch_create_params.rb +++ b/lib/hanzoai/models/batch_create_params.rb @@ -13,13 +13,9 @@ class BatchCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :provider, String, nil?: true - # @!parse - # # @param provider [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider: nil, request_options: {}) + # @param provider [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batch_create_with_provider_params.rb b/lib/hanzoai/models/batch_create_with_provider_params.rb index efaab33e..9b0c5208 100644 --- a/lib/hanzoai/models/batch_create_with_provider_params.rb +++ b/lib/hanzoai/models/batch_create_with_provider_params.rb @@ -8,12 +8,8 @@ class BatchCreateWithProviderParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batch_list_params.rb b/lib/hanzoai/models/batch_list_params.rb index 3d3444df..1a3e5257 100644 --- a/lib/hanzoai/models/batch_list_params.rb +++ b/lib/hanzoai/models/batch_list_params.rb @@ -23,15 +23,11 @@ class BatchListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :provider, String, nil?: true - # @!parse - # # @param after [String, nil] - # # @param limit [Integer, nil] - # # @param provider [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(after: nil, limit: nil, provider: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(after: nil, limit: nil, provider: nil, request_options: {}) + # @param after [String, nil] + # @param limit [Integer, nil] + # @param provider [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batch_list_with_provider_params.rb b/lib/hanzoai/models/batch_list_with_provider_params.rb index 9f709c0f..bc5dcf29 100644 --- a/lib/hanzoai/models/batch_list_with_provider_params.rb +++ b/lib/hanzoai/models/batch_list_with_provider_params.rb @@ -18,14 +18,10 @@ class BatchListWithProviderParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :limit, Integer, nil?: true - # @!parse - # # @param after [String, nil] - # # @param limit [Integer, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(after: nil, limit: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(after: nil, limit: nil, request_options: {}) + # @param after [String, nil] + # @param limit [Integer, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batch_retrieve_params.rb b/lib/hanzoai/models/batch_retrieve_params.rb index 89c9c88b..6b5daab6 100644 --- a/lib/hanzoai/models/batch_retrieve_params.rb +++ b/lib/hanzoai/models/batch_retrieve_params.rb @@ -13,13 +13,9 @@ class BatchRetrieveParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :provider, String, nil?: true - # @!parse - # # @param provider [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider: nil, request_options: {}) + # @param provider [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batch_retrieve_with_provider_params.rb b/lib/hanzoai/models/batch_retrieve_with_provider_params.rb index 3888748e..ce96a423 100644 --- a/lib/hanzoai/models/batch_retrieve_with_provider_params.rb +++ b/lib/hanzoai/models/batch_retrieve_with_provider_params.rb @@ -13,13 +13,9 @@ class BatchRetrieveWithProviderParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :provider, String - # @!parse - # # @param provider [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider:, request_options: {}) + # @param provider [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/batches/cancel_cancel_params.rb b/lib/hanzoai/models/batches/cancel_cancel_params.rb index 73e0c9ce..31406cfa 100644 --- a/lib/hanzoai/models/batches/cancel_cancel_params.rb +++ b/lib/hanzoai/models/batches/cancel_cancel_params.rb @@ -14,13 +14,9 @@ class CancelCancelParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :provider, String, nil?: true - # @!parse - # # @param provider [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider: nil, request_options: {}) + # @param provider [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/bedrock_create_params.rb b/lib/hanzoai/models/bedrock_create_params.rb index 2f975773..b5095ffc 100644 --- a/lib/hanzoai/models/bedrock_create_params.rb +++ b/lib/hanzoai/models/bedrock_create_params.rb @@ -8,12 +8,8 @@ class BedrockCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/bedrock_delete_params.rb b/lib/hanzoai/models/bedrock_delete_params.rb index 560daeb5..29c2860a 100644 --- a/lib/hanzoai/models/bedrock_delete_params.rb +++ b/lib/hanzoai/models/bedrock_delete_params.rb @@ -8,12 +8,8 @@ class BedrockDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/bedrock_patch_params.rb b/lib/hanzoai/models/bedrock_patch_params.rb index 67326104..9743ad43 100644 --- a/lib/hanzoai/models/bedrock_patch_params.rb +++ b/lib/hanzoai/models/bedrock_patch_params.rb @@ -8,12 +8,8 @@ class BedrockPatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/bedrock_retrieve_params.rb b/lib/hanzoai/models/bedrock_retrieve_params.rb index 51562b59..d94504c4 100644 --- a/lib/hanzoai/models/bedrock_retrieve_params.rb +++ b/lib/hanzoai/models/bedrock_retrieve_params.rb @@ -8,12 +8,8 @@ class BedrockRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/bedrock_update_params.rb b/lib/hanzoai/models/bedrock_update_params.rb index d18387a0..c4425691 100644 --- a/lib/hanzoai/models/bedrock_update_params.rb +++ b/lib/hanzoai/models/bedrock_update_params.rb @@ -8,12 +8,8 @@ class BedrockUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/block_key_request.rb b/lib/hanzoai/models/block_key_request.rb index 6693746c..f9bda190 100644 --- a/lib/hanzoai/models/block_key_request.rb +++ b/lib/hanzoai/models/block_key_request.rb @@ -8,12 +8,8 @@ class BlockKeyRequest < Hanzoai::Internal::Type::BaseModel # @return [String] required :key, String - # @!parse - # # @param key [String] - # # - # def initialize(key:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(key:) + # @param key [String] end end end diff --git a/lib/hanzoai/models/block_team_request.rb b/lib/hanzoai/models/block_team_request.rb index b37528e0..f552beab 100644 --- a/lib/hanzoai/models/block_team_request.rb +++ b/lib/hanzoai/models/block_team_request.rb @@ -8,12 +8,8 @@ class BlockTeamRequest < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!parse - # # @param team_id [String] - # # - # def initialize(team_id:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:) + # @param team_id [String] end end end diff --git a/lib/hanzoai/models/block_users.rb b/lib/hanzoai/models/block_users.rb index 1874f3e4..3c95ad9a 100644 --- a/lib/hanzoai/models/block_users.rb +++ b/lib/hanzoai/models/block_users.rb @@ -8,12 +8,8 @@ class BlockUsers < Hanzoai::Internal::Type::BaseModel # @return [Array] required :user_ids, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @param user_ids [Array] - # # - # def initialize(user_ids:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_ids:) + # @param user_ids [Array] end end end diff --git a/lib/hanzoai/models/budget_create_params.rb b/lib/hanzoai/models/budget_create_params.rb index df02a351..b957534c 100644 --- a/lib/hanzoai/models/budget_create_params.rb +++ b/lib/hanzoai/models/budget_create_params.rb @@ -8,12 +8,8 @@ class BudgetCreateParams < Hanzoai::Models::BudgetNew # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/budget_delete_params.rb b/lib/hanzoai/models/budget_delete_params.rb index 395e0d32..2609b48d 100644 --- a/lib/hanzoai/models/budget_delete_params.rb +++ b/lib/hanzoai/models/budget_delete_params.rb @@ -13,13 +13,9 @@ class BudgetDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :id, String - # @!parse - # # @param id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(id:, request_options: {}) + # @param id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/budget_info_params.rb b/lib/hanzoai/models/budget_info_params.rb index 9c18626e..8f0cb7bd 100644 --- a/lib/hanzoai/models/budget_info_params.rb +++ b/lib/hanzoai/models/budget_info_params.rb @@ -13,13 +13,9 @@ class BudgetInfoParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :budgets, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @param budgets [Array] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(budgets:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budgets:, request_options: {}) + # @param budgets [Array] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/budget_list_params.rb b/lib/hanzoai/models/budget_list_params.rb index 4b487e95..3ecbac9c 100644 --- a/lib/hanzoai/models/budget_list_params.rb +++ b/lib/hanzoai/models/budget_list_params.rb @@ -8,12 +8,8 @@ class BudgetListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/budget_new.rb b/lib/hanzoai/models/budget_new.rb index 061d5b31..b4a75904 100644 --- a/lib/hanzoai/models/budget_new.rb +++ b/lib/hanzoai/models/budget_new.rb @@ -54,31 +54,15 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # budget_id: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel # @!attribute budget_duration @@ -101,15 +85,11 @@ class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param rpm_limit [Integer, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil) + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param rpm_limit [Integer, nil] + # @param tpm_limit [Integer, nil] end end end diff --git a/lib/hanzoai/models/budget_settings_params.rb b/lib/hanzoai/models/budget_settings_params.rb index b8ed7056..60aaf65f 100644 --- a/lib/hanzoai/models/budget_settings_params.rb +++ b/lib/hanzoai/models/budget_settings_params.rb @@ -13,13 +13,9 @@ class BudgetSettingsParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :budget_id, String - # @!parse - # # @param budget_id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(budget_id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id:, request_options: {}) + # @param budget_id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/budget_update_params.rb b/lib/hanzoai/models/budget_update_params.rb index 763146e7..70f2679d 100644 --- a/lib/hanzoai/models/budget_update_params.rb +++ b/lib/hanzoai/models/budget_update_params.rb @@ -8,12 +8,8 @@ class BudgetUpdateParams < Hanzoai::Models::BudgetNew # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cache/redi_retrieve_info_params.rb b/lib/hanzoai/models/cache/redi_retrieve_info_params.rb index d4a9c9cc..d21284b4 100644 --- a/lib/hanzoai/models/cache/redi_retrieve_info_params.rb +++ b/lib/hanzoai/models/cache/redi_retrieve_info_params.rb @@ -9,12 +9,8 @@ class RediRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cache_delete_params.rb b/lib/hanzoai/models/cache_delete_params.rb index 3ff73bbf..4b689b87 100644 --- a/lib/hanzoai/models/cache_delete_params.rb +++ b/lib/hanzoai/models/cache_delete_params.rb @@ -8,12 +8,8 @@ class CacheDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cache_flush_all_params.rb b/lib/hanzoai/models/cache_flush_all_params.rb index af6d99e4..d80449b4 100644 --- a/lib/hanzoai/models/cache_flush_all_params.rb +++ b/lib/hanzoai/models/cache_flush_all_params.rb @@ -8,12 +8,8 @@ class CacheFlushAllParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cache_ping_params.rb b/lib/hanzoai/models/cache_ping_params.rb index 731b2141..b9bba58e 100644 --- a/lib/hanzoai/models/cache_ping_params.rb +++ b/lib/hanzoai/models/cache_ping_params.rb @@ -8,12 +8,8 @@ class CachePingParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cache_ping_response.rb b/lib/hanzoai/models/cache_ping_response.rb index 59bbc6c1..28c73f8c 100644 --- a/lib/hanzoai/models/cache_ping_response.rb +++ b/lib/hanzoai/models/cache_ping_response.rb @@ -34,27 +34,13 @@ class CachePingResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :set_cache_response, String, nil?: true - # @!parse - # # @param cache_type [String] - # # @param status [String] - # # @param health_check_cache_params [Object, nil] - # # @param llm_cache_params [String, nil] - # # @param ping_response [Boolean, nil] - # # @param set_cache_response [String, nil] - # # - # def initialize( - # cache_type:, - # status:, - # health_check_cache_params: nil, - # llm_cache_params: nil, - # ping_response: nil, - # set_cache_response: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(cache_type:, status:, health_check_cache_params: nil, llm_cache_params: nil, ping_response: nil, set_cache_response: nil) + # @param cache_type [String] + # @param status [String] + # @param health_check_cache_params [Object, nil] + # @param llm_cache_params [String, nil] + # @param ping_response [Boolean, nil] + # @param set_cache_response [String, nil] end end end diff --git a/lib/hanzoai/models/chat/completion_create_params.rb b/lib/hanzoai/models/chat/completion_create_params.rb index 5c1104c0..2678cf8d 100644 --- a/lib/hanzoai/models/chat/completion_create_params.rb +++ b/lib/hanzoai/models/chat/completion_create_params.rb @@ -14,13 +14,9 @@ class CompletionCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model, String, nil?: true - # @!parse - # # @param model [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(model: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model: nil, request_options: {}) + # @param model [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/client_get_home_params.rb b/lib/hanzoai/models/client_get_home_params.rb index d2e2775f..c0ee2bb6 100644 --- a/lib/hanzoai/models/client_get_home_params.rb +++ b/lib/hanzoai/models/client_get_home_params.rb @@ -8,12 +8,8 @@ class ClientGetHomeParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cohere_create_params.rb b/lib/hanzoai/models/cohere_create_params.rb index 937761e0..5fc33fd3 100644 --- a/lib/hanzoai/models/cohere_create_params.rb +++ b/lib/hanzoai/models/cohere_create_params.rb @@ -8,12 +8,8 @@ class CohereCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cohere_delete_params.rb b/lib/hanzoai/models/cohere_delete_params.rb index d82d7ce5..179aa6c2 100644 --- a/lib/hanzoai/models/cohere_delete_params.rb +++ b/lib/hanzoai/models/cohere_delete_params.rb @@ -8,12 +8,8 @@ class CohereDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cohere_modify_params.rb b/lib/hanzoai/models/cohere_modify_params.rb index 34264d15..46681ab2 100644 --- a/lib/hanzoai/models/cohere_modify_params.rb +++ b/lib/hanzoai/models/cohere_modify_params.rb @@ -8,12 +8,8 @@ class CohereModifyParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cohere_retrieve_params.rb b/lib/hanzoai/models/cohere_retrieve_params.rb index dbe71192..2a29c352 100644 --- a/lib/hanzoai/models/cohere_retrieve_params.rb +++ b/lib/hanzoai/models/cohere_retrieve_params.rb @@ -8,12 +8,8 @@ class CohereRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/cohere_update_params.rb b/lib/hanzoai/models/cohere_update_params.rb index f7c5b263..24b8f7f1 100644 --- a/lib/hanzoai/models/cohere_update_params.rb +++ b/lib/hanzoai/models/cohere_update_params.rb @@ -8,12 +8,8 @@ class CohereUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/completion_create_params.rb b/lib/hanzoai/models/completion_create_params.rb index a9db1668..31eb42ff 100644 --- a/lib/hanzoai/models/completion_create_params.rb +++ b/lib/hanzoai/models/completion_create_params.rb @@ -13,13 +13,9 @@ class CompletionCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model, String, nil?: true - # @!parse - # # @param model [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(model: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model: nil, request_options: {}) + # @param model [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb index 39ce15dd..e4912273 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb @@ -9,12 +9,8 @@ class PassThroughEndpointCreateParams < Hanzoai::Models::Config::PassThroughGene # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb index 5a206e85..a85b62a5 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb @@ -14,13 +14,9 @@ class PassThroughEndpointDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :endpoint_id, String - # @!parse - # # @param endpoint_id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(endpoint_id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(endpoint_id:, request_options: {}) + # @param endpoint_id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb index 9e79db3e..dccd3449 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb @@ -14,13 +14,9 @@ class PassThroughEndpointListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :endpoint_id, String, nil?: true - # @!parse - # # @param endpoint_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(endpoint_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(endpoint_id: nil, request_options: {}) + # @param endpoint_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_response.rb b/lib/hanzoai/models/config/pass_through_endpoint_response.rb index 3221a268..62dcf0eb 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_response.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_response.rb @@ -11,12 +11,8 @@ class PassThroughEndpointResponse < Hanzoai::Internal::Type::BaseModel required :endpoints, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Config::PassThroughGenericEndpoint] } - # @!parse - # # @param endpoints [Array] - # # - # def initialize(endpoints:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(endpoints:) + # @param endpoints [Array] end end end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb index a4e044c6..14435977 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb @@ -9,12 +9,8 @@ class PassThroughEndpointUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb index eac0c410..0ad00ba3 100644 --- a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb +++ b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb @@ -23,14 +23,10 @@ class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel # @return [String] required :target, String - # @!parse - # # @param headers [Object] - # # @param path [String] - # # @param target [String] - # # - # def initialize(headers:, path:, target:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(headers:, path:, target:) + # @param headers [Object] + # @param path [String] + # @param target [String] end end end diff --git a/lib/hanzoai/models/configurable_clientside_params_custom_auth.rb b/lib/hanzoai/models/configurable_clientside_params_custom_auth.rb index 68f0d0fe..f7a671ca 100644 --- a/lib/hanzoai/models/configurable_clientside_params_custom_auth.rb +++ b/lib/hanzoai/models/configurable_clientside_params_custom_auth.rb @@ -8,12 +8,8 @@ class ConfigurableClientsideParamsCustomAuth < Hanzoai::Internal::Type::BaseMode # @return [String] required :api_base, String - # @!parse - # # @param api_base [String] - # # - # def initialize(api_base:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_base:) + # @param api_base [String] end end end diff --git a/lib/hanzoai/models/credential_create_params.rb b/lib/hanzoai/models/credential_create_params.rb index c6a56762..910044d1 100644 --- a/lib/hanzoai/models/credential_create_params.rb +++ b/lib/hanzoai/models/credential_create_params.rb @@ -28,16 +28,12 @@ class CredentialCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model_id, String, nil?: true - # @!parse - # # @param credential_info [Object] - # # @param credential_name [String] - # # @param credential_values [Object, nil] - # # @param model_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(credential_info:, credential_name:, credential_values: nil, model_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(credential_info:, credential_name:, credential_values: nil, model_id: nil, request_options: {}) + # @param credential_info [Object] + # @param credential_name [String] + # @param credential_values [Object, nil] + # @param model_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/credential_delete_params.rb b/lib/hanzoai/models/credential_delete_params.rb index 6a681f37..4abef2fa 100644 --- a/lib/hanzoai/models/credential_delete_params.rb +++ b/lib/hanzoai/models/credential_delete_params.rb @@ -8,12 +8,8 @@ class CredentialDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/credential_item.rb b/lib/hanzoai/models/credential_item.rb index d90fbdb6..435fa194 100644 --- a/lib/hanzoai/models/credential_item.rb +++ b/lib/hanzoai/models/credential_item.rb @@ -18,14 +18,10 @@ class CredentialItem < Hanzoai::Internal::Type::BaseModel # @return [Object] required :credential_values, Hanzoai::Internal::Type::Unknown - # @!parse - # # @param credential_info [Object] - # # @param credential_name [String] - # # @param credential_values [Object] - # # - # def initialize(credential_info:, credential_name:, credential_values:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(credential_info:, credential_name:, credential_values:) + # @param credential_info [Object] + # @param credential_name [String] + # @param credential_values [Object] end end end diff --git a/lib/hanzoai/models/credential_list_params.rb b/lib/hanzoai/models/credential_list_params.rb index 500586c5..31983d72 100644 --- a/lib/hanzoai/models/credential_list_params.rb +++ b/lib/hanzoai/models/credential_list_params.rb @@ -8,12 +8,8 @@ class CredentialListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/customer_block_params.rb b/lib/hanzoai/models/customer_block_params.rb index d72d8e50..b471d943 100644 --- a/lib/hanzoai/models/customer_block_params.rb +++ b/lib/hanzoai/models/customer_block_params.rb @@ -8,12 +8,8 @@ class CustomerBlockParams < Hanzoai::Models::BlockUsers # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index 75072586..f7d14f04 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -89,43 +89,21 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param user_id [String] - # # @param alias_ [String, nil] - # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param default_model [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # user_id:, - # alias_: nil, - # allowed_model_region: nil, - # blocked: nil, - # budget_duration: nil, - # budget_id: nil, - # default_model: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @param user_id [String] + # @param alias_ [String, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param default_model [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module AllowedModelRegion extend Hanzoai::Internal::Type::Enum @@ -133,11 +111,8 @@ module AllowedModelRegion EU = :eu US = :us - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel @@ -161,15 +136,11 @@ class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param rpm_limit [Integer, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil) + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param rpm_limit [Integer, nil] + # @param tpm_limit [Integer, nil] end end end diff --git a/lib/hanzoai/models/customer_delete_params.rb b/lib/hanzoai/models/customer_delete_params.rb index e3edb745..fc21e876 100644 --- a/lib/hanzoai/models/customer_delete_params.rb +++ b/lib/hanzoai/models/customer_delete_params.rb @@ -13,13 +13,9 @@ class CustomerDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :user_ids, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @param user_ids [Array] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(user_ids:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_ids:, request_options: {}) + # @param user_ids [Array] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/customer_list_params.rb b/lib/hanzoai/models/customer_list_params.rb index 48ee804c..3a9831c5 100644 --- a/lib/hanzoai/models/customer_list_params.rb +++ b/lib/hanzoai/models/customer_list_params.rb @@ -8,12 +8,8 @@ class CustomerListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/customer_list_response.rb b/lib/hanzoai/models/customer_list_response.rb index 748e591c..8affe69e 100644 --- a/lib/hanzoai/models/customer_list_response.rb +++ b/lib/hanzoai/models/customer_list_response.rb @@ -45,29 +45,14 @@ class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel # # @return [Float] # attr_writer :spend - # @!parse - # # @param blocked [Boolean] - # # @param user_id [String] - # # @param alias_ [String, nil] - # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion, nil] - # # @param default_model [String, nil] - # # @param llm_budget_table [Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, nil] - # # @param spend [Float] - # # - # def initialize( - # blocked:, - # user_id:, - # alias_: nil, - # allowed_model_region: nil, - # default_model: nil, - # llm_budget_table: nil, - # spend: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) + # @param blocked [Boolean] + # @param user_id [String] + # @param alias_ [String, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion, nil] + # @param default_model [String, nil] + # @param llm_budget_table [Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, nil] + # @param spend [Float] # @see Hanzoai::Models::CustomerListResponseItem#allowed_model_region module AllowedModelRegion @@ -76,11 +61,8 @@ module AllowedModelRegion EU = :eu US = :us - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end # @see Hanzoai::Models::CustomerListResponseItem#llm_budget_table @@ -120,31 +102,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end diff --git a/lib/hanzoai/models/customer_retrieve_info_params.rb b/lib/hanzoai/models/customer_retrieve_info_params.rb index 521227c6..5d4ff78c 100644 --- a/lib/hanzoai/models/customer_retrieve_info_params.rb +++ b/lib/hanzoai/models/customer_retrieve_info_params.rb @@ -14,13 +14,9 @@ class CustomerRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :end_user_id, String - # @!parse - # # @param end_user_id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(end_user_id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(end_user_id:, request_options: {}) + # @param end_user_id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/customer_retrieve_info_response.rb b/lib/hanzoai/models/customer_retrieve_info_response.rb index 1c496707..88ebdd5b 100644 --- a/lib/hanzoai/models/customer_retrieve_info_response.rb +++ b/lib/hanzoai/models/customer_retrieve_info_response.rb @@ -48,29 +48,14 @@ class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel # # @return [Float] # attr_writer :spend - # @!parse - # # @param blocked [Boolean] - # # @param user_id [String] - # # @param alias_ [String, nil] - # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion, nil] - # # @param default_model [String, nil] - # # @param llm_budget_table [Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, nil] - # # @param spend [Float] - # # - # def initialize( - # blocked:, - # user_id:, - # alias_: nil, - # allowed_model_region: nil, - # default_model: nil, - # llm_budget_table: nil, - # spend: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) + # @param blocked [Boolean] + # @param user_id [String] + # @param alias_ [String, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion, nil] + # @param default_model [String, nil] + # @param llm_budget_table [Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, nil] + # @param spend [Float] # @see Hanzoai::Models::CustomerRetrieveInfoResponse#allowed_model_region module AllowedModelRegion @@ -79,11 +64,8 @@ module AllowedModelRegion EU = :eu US = :us - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end # @see Hanzoai::Models::CustomerRetrieveInfoResponse#llm_budget_table @@ -123,31 +105,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end end diff --git a/lib/hanzoai/models/customer_unblock_params.rb b/lib/hanzoai/models/customer_unblock_params.rb index 440af089..ae98c9fe 100644 --- a/lib/hanzoai/models/customer_unblock_params.rb +++ b/lib/hanzoai/models/customer_unblock_params.rb @@ -8,12 +8,8 @@ class CustomerUnblockParams < Hanzoai::Models::BlockUsers # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/customer_update_params.rb b/lib/hanzoai/models/customer_update_params.rb index 97ba6954..e86d8195 100644 --- a/lib/hanzoai/models/customer_update_params.rb +++ b/lib/hanzoai/models/customer_update_params.rb @@ -49,31 +49,15 @@ class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :max_budget, Float, nil?: true - # @!parse - # # @param user_id [String] - # # @param alias_ [String, nil] - # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] - # # @param blocked [Boolean] - # # @param budget_id [String, nil] - # # @param default_model [String, nil] - # # @param max_budget [Float, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # user_id:, - # alias_: nil, - # allowed_model_region: nil, - # blocked: nil, - # budget_id: nil, - # default_model: nil, - # max_budget: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_id: nil, default_model: nil, max_budget: nil, request_options: {}) + # @param user_id [String] + # @param alias_ [String, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] + # @param blocked [Boolean] + # @param budget_id [String, nil] + # @param default_model [String, nil] + # @param max_budget [Float, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module AllowedModelRegion extend Hanzoai::Internal::Type::Enum @@ -81,11 +65,8 @@ module AllowedModelRegion EU = :eu US = :us - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/delete_create_allowed_ip_params.rb b/lib/hanzoai/models/delete_create_allowed_ip_params.rb index 0a2ce48a..8762dbe2 100644 --- a/lib/hanzoai/models/delete_create_allowed_ip_params.rb +++ b/lib/hanzoai/models/delete_create_allowed_ip_params.rb @@ -8,12 +8,8 @@ class DeleteCreateAllowedIPParams < Hanzoai::Models::IPAddress # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/embedding_create_params.rb b/lib/hanzoai/models/embedding_create_params.rb index 1b1eb872..33281733 100644 --- a/lib/hanzoai/models/embedding_create_params.rb +++ b/lib/hanzoai/models/embedding_create_params.rb @@ -13,13 +13,9 @@ class EmbeddingCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model, String, nil?: true - # @!parse - # # @param model [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(model: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model: nil, request_options: {}) + # @param model [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/engine_complete_params.rb b/lib/hanzoai/models/engine_complete_params.rb index 127b62b4..f05597c6 100644 --- a/lib/hanzoai/models/engine_complete_params.rb +++ b/lib/hanzoai/models/engine_complete_params.rb @@ -8,12 +8,8 @@ class EngineCompleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/engine_embed_params.rb b/lib/hanzoai/models/engine_embed_params.rb index 367a3f4c..1c9dfc9a 100644 --- a/lib/hanzoai/models/engine_embed_params.rb +++ b/lib/hanzoai/models/engine_embed_params.rb @@ -8,12 +8,8 @@ class EngineEmbedParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/engines/chat_complete_params.rb b/lib/hanzoai/models/engines/chat_complete_params.rb index 61130d27..ef5437b1 100644 --- a/lib/hanzoai/models/engines/chat_complete_params.rb +++ b/lib/hanzoai/models/engines/chat_complete_params.rb @@ -9,12 +9,8 @@ class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/eu_assemblyai_create_params.rb b/lib/hanzoai/models/eu_assemblyai_create_params.rb index 37a5fa2e..d150246d 100644 --- a/lib/hanzoai/models/eu_assemblyai_create_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_create_params.rb @@ -8,12 +8,8 @@ class EuAssemblyaiCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/eu_assemblyai_delete_params.rb b/lib/hanzoai/models/eu_assemblyai_delete_params.rb index ee8610be..b0334179 100644 --- a/lib/hanzoai/models/eu_assemblyai_delete_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_delete_params.rb @@ -8,12 +8,8 @@ class EuAssemblyaiDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/eu_assemblyai_patch_params.rb b/lib/hanzoai/models/eu_assemblyai_patch_params.rb index 8fdf7bf7..f3aad6df 100644 --- a/lib/hanzoai/models/eu_assemblyai_patch_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_patch_params.rb @@ -8,12 +8,8 @@ class EuAssemblyaiPatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb b/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb index 2b3bcab2..bc2998f4 100644 --- a/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb @@ -8,12 +8,8 @@ class EuAssemblyaiRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/eu_assemblyai_update_params.rb b/lib/hanzoai/models/eu_assemblyai_update_params.rb index ae34f098..45269487 100644 --- a/lib/hanzoai/models/eu_assemblyai_update_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_update_params.rb @@ -8,12 +8,8 @@ class EuAssemblyaiUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/file_create_params.rb b/lib/hanzoai/models/file_create_params.rb index 1c4cf8e2..5d5bd55a 100644 --- a/lib/hanzoai/models/file_create_params.rb +++ b/lib/hanzoai/models/file_create_params.rb @@ -27,15 +27,11 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :custom_llm_provider - # @!parse - # # @param file [Pathname, StringIO] - # # @param purpose [String] - # # @param custom_llm_provider [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(file:, purpose:, custom_llm_provider: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(file:, purpose:, custom_llm_provider: nil, request_options: {}) + # @param file [Pathname, StringIO] + # @param purpose [String] + # @param custom_llm_provider [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/file_delete_params.rb b/lib/hanzoai/models/file_delete_params.rb index 7ba082b7..0f0195d4 100644 --- a/lib/hanzoai/models/file_delete_params.rb +++ b/lib/hanzoai/models/file_delete_params.rb @@ -13,13 +13,9 @@ class FileDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :provider, String - # @!parse - # # @param provider [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider:, request_options: {}) + # @param provider [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/file_list_params.rb b/lib/hanzoai/models/file_list_params.rb index b142753e..a76d69ba 100644 --- a/lib/hanzoai/models/file_list_params.rb +++ b/lib/hanzoai/models/file_list_params.rb @@ -13,13 +13,9 @@ class FileListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :purpose, String, nil?: true - # @!parse - # # @param purpose [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(purpose: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(purpose: nil, request_options: {}) + # @param purpose [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/file_retrieve_params.rb b/lib/hanzoai/models/file_retrieve_params.rb index de981979..b79df78e 100644 --- a/lib/hanzoai/models/file_retrieve_params.rb +++ b/lib/hanzoai/models/file_retrieve_params.rb @@ -13,13 +13,9 @@ class FileRetrieveParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :provider, String - # @!parse - # # @param provider [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider:, request_options: {}) + # @param provider [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/files/content_retrieve_params.rb b/lib/hanzoai/models/files/content_retrieve_params.rb index 7fa48fee..385eab1d 100644 --- a/lib/hanzoai/models/files/content_retrieve_params.rb +++ b/lib/hanzoai/models/files/content_retrieve_params.rb @@ -14,13 +14,9 @@ class ContentRetrieveParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :provider, String - # @!parse - # # @param provider [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(provider:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(provider:, request_options: {}) + # @param provider [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/fine_tuning/job_create_params.rb b/lib/hanzoai/models/fine_tuning/job_create_params.rb index 97128782..e9fa564b 100644 --- a/lib/hanzoai/models/fine_tuning/job_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_create_params.rb @@ -52,33 +52,16 @@ class JobCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :validation_file, String, nil?: true - # @!parse - # # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] - # # @param model [String] - # # @param training_file [String] - # # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] - # # @param integrations [Array, nil] - # # @param seed [Integer, nil] - # # @param suffix [String, nil] - # # @param validation_file [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # custom_llm_provider:, - # model:, - # training_file:, - # hyperparameters: nil, - # integrations: nil, - # seed: nil, - # suffix: nil, - # validation_file: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] + # @param model [String] + # @param training_file [String] + # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] + # @param integrations [Array, nil] + # @param seed [Integer, nil] + # @param suffix [String, nil] + # @param validation_file [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CustomLlmProvider extend Hanzoai::Internal::Type::Enum @@ -87,11 +70,8 @@ module CustomLlmProvider AZURE = :azure VERTEX_AI = :vertex_ai - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end class Hyperparameters < Hanzoai::Internal::Type::BaseModel @@ -116,14 +96,10 @@ class Hyperparameters < Hanzoai::Internal::Type::BaseModel union: -> { Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::NEpochs }, nil?: true - # @!parse - # # @param batch_size [String, Integer, nil] - # # @param learning_rate_multiplier [String, Float, nil] - # # @param n_epochs [String, Integer, nil] - # # - # def initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) + # @param batch_size [String, Integer, nil] + # @param learning_rate_multiplier [String, Float, nil] + # @param n_epochs [String, Integer, nil] # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#batch_size module BatchSize @@ -133,9 +109,8 @@ module BatchSize variant Integer - # @!parse - # # @return [Array(String, Integer)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Integer)] end # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier @@ -146,9 +121,8 @@ module LearningRateMultiplier variant Float - # @!parse - # # @return [Array(String, Float)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Float)] end # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#n_epochs @@ -159,9 +133,8 @@ module NEpochs variant Integer - # @!parse - # # @return [Array(String, Integer)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Integer)] end end end diff --git a/lib/hanzoai/models/fine_tuning/job_list_params.rb b/lib/hanzoai/models/fine_tuning/job_list_params.rb index d0899fce..8070b614 100644 --- a/lib/hanzoai/models/fine_tuning/job_list_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_list_params.rb @@ -24,15 +24,11 @@ class JobListParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :limit, Integer, nil?: true - # @!parse - # # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] - # # @param after [String, nil] - # # @param limit [Integer, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(custom_llm_provider:, after: nil, limit: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(custom_llm_provider:, after: nil, limit: nil, request_options: {}) + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] + # @param after [String, nil] + # @param limit [Integer, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CustomLlmProvider extend Hanzoai::Internal::Type::Enum @@ -40,11 +36,8 @@ module CustomLlmProvider OPENAI = :openai AZURE = :azure - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb index 6b86d6ef..c1778e22 100644 --- a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb @@ -15,13 +15,9 @@ class JobRetrieveParams < Hanzoai::Internal::Type::BaseModel required :custom_llm_provider, enum: -> { Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider } - # @!parse - # # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(custom_llm_provider:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(custom_llm_provider:, request_options: {}) + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CustomLlmProvider extend Hanzoai::Internal::Type::Enum @@ -29,11 +25,8 @@ module CustomLlmProvider OPENAI = :openai AZURE = :azure - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb b/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb index ea9cd503..6c94f483 100644 --- a/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb @@ -10,12 +10,8 @@ class CancelCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/gemini_create_params.rb b/lib/hanzoai/models/gemini_create_params.rb index 2abeb714..f6a10297 100644 --- a/lib/hanzoai/models/gemini_create_params.rb +++ b/lib/hanzoai/models/gemini_create_params.rb @@ -8,12 +8,8 @@ class GeminiCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/gemini_delete_params.rb b/lib/hanzoai/models/gemini_delete_params.rb index 245c8de2..1f96f953 100644 --- a/lib/hanzoai/models/gemini_delete_params.rb +++ b/lib/hanzoai/models/gemini_delete_params.rb @@ -8,12 +8,8 @@ class GeminiDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/gemini_patch_params.rb b/lib/hanzoai/models/gemini_patch_params.rb index 221c05a2..ec9f3da1 100644 --- a/lib/hanzoai/models/gemini_patch_params.rb +++ b/lib/hanzoai/models/gemini_patch_params.rb @@ -8,12 +8,8 @@ class GeminiPatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/gemini_retrieve_params.rb b/lib/hanzoai/models/gemini_retrieve_params.rb index 7cf48d91..3502d318 100644 --- a/lib/hanzoai/models/gemini_retrieve_params.rb +++ b/lib/hanzoai/models/gemini_retrieve_params.rb @@ -8,12 +8,8 @@ class GeminiRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/gemini_update_params.rb b/lib/hanzoai/models/gemini_update_params.rb index 84f148be..b413c226 100644 --- a/lib/hanzoai/models/gemini_update_params.rb +++ b/lib/hanzoai/models/gemini_update_params.rb @@ -8,12 +8,8 @@ class GeminiUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/generate_key_response.rb b/lib/hanzoai/models/generate_key_response.rb index 3ae338df..e4981799 100644 --- a/lib/hanzoai/models/generate_key_response.rb +++ b/lib/hanzoai/models/generate_key_response.rb @@ -170,79 +170,39 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param expires [Time, nil] - # # @param key [String] - # # @param token [String, nil] - # # @param aliases [Object, nil] - # # @param allowed_cache_controls [Array, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param config [Object, nil] - # # @param created_by [String, nil] - # # @param duration [String, nil] - # # @param enforced_params [Array, nil] - # # @param guardrails [Array, nil] - # # @param key_alias [String, nil] - # # @param key_name [String, nil] - # # @param llm_budget_table [Object] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_rpm_limit [Object, nil] - # # @param model_tpm_limit [Object, nil] - # # @param models [Array, nil] - # # @param permissions [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param tags [Array, nil] - # # @param team_id [String, nil] - # # @param token_id [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param updated_by [String, nil] - # # @param user_id [String, nil] - # # - # def initialize( - # expires:, - # key:, - # token: nil, - # aliases: nil, - # allowed_cache_controls: nil, - # blocked: nil, - # budget_duration: nil, - # budget_id: nil, - # config: nil, - # created_by: nil, - # duration: nil, - # enforced_params: nil, - # guardrails: nil, - # key_alias: nil, - # key_name: nil, - # llm_budget_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_rpm_limit: nil, - # model_tpm_limit: nil, - # models: nil, - # permissions: nil, - # rpm_limit: nil, - # spend: nil, - # tags: nil, - # team_id: nil, - # token_id: nil, - # tpm_limit: nil, - # updated_by: nil, - # user_id: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(expires:, key:, token: nil, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, created_by: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, key_name: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, token_id: nil, tpm_limit: nil, updated_by: nil, user_id: nil) + # @param expires [Time, nil] + # @param key [String] + # @param token [String, nil] + # @param aliases [Object, nil] + # @param allowed_cache_controls [Array, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param config [Object, nil] + # @param created_by [String, nil] + # @param duration [String, nil] + # @param enforced_params [Array, nil] + # @param guardrails [Array, nil] + # @param key_alias [String, nil] + # @param key_name [String, nil] + # @param llm_budget_table [Object] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_rpm_limit [Object, nil] + # @param model_tpm_limit [Object, nil] + # @param models [Array, nil] + # @param permissions [Object, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param tags [Array, nil] + # @param team_id [String, nil] + # @param token_id [String, nil] + # @param tpm_limit [Integer, nil] + # @param updated_by [String, nil] + # @param user_id [String, nil] end end end diff --git a/lib/hanzoai/models/global/spend_list_tags_params.rb b/lib/hanzoai/models/global/spend_list_tags_params.rb index 4aa1ab89..b63d6b3f 100644 --- a/lib/hanzoai/models/global/spend_list_tags_params.rb +++ b/lib/hanzoai/models/global/spend_list_tags_params.rb @@ -27,15 +27,11 @@ class SpendListTagsParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :tags, String, nil?: true - # @!parse - # # @param end_date [String, nil] - # # @param start_date [String, nil] - # # @param tags [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(end_date: nil, start_date: nil, tags: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(end_date: nil, start_date: nil, tags: nil, request_options: {}) + # @param end_date [String, nil] + # @param start_date [String, nil] + # @param tags [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/global/spend_list_tags_response.rb b/lib/hanzoai/models/global/spend_list_tags_response.rb index f4217814..8e930cb4 100644 --- a/lib/hanzoai/models/global/spend_list_tags_response.rb +++ b/lib/hanzoai/models/global/spend_list_tags_response.rb @@ -113,53 +113,26 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user, String, nil?: true - # @!parse - # # @param api_key [String] - # # @param call_type [String] - # # @param end_time [String, Time, nil] - # # @param messages [String, Array, Object, nil] - # # @param request_id [String] - # # @param response [String, Array, Object, nil] - # # @param start_time [String, Time, nil] - # # @param api_base [String, nil] - # # @param cache_hit [String, nil] - # # @param cache_key [String, nil] - # # @param completion_tokens [Integer, nil] - # # @param metadata [Object] - # # @param model [String, nil] - # # @param prompt_tokens [Integer, nil] - # # @param request_tags [Object] - # # @param requester_ip_address [String, nil] - # # @param spend [Float, nil] - # # @param total_tokens [Integer, nil] - # # @param user [String, nil] - # # - # def initialize( - # api_key:, - # call_type:, - # end_time:, - # messages:, - # request_id:, - # response:, - # start_time:, - # api_base: nil, - # cache_hit: nil, - # cache_key: nil, - # completion_tokens: nil, - # metadata: nil, - # model: nil, - # prompt_tokens: nil, - # request_tags: nil, - # requester_ip_address: nil, - # spend: nil, - # total_tokens: nil, - # user: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_key:, call_type:, end_time:, messages:, request_id:, response:, start_time:, api_base: nil, cache_hit: nil, cache_key: nil, completion_tokens: nil, metadata: nil, model: nil, prompt_tokens: nil, request_tags: nil, requester_ip_address: nil, spend: nil, total_tokens: nil, user: nil) + # @param api_key [String] + # @param call_type [String] + # @param end_time [String, Time, nil] + # @param messages [String, Array, Object, nil] + # @param request_id [String] + # @param response [String, Array, Object, nil] + # @param start_time [String, Time, nil] + # @param api_base [String, nil] + # @param cache_hit [String, nil] + # @param cache_key [String, nil] + # @param completion_tokens [Integer, nil] + # @param metadata [Object] + # @param model [String, nil] + # @param prompt_tokens [Integer, nil] + # @param request_tags [Object] + # @param requester_ip_address [String, nil] + # @param spend [Float, nil] + # @param total_tokens [Integer, nil] + # @param user [String, nil] # @see Hanzoai::Models::Global::SpendListTagsResponseItem#end_time module EndTime @@ -169,9 +142,8 @@ module EndTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end # @see Hanzoai::Models::Global::SpendListTagsResponseItem#messages @@ -184,9 +156,8 @@ module Messages variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -201,9 +172,8 @@ module Response variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -216,9 +186,8 @@ module StartTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end end diff --git a/lib/hanzoai/models/global/spend_reset_params.rb b/lib/hanzoai/models/global/spend_reset_params.rb index 56ef0ebf..fb5b5d2e 100644 --- a/lib/hanzoai/models/global/spend_reset_params.rb +++ b/lib/hanzoai/models/global/spend_reset_params.rb @@ -9,12 +9,8 @@ class SpendResetParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/global/spend_retrieve_report_params.rb b/lib/hanzoai/models/global/spend_retrieve_report_params.rb index 9d00e755..c343bcb3 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_params.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_params.rb @@ -52,31 +52,15 @@ class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :team_id, String, nil?: true - # @!parse - # # @param api_key [String, nil] - # # @param customer_id [String, nil] - # # @param end_date [String, nil] - # # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] - # # @param internal_user_id [String, nil] - # # @param start_date [String, nil] - # # @param team_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # api_key: nil, - # customer_id: nil, - # end_date: nil, - # group_by: nil, - # internal_user_id: nil, - # start_date: nil, - # team_id: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_key: nil, customer_id: nil, end_date: nil, group_by: nil, internal_user_id: nil, start_date: nil, team_id: nil, request_options: {}) + # @param api_key [String, nil] + # @param customer_id [String, nil] + # @param end_date [String, nil] + # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] + # @param internal_user_id [String, nil] + # @param start_date [String, nil] + # @param team_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # Group spend by internal team or customer or api_key module GroupBy @@ -86,11 +70,8 @@ module GroupBy CUSTOMER = :customer API_KEY = :api_key - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/global/spend_retrieve_report_response.rb b/lib/hanzoai/models/global/spend_retrieve_report_response.rb index 4540d175..0bf360d4 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_response.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_response.rb @@ -117,53 +117,26 @@ class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user, String, nil?: true - # @!parse - # # @param api_key [String] - # # @param call_type [String] - # # @param end_time [String, Time, nil] - # # @param messages [String, Array, Object, nil] - # # @param request_id [String] - # # @param response [String, Array, Object, nil] - # # @param start_time [String, Time, nil] - # # @param api_base [String, nil] - # # @param cache_hit [String, nil] - # # @param cache_key [String, nil] - # # @param completion_tokens [Integer, nil] - # # @param metadata [Object] - # # @param model [String, nil] - # # @param prompt_tokens [Integer, nil] - # # @param request_tags [Object] - # # @param requester_ip_address [String, nil] - # # @param spend [Float, nil] - # # @param total_tokens [Integer, nil] - # # @param user [String, nil] - # # - # def initialize( - # api_key:, - # call_type:, - # end_time:, - # messages:, - # request_id:, - # response:, - # start_time:, - # api_base: nil, - # cache_hit: nil, - # cache_key: nil, - # completion_tokens: nil, - # metadata: nil, - # model: nil, - # prompt_tokens: nil, - # request_tags: nil, - # requester_ip_address: nil, - # spend: nil, - # total_tokens: nil, - # user: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_key:, call_type:, end_time:, messages:, request_id:, response:, start_time:, api_base: nil, cache_hit: nil, cache_key: nil, completion_tokens: nil, metadata: nil, model: nil, prompt_tokens: nil, request_tags: nil, requester_ip_address: nil, spend: nil, total_tokens: nil, user: nil) + # @param api_key [String] + # @param call_type [String] + # @param end_time [String, Time, nil] + # @param messages [String, Array, Object, nil] + # @param request_id [String] + # @param response [String, Array, Object, nil] + # @param start_time [String, Time, nil] + # @param api_base [String, nil] + # @param cache_hit [String, nil] + # @param cache_key [String, nil] + # @param completion_tokens [Integer, nil] + # @param metadata [Object] + # @param model [String, nil] + # @param prompt_tokens [Integer, nil] + # @param request_tags [Object] + # @param requester_ip_address [String, nil] + # @param spend [Float, nil] + # @param total_tokens [Integer, nil] + # @param user [String, nil] # @see Hanzoai::Models::Global::SpendRetrieveReportResponseItem#end_time module EndTime @@ -173,9 +146,8 @@ module EndTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end # @see Hanzoai::Models::Global::SpendRetrieveReportResponseItem#messages @@ -188,9 +160,8 @@ module Messages variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -205,9 +176,8 @@ module Response variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -220,9 +190,8 @@ module StartTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end end diff --git a/lib/hanzoai/models/guardrail_list_params.rb b/lib/hanzoai/models/guardrail_list_params.rb index dd068afc..63c29aaa 100644 --- a/lib/hanzoai/models/guardrail_list_params.rb +++ b/lib/hanzoai/models/guardrail_list_params.rb @@ -8,12 +8,8 @@ class GuardrailListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index 05c16c7a..18115b47 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -10,12 +10,8 @@ class GuardrailListResponse < Hanzoai::Internal::Type::BaseModel required :guardrails, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::GuardrailListResponse::Guardrail] } - # @!parse - # # @param guardrails [Array] - # # - # def initialize(guardrails:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(guardrails:) + # @param guardrails [Array] class Guardrail < Hanzoai::Internal::Type::BaseModel # @!attribute guardrail_info @@ -34,14 +30,10 @@ class Guardrail < Hanzoai::Internal::Type::BaseModel # @return [Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams] required :llm_params, -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams } - # @!parse - # # @param guardrail_info [Object, nil] - # # @param guardrail_name [String] - # # @param llm_params [Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams] - # # - # def initialize(guardrail_info:, guardrail_name:, llm_params:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(guardrail_info:, guardrail_name:, llm_params:) + # @param guardrail_info [Object, nil] + # @param guardrail_name [String] + # @param llm_params [Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams] # @see Hanzoai::Models::GuardrailListResponse::Guardrail#llm_params class LlmParams < Hanzoai::Internal::Type::BaseModel @@ -64,16 +56,12 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # # @return [Boolean] # attr_writer :default_on - # @!parse - # # The returned LLM Params object for /guardrails/list - # # - # # @param guardrail [String] - # # @param mode [String, Array] - # # @param default_on [Boolean] - # # - # def initialize(guardrail:, mode:, default_on: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(guardrail:, mode:, default_on: nil) + # The returned LLM Params object for /guardrails/list + # + # @param guardrail [String] + # @param mode [String, Array] + # @param default_on [Boolean] # @see Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams#mode module Mode @@ -83,9 +71,8 @@ module Mode variant -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::StringArray } - # @!parse - # # @return [Array(String, Array)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array)] StringArray = Hanzoai::Internal::Type::ArrayOf[String] end diff --git a/lib/hanzoai/models/health_check_all_params.rb b/lib/hanzoai/models/health_check_all_params.rb index d83ab9f4..cc9e437a 100644 --- a/lib/hanzoai/models/health_check_all_params.rb +++ b/lib/hanzoai/models/health_check_all_params.rb @@ -14,13 +14,9 @@ class HealthCheckAllParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model, String, nil?: true - # @!parse - # # @param model [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(model: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model: nil, request_options: {}) + # @param model [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/health_check_liveliness_params.rb b/lib/hanzoai/models/health_check_liveliness_params.rb index 09ee183f..646a403a 100644 --- a/lib/hanzoai/models/health_check_liveliness_params.rb +++ b/lib/hanzoai/models/health_check_liveliness_params.rb @@ -8,12 +8,8 @@ class HealthCheckLivelinessParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/health_check_liveness_params.rb b/lib/hanzoai/models/health_check_liveness_params.rb index 8eeaa3cd..23d5ab88 100644 --- a/lib/hanzoai/models/health_check_liveness_params.rb +++ b/lib/hanzoai/models/health_check_liveness_params.rb @@ -8,12 +8,8 @@ class HealthCheckLivenessParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/health_check_readiness_params.rb b/lib/hanzoai/models/health_check_readiness_params.rb index bb25380a..71d46c3f 100644 --- a/lib/hanzoai/models/health_check_readiness_params.rb +++ b/lib/hanzoai/models/health_check_readiness_params.rb @@ -8,12 +8,8 @@ class HealthCheckReadinessParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/health_check_services_params.rb b/lib/hanzoai/models/health_check_services_params.rb index e50ff976..9134c43b 100644 --- a/lib/hanzoai/models/health_check_services_params.rb +++ b/lib/hanzoai/models/health_check_services_params.rb @@ -14,13 +14,9 @@ class HealthCheckServicesParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] required :service, union: -> { Hanzoai::Models::HealthCheckServicesParams::Service } - # @!parse - # # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(service:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(service:, request_options: {}) + # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # Specify the service being hit. module Service @@ -44,9 +40,8 @@ module Service variant String - # @!parse - # # @return [Array(Symbol, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Symbol, String)] # @!group diff --git a/lib/hanzoai/models/images/generation_create_params.rb b/lib/hanzoai/models/images/generation_create_params.rb index efda5f9f..f1d1f4bf 100644 --- a/lib/hanzoai/models/images/generation_create_params.rb +++ b/lib/hanzoai/models/images/generation_create_params.rb @@ -9,12 +9,8 @@ class GenerationCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/ip_address.rb b/lib/hanzoai/models/ip_address.rb index 8f4fdb80..2b204969 100644 --- a/lib/hanzoai/models/ip_address.rb +++ b/lib/hanzoai/models/ip_address.rb @@ -8,12 +8,8 @@ class IPAddress < Hanzoai::Internal::Type::BaseModel # @return [String] required :ip, String - # @!parse - # # @param ip [String] - # # - # def initialize(ip:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(ip:) + # @param ip [String] end end end diff --git a/lib/hanzoai/models/key/regenerate_key_request.rb b/lib/hanzoai/models/key/regenerate_key_request.rb index 126938c3..7e7361ce 100644 --- a/lib/hanzoai/models/key/regenerate_key_request.rb +++ b/lib/hanzoai/models/key/regenerate_key_request.rb @@ -146,71 +146,35 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param aliases [Object, nil] - # # @param allowed_cache_controls [Array, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param config [Object, nil] - # # @param duration [String, nil] - # # @param enforced_params [Array, nil] - # # @param guardrails [Array, nil] - # # @param key [String, nil] - # # @param key_alias [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_rpm_limit [Object, nil] - # # @param model_tpm_limit [Object, nil] - # # @param models [Array, nil] - # # @param new_master_key [String, nil] - # # @param permissions [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param send_invite_email [Boolean, nil] - # # @param soft_budget [Float, nil] - # # @param spend [Float, nil] - # # @param tags [Array, nil] - # # @param team_id [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param user_id [String, nil] - # # - # def initialize( - # aliases: nil, - # allowed_cache_controls: nil, - # blocked: nil, - # budget_duration: nil, - # budget_id: nil, - # config: nil, - # duration: nil, - # enforced_params: nil, - # guardrails: nil, - # key: nil, - # key_alias: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_rpm_limit: nil, - # model_tpm_limit: nil, - # models: nil, - # new_master_key: nil, - # permissions: nil, - # rpm_limit: nil, - # send_invite_email: nil, - # soft_budget: nil, - # spend: nil, - # tags: nil, - # team_id: nil, - # tpm_limit: nil, - # user_id: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, new_master_key: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil) + # @param aliases [Object, nil] + # @param allowed_cache_controls [Array, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param config [Object, nil] + # @param duration [String, nil] + # @param enforced_params [Array, nil] + # @param guardrails [Array, nil] + # @param key [String, nil] + # @param key_alias [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_rpm_limit [Object, nil] + # @param model_tpm_limit [Object, nil] + # @param models [Array, nil] + # @param new_master_key [String, nil] + # @param permissions [Object, nil] + # @param rpm_limit [Integer, nil] + # @param send_invite_email [Boolean, nil] + # @param soft_budget [Float, nil] + # @param spend [Float, nil] + # @param tags [Array, nil] + # @param team_id [String, nil] + # @param tpm_limit [Integer, nil] + # @param user_id [String, nil] end end end diff --git a/lib/hanzoai/models/key_block_params.rb b/lib/hanzoai/models/key_block_params.rb index 876f2a31..c45f4948 100644 --- a/lib/hanzoai/models/key_block_params.rb +++ b/lib/hanzoai/models/key_block_params.rb @@ -19,13 +19,9 @@ class KeyBlockParams < Hanzoai::Models::BlockKeyRequest # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(llm_changed_by: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(llm_changed_by: nil, request_options: {}) + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_block_response.rb b/lib/hanzoai/models/key_block_response.rb index 958b37bc..c26f4eaa 100644 --- a/lib/hanzoai/models/key_block_response.rb +++ b/lib/hanzoai/models/key_block_response.rb @@ -187,73 +187,36 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param token [String, nil] - # # @param aliases [Object] - # # @param allowed_cache_controls [Array, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param config [Object] - # # @param created_at [Time, nil] - # # @param created_by [String, nil] - # # @param expires [String, Time, nil] - # # @param key_alias [String, nil] - # # @param key_name [String, nil] - # # @param llm_budget_table [Object, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object] - # # @param model_max_budget [Object] - # # @param model_spend [Object] - # # @param models [Array] - # # @param org_id [String, nil] - # # @param permissions [Object] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget_cooldown [Boolean] - # # @param spend [Float] - # # @param team_id [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param updated_at [Time, nil] - # # @param updated_by [String, nil] - # # @param user_id [String, nil] - # # - # def initialize( - # token: nil, - # aliases: nil, - # allowed_cache_controls: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # config: nil, - # created_at: nil, - # created_by: nil, - # expires: nil, - # key_alias: nil, - # key_name: nil, - # llm_budget_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_spend: nil, - # models: nil, - # org_id: nil, - # permissions: nil, - # rpm_limit: nil, - # soft_budget_cooldown: nil, - # spend: nil, - # team_id: nil, - # tpm_limit: nil, - # updated_at: nil, - # updated_by: nil, - # user_id: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(token: nil, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, expires: nil, key_alias: nil, key_name: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, org_id: nil, permissions: nil, rpm_limit: nil, soft_budget_cooldown: nil, spend: nil, team_id: nil, tpm_limit: nil, updated_at: nil, updated_by: nil, user_id: nil) + # @param token [String, nil] + # @param aliases [Object] + # @param allowed_cache_controls [Array, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param config [Object] + # @param created_at [Time, nil] + # @param created_by [String, nil] + # @param expires [String, Time, nil] + # @param key_alias [String, nil] + # @param key_name [String, nil] + # @param llm_budget_table [Object, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object] + # @param model_max_budget [Object] + # @param model_spend [Object] + # @param models [Array] + # @param org_id [String, nil] + # @param permissions [Object] + # @param rpm_limit [Integer, nil] + # @param soft_budget_cooldown [Boolean] + # @param spend [Float] + # @param team_id [String, nil] + # @param tpm_limit [Integer, nil] + # @param updated_at [Time, nil] + # @param updated_by [String, nil] + # @param user_id [String, nil] # @see Hanzoai::Models::KeyBlockResponse#expires module Expires @@ -263,9 +226,8 @@ module Expires variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end end end diff --git a/lib/hanzoai/models/key_check_health_params.rb b/lib/hanzoai/models/key_check_health_params.rb index 420007a0..a185d7f2 100644 --- a/lib/hanzoai/models/key_check_health_params.rb +++ b/lib/hanzoai/models/key_check_health_params.rb @@ -8,12 +8,8 @@ class KeyCheckHealthParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_check_health_response.rb b/lib/hanzoai/models/key_check_health_response.rb index 3443b429..73ef4b2b 100644 --- a/lib/hanzoai/models/key_check_health_response.rb +++ b/lib/hanzoai/models/key_check_health_response.rb @@ -18,13 +18,9 @@ class KeyCheckHealthResponse < Hanzoai::Internal::Type::BaseModel # @return [Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks, nil] optional :logging_callbacks, -> { Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks }, nil?: true - # @!parse - # # @param key [Symbol, Hanzoai::Models::KeyCheckHealthResponse::Key] - # # @param logging_callbacks [Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks, nil] - # # - # def initialize(key: nil, logging_callbacks: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(key: nil, logging_callbacks: nil) + # @param key [Symbol, Hanzoai::Models::KeyCheckHealthResponse::Key] + # @param logging_callbacks [Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks, nil] # @see Hanzoai::Models::KeyCheckHealthResponse#key module Key @@ -33,11 +29,8 @@ module Key HEALTHY = :healthy UNHEALTHY = :unhealthy - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end # @see Hanzoai::Models::KeyCheckHealthResponse#logging_callbacks @@ -65,14 +58,10 @@ class LoggingCallbacks < Hanzoai::Internal::Type::BaseModel # # @return [Symbol, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status] # attr_writer :status - # @!parse - # # @param callbacks [Array] - # # @param details [String, nil] - # # @param status [Symbol, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status] - # # - # def initialize(callbacks: nil, details: nil, status: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(callbacks: nil, details: nil, status: nil) + # @param callbacks [Array] + # @param details [String, nil] + # @param status [Symbol, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status] # @see Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks#status module Status @@ -81,11 +70,8 @@ module Status HEALTHY = :healthy UNHEALTHY = :unhealthy - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/key_delete_params.rb b/lib/hanzoai/models/key_delete_params.rb index 87e4db3c..45734f51 100644 --- a/lib/hanzoai/models/key_delete_params.rb +++ b/lib/hanzoai/models/key_delete_params.rb @@ -29,15 +29,11 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param key_aliases [Array, nil] - # # @param keys [Array, nil] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) + # @param key_aliases [Array, nil] + # @param keys [Array, nil] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index 410b46e9..a390c456 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -156,73 +156,36 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param aliases [Object, nil] - # # @param allowed_cache_controls [Array, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param config [Object, nil] - # # @param duration [String, nil] - # # @param enforced_params [Array, nil] - # # @param guardrails [Array, nil] - # # @param key [String, nil] - # # @param key_alias [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_rpm_limit [Object, nil] - # # @param model_tpm_limit [Object, nil] - # # @param models [Array, nil] - # # @param permissions [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param send_invite_email [Boolean, nil] - # # @param soft_budget [Float, nil] - # # @param spend [Float, nil] - # # @param tags [Array, nil] - # # @param team_id [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param user_id [String, nil] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # aliases: nil, - # allowed_cache_controls: nil, - # blocked: nil, - # budget_duration: nil, - # budget_id: nil, - # config: nil, - # duration: nil, - # enforced_params: nil, - # guardrails: nil, - # key: nil, - # key_alias: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_rpm_limit: nil, - # model_tpm_limit: nil, - # models: nil, - # permissions: nil, - # rpm_limit: nil, - # send_invite_email: nil, - # soft_budget: nil, - # spend: nil, - # tags: nil, - # team_id: nil, - # tpm_limit: nil, - # user_id: nil, - # llm_changed_by: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # @param aliases [Object, nil] + # @param allowed_cache_controls [Array, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param config [Object, nil] + # @param duration [String, nil] + # @param enforced_params [Array, nil] + # @param guardrails [Array, nil] + # @param key [String, nil] + # @param key_alias [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_rpm_limit [Object, nil] + # @param model_tpm_limit [Object, nil] + # @param models [Array, nil] + # @param permissions [Object, nil] + # @param rpm_limit [Integer, nil] + # @param send_invite_email [Boolean, nil] + # @param soft_budget [Float, nil] + # @param spend [Float, nil] + # @param tags [Array, nil] + # @param team_id [String, nil] + # @param tpm_limit [Integer, nil] + # @param user_id [String, nil] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_list_params.rb b/lib/hanzoai/models/key_list_params.rb index af10277c..8caecf95 100644 --- a/lib/hanzoai/models/key_list_params.rb +++ b/lib/hanzoai/models/key_list_params.rb @@ -72,33 +72,16 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param include_team_keys [Boolean] - # # @param key_alias [String, nil] - # # @param organization_id [String, nil] - # # @param page [Integer] - # # @param return_full_object [Boolean] - # # @param size [Integer] - # # @param team_id [String, nil] - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # include_team_keys: nil, - # key_alias: nil, - # organization_id: nil, - # page: nil, - # return_full_object: nil, - # size: nil, - # team_id: nil, - # user_id: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(include_team_keys: nil, key_alias: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, team_id: nil, user_id: nil, request_options: {}) + # @param include_team_keys [Boolean] + # @param key_alias [String, nil] + # @param organization_id [String, nil] + # @param page [Integer] + # @param return_full_object [Boolean] + # @param size [Integer] + # @param team_id [String, nil] + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index 86537014..97d48b1e 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -28,15 +28,11 @@ class KeyListResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :total_pages, Integer, nil?: true - # @!parse - # # @param current_page [Integer, nil] - # # @param keys [Array] - # # @param total_count [Integer, nil] - # # @param total_pages [Integer, nil] - # # - # def initialize(current_page: nil, keys: nil, total_count: nil, total_pages: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(current_page: nil, keys: nil, total_count: nil, total_pages: nil) + # @param current_page [Integer, nil] + # @param keys [Array] + # @param total_count [Integer, nil] + # @param total_pages [Integer, nil] # Return the row in the db module Key @@ -390,127 +386,64 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :user_tpm_limit, Integer, nil?: true - # @!parse - # # Return the row in the db - # # - # # @param token [String, nil] - # # @param aliases [Object] - # # @param allowed_cache_controls [Array, nil] - # # @param allowed_model_region [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion, nil] - # # @param api_key [String, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param config [Object] - # # @param created_at [Time, nil] - # # @param created_by [String, nil] - # # @param end_user_id [String, nil] - # # @param end_user_max_budget [Float, nil] - # # @param end_user_rpm_limit [Integer, nil] - # # @param end_user_tpm_limit [Integer, nil] - # # @param expires [String, Time, nil] - # # @param key_alias [String, nil] - # # @param key_name [String, nil] - # # @param last_refreshed_at [Float, nil] - # # @param llm_budget_table [Object, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object] - # # @param model_max_budget [Object] - # # @param model_spend [Object] - # # @param models [Array] - # # @param org_id [String, nil] - # # @param parent_otel_span [Object] - # # @param permissions [Object] - # # @param rpm_limit [Integer, nil] - # # @param rpm_limit_per_model [Hash{Symbol=>Integer}, nil] - # # @param soft_budget [Float, nil] - # # @param soft_budget_cooldown [Boolean] - # # @param spend [Float] - # # @param team_alias [String, nil] - # # @param team_blocked [Boolean] - # # @param team_id [String, nil] - # # @param team_max_budget [Float, nil] - # # @param team_member [Hanzoai::Models::Member, nil] - # # @param team_member_spend [Float, nil] - # # @param team_metadata [Object, nil] - # # @param team_model_aliases [Object, nil] - # # @param team_models [Array] - # # @param team_rpm_limit [Integer, nil] - # # @param team_spend [Float, nil] - # # @param team_tpm_limit [Integer, nil] - # # @param tpm_limit [Integer, nil] - # # @param tpm_limit_per_model [Hash{Symbol=>Integer}, nil] - # # @param updated_at [Time, nil] - # # @param updated_by [String, nil] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param user_role [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] - # # @param user_rpm_limit [Integer, nil] - # # @param user_tpm_limit [Integer, nil] - # # - # def initialize( - # token: nil, - # aliases: nil, - # allowed_cache_controls: nil, - # allowed_model_region: nil, - # api_key: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # config: nil, - # created_at: nil, - # created_by: nil, - # end_user_id: nil, - # end_user_max_budget: nil, - # end_user_rpm_limit: nil, - # end_user_tpm_limit: nil, - # expires: nil, - # key_alias: nil, - # key_name: nil, - # last_refreshed_at: nil, - # llm_budget_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_spend: nil, - # models: nil, - # org_id: nil, - # parent_otel_span: nil, - # permissions: nil, - # rpm_limit: nil, - # rpm_limit_per_model: nil, - # soft_budget: nil, - # soft_budget_cooldown: nil, - # spend: nil, - # team_alias: nil, - # team_blocked: nil, - # team_id: nil, - # team_max_budget: nil, - # team_member: nil, - # team_member_spend: nil, - # team_metadata: nil, - # team_model_aliases: nil, - # team_models: nil, - # team_rpm_limit: nil, - # team_spend: nil, - # team_tpm_limit: nil, - # tpm_limit: nil, - # tpm_limit_per_model: nil, - # updated_at: nil, - # updated_by: nil, - # user_email: nil, - # user_id: nil, - # user_role: nil, - # user_rpm_limit: nil, - # user_tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(token: nil, aliases: nil, allowed_cache_controls: nil, allowed_model_region: nil, api_key: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, end_user_id: nil, end_user_max_budget: nil, end_user_rpm_limit: nil, end_user_tpm_limit: nil, expires: nil, key_alias: nil, key_name: nil, last_refreshed_at: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, org_id: nil, parent_otel_span: nil, permissions: nil, rpm_limit: nil, rpm_limit_per_model: nil, soft_budget: nil, soft_budget_cooldown: nil, spend: nil, team_alias: nil, team_blocked: nil, team_id: nil, team_max_budget: nil, team_member: nil, team_member_spend: nil, team_metadata: nil, team_model_aliases: nil, team_models: nil, team_rpm_limit: nil, team_spend: nil, team_tpm_limit: nil, tpm_limit: nil, tpm_limit_per_model: nil, updated_at: nil, updated_by: nil, user_email: nil, user_id: nil, user_role: nil, user_rpm_limit: nil, user_tpm_limit: nil) + # Return the row in the db + # + # @param token [String, nil] + # @param aliases [Object] + # @param allowed_cache_controls [Array, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion, nil] + # @param api_key [String, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param config [Object] + # @param created_at [Time, nil] + # @param created_by [String, nil] + # @param end_user_id [String, nil] + # @param end_user_max_budget [Float, nil] + # @param end_user_rpm_limit [Integer, nil] + # @param end_user_tpm_limit [Integer, nil] + # @param expires [String, Time, nil] + # @param key_alias [String, nil] + # @param key_name [String, nil] + # @param last_refreshed_at [Float, nil] + # @param llm_budget_table [Object, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object] + # @param model_max_budget [Object] + # @param model_spend [Object] + # @param models [Array] + # @param org_id [String, nil] + # @param parent_otel_span [Object] + # @param permissions [Object] + # @param rpm_limit [Integer, nil] + # @param rpm_limit_per_model [Hash{Symbol=>Integer}, nil] + # @param soft_budget [Float, nil] + # @param soft_budget_cooldown [Boolean] + # @param spend [Float] + # @param team_alias [String, nil] + # @param team_blocked [Boolean] + # @param team_id [String, nil] + # @param team_max_budget [Float, nil] + # @param team_member [Hanzoai::Models::Member, nil] + # @param team_member_spend [Float, nil] + # @param team_metadata [Object, nil] + # @param team_model_aliases [Object, nil] + # @param team_models [Array] + # @param team_rpm_limit [Integer, nil] + # @param team_spend [Float, nil] + # @param team_tpm_limit [Integer, nil] + # @param tpm_limit [Integer, nil] + # @param tpm_limit_per_model [Hash{Symbol=>Integer}, nil] + # @param updated_at [Time, nil] + # @param updated_by [String, nil] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param user_role [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] + # @param user_rpm_limit [Integer, nil] + # @param user_tpm_limit [Integer, nil] # @see Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth#allowed_model_region module AllowedModelRegion @@ -519,11 +452,8 @@ module AllowedModelRegion EU = :eu US = :us - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end # @see Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth#expires @@ -534,9 +464,8 @@ module Expires variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can @@ -563,17 +492,13 @@ module UserRole TEAM = :team CUSTOMER = :customer - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end - # @!parse - # # @return [Array(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth)] end end end diff --git a/lib/hanzoai/models/key_regenerate_by_key_params.rb b/lib/hanzoai/models/key_regenerate_by_key_params.rb index 2756b029..f1500657 100644 --- a/lib/hanzoai/models/key_regenerate_by_key_params.rb +++ b/lib/hanzoai/models/key_regenerate_by_key_params.rb @@ -19,13 +19,9 @@ class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(llm_changed_by: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(llm_changed_by: nil, request_options: {}) + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_retrieve_info_params.rb b/lib/hanzoai/models/key_retrieve_info_params.rb index 9939f20e..31091f13 100644 --- a/lib/hanzoai/models/key_retrieve_info_params.rb +++ b/lib/hanzoai/models/key_retrieve_info_params.rb @@ -14,13 +14,9 @@ class KeyRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key, String, nil?: true - # @!parse - # # @param key [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(key: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(key: nil, request_options: {}) + # @param key [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_unblock_params.rb b/lib/hanzoai/models/key_unblock_params.rb index 24c3ddbb..4c699ee9 100644 --- a/lib/hanzoai/models/key_unblock_params.rb +++ b/lib/hanzoai/models/key_unblock_params.rb @@ -19,13 +19,9 @@ class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(llm_changed_by: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(llm_changed_by: nil, request_options: {}) + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index c40dd4f4..293b7325 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -156,73 +156,36 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param key [String] - # # @param aliases [Object, nil] - # # @param allowed_cache_controls [Array, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param config [Object, nil] - # # @param duration [String, nil] - # # @param enforced_params [Array, nil] - # # @param guardrails [Array, nil] - # # @param key_alias [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_rpm_limit [Object, nil] - # # @param model_tpm_limit [Object, nil] - # # @param models [Array, nil] - # # @param permissions [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param tags [Array, nil] - # # @param team_id [String, nil] - # # @param temp_budget_expiry [Time, nil] - # # @param temp_budget_increase [Float, nil] - # # @param tpm_limit [Integer, nil] - # # @param user_id [String, nil] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # key:, - # aliases: nil, - # allowed_cache_controls: nil, - # blocked: nil, - # budget_duration: nil, - # budget_id: nil, - # config: nil, - # duration: nil, - # enforced_params: nil, - # guardrails: nil, - # key_alias: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_rpm_limit: nil, - # model_tpm_limit: nil, - # models: nil, - # permissions: nil, - # rpm_limit: nil, - # spend: nil, - # tags: nil, - # team_id: nil, - # temp_budget_expiry: nil, - # temp_budget_increase: nil, - # tpm_limit: nil, - # user_id: nil, - # llm_changed_by: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(key:, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # @param key [String] + # @param aliases [Object, nil] + # @param allowed_cache_controls [Array, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param config [Object, nil] + # @param duration [String, nil] + # @param enforced_params [Array, nil] + # @param guardrails [Array, nil] + # @param key_alias [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_rpm_limit [Object, nil] + # @param model_tpm_limit [Object, nil] + # @param models [Array, nil] + # @param permissions [Object, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param tags [Array, nil] + # @param team_id [String, nil] + # @param temp_budget_expiry [Time, nil] + # @param temp_budget_increase [Float, nil] + # @param tpm_limit [Integer, nil] + # @param user_id [String, nil] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/langfuse_create_params.rb b/lib/hanzoai/models/langfuse_create_params.rb index 66f31ec2..9f0b5d03 100644 --- a/lib/hanzoai/models/langfuse_create_params.rb +++ b/lib/hanzoai/models/langfuse_create_params.rb @@ -8,12 +8,8 @@ class LangfuseCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/langfuse_delete_params.rb b/lib/hanzoai/models/langfuse_delete_params.rb index 55712f7a..1a0f1076 100644 --- a/lib/hanzoai/models/langfuse_delete_params.rb +++ b/lib/hanzoai/models/langfuse_delete_params.rb @@ -8,12 +8,8 @@ class LangfuseDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/langfuse_patch_params.rb b/lib/hanzoai/models/langfuse_patch_params.rb index bd1bad4b..08adca6d 100644 --- a/lib/hanzoai/models/langfuse_patch_params.rb +++ b/lib/hanzoai/models/langfuse_patch_params.rb @@ -8,12 +8,8 @@ class LangfusePatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/langfuse_retrieve_params.rb b/lib/hanzoai/models/langfuse_retrieve_params.rb index e0baf390..af31f62e 100644 --- a/lib/hanzoai/models/langfuse_retrieve_params.rb +++ b/lib/hanzoai/models/langfuse_retrieve_params.rb @@ -8,12 +8,8 @@ class LangfuseRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/langfuse_update_params.rb b/lib/hanzoai/models/langfuse_update_params.rb index 4af025d1..78ba6904 100644 --- a/lib/hanzoai/models/langfuse_update_params.rb +++ b/lib/hanzoai/models/langfuse_update_params.rb @@ -8,12 +8,8 @@ class LangfuseUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/member.rb b/lib/hanzoai/models/member.rb index a7a1cec6..a1c20ec0 100644 --- a/lib/hanzoai/models/member.rb +++ b/lib/hanzoai/models/member.rb @@ -18,14 +18,10 @@ class Member < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param role [Symbol, Hanzoai::Models::Member::Role] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # - # def initialize(role:, user_email: nil, user_id: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(role:, user_email: nil, user_id: nil) + # @param role [Symbol, Hanzoai::Models::Member::Role] + # @param user_email [String, nil] + # @param user_id [String, nil] # @see Hanzoai::Models::Member#role module Role @@ -34,11 +30,8 @@ module Role ADMIN = :admin USER = :user - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/model/info_list_params.rb b/lib/hanzoai/models/model/info_list_params.rb index d67861bb..25a6a88c 100644 --- a/lib/hanzoai/models/model/info_list_params.rb +++ b/lib/hanzoai/models/model/info_list_params.rb @@ -14,13 +14,9 @@ class InfoListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :llm_model_id, String, nil?: true - # @!parse - # # @param llm_model_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(llm_model_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(llm_model_id: nil, request_options: {}) + # @param llm_model_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/model/update_deployment.rb b/lib/hanzoai/models/model/update_deployment.rb index b3de2ff5..4926bf19 100644 --- a/lib/hanzoai/models/model/update_deployment.rb +++ b/lib/hanzoai/models/model/update_deployment.rb @@ -19,14 +19,10 @@ class UpdateDeployment < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model_name, String, nil?: true - # @!parse - # # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] - # # @param model_info [Hanzoai::Models::ModelInfo, nil] - # # @param model_name [String, nil] - # # - # def initialize(llm_params: nil, model_info: nil, model_name: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(llm_params: nil, model_info: nil, model_name: nil) + # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] + # @param model_info [Hanzoai::Models::ModelInfo, nil] + # @param model_name [String, nil] # @see Hanzoai::Models::Model::UpdateDeployment#llm_params class LlmParams < Hanzoai::Internal::Type::BaseModel @@ -191,77 +187,38 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :watsonx_region_name, String, nil?: true - # @!parse - # # @param api_base [String, nil] - # # @param api_key [String, nil] - # # @param api_version [String, nil] - # # @param aws_access_key_id [String, nil] - # # @param aws_region_name [String, nil] - # # @param aws_secret_access_key [String, nil] - # # @param budget_duration [String, nil] - # # @param configurable_clientside_auth_params [Array, nil] - # # @param custom_llm_provider [String, nil] - # # @param input_cost_per_second [Float, nil] - # # @param input_cost_per_token [Float, nil] - # # @param llm_trace_id [String, nil] - # # @param max_budget [Float, nil] - # # @param max_file_size_mb [Float, nil] - # # @param max_retries [Integer, nil] - # # @param merge_reasoning_content_in_choices [Boolean, nil] - # # @param model [String, nil] - # # @param model_info [Object, nil] - # # @param organization [String, nil] - # # @param output_cost_per_second [Float, nil] - # # @param output_cost_per_token [Float, nil] - # # @param region_name [String, nil] - # # @param rpm [Integer, nil] - # # @param stream_timeout [Float, String, nil] - # # @param timeout [Float, String, nil] - # # @param tpm [Integer, nil] - # # @param use_in_pass_through [Boolean, nil] - # # @param vertex_credentials [Object, String, nil] - # # @param vertex_location [String, nil] - # # @param vertex_project [String, nil] - # # @param watsonx_region_name [String, nil] - # # - # def initialize( - # api_base: nil, - # api_key: nil, - # api_version: nil, - # aws_access_key_id: nil, - # aws_region_name: nil, - # aws_secret_access_key: nil, - # budget_duration: nil, - # configurable_clientside_auth_params: nil, - # custom_llm_provider: nil, - # input_cost_per_second: nil, - # input_cost_per_token: nil, - # llm_trace_id: nil, - # max_budget: nil, - # max_file_size_mb: nil, - # max_retries: nil, - # merge_reasoning_content_in_choices: nil, - # model: nil, - # model_info: nil, - # organization: nil, - # output_cost_per_second: nil, - # output_cost_per_token: nil, - # region_name: nil, - # rpm: nil, - # stream_timeout: nil, - # timeout: nil, - # tpm: nil, - # use_in_pass_through: nil, - # vertex_credentials: nil, - # vertex_location: nil, - # vertex_project: nil, - # watsonx_region_name: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_base: nil, api_key: nil, api_version: nil, aws_access_key_id: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, input_cost_per_second: nil, input_cost_per_token: nil, llm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, model: nil, model_info: nil, organization: nil, output_cost_per_second: nil, output_cost_per_token: nil, region_name: nil, rpm: nil, stream_timeout: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, watsonx_region_name: nil) + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_version [String, nil] + # @param aws_access_key_id [String, nil] + # @param aws_region_name [String, nil] + # @param aws_secret_access_key [String, nil] + # @param budget_duration [String, nil] + # @param configurable_clientside_auth_params [Array, nil] + # @param custom_llm_provider [String, nil] + # @param input_cost_per_second [Float, nil] + # @param input_cost_per_token [Float, nil] + # @param llm_trace_id [String, nil] + # @param max_budget [Float, nil] + # @param max_file_size_mb [Float, nil] + # @param max_retries [Integer, nil] + # @param merge_reasoning_content_in_choices [Boolean, nil] + # @param model [String, nil] + # @param model_info [Object, nil] + # @param organization [String, nil] + # @param output_cost_per_second [Float, nil] + # @param output_cost_per_token [Float, nil] + # @param region_name [String, nil] + # @param rpm [Integer, nil] + # @param stream_timeout [Float, String, nil] + # @param timeout [Float, String, nil] + # @param tpm [Integer, nil] + # @param use_in_pass_through [Boolean, nil] + # @param vertex_credentials [Object, String, nil] + # @param vertex_location [String, nil] + # @param vertex_project [String, nil] + # @param watsonx_region_name [String, nil] module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union @@ -270,9 +227,8 @@ module ConfigurableClientsideAuthParam variant -> { Hanzoai::Models::ConfigurableClientsideParamsCustomAuth } - # @!parse - # # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] end # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#stream_timeout @@ -283,9 +239,8 @@ module StreamTimeout variant String - # @!parse - # # @return [Array(Float, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Float, String)] end # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#timeout @@ -296,9 +251,8 @@ module Timeout variant String - # @!parse - # # @return [Array(Float, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Float, String)] end # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#vertex_credentials @@ -309,9 +263,8 @@ module VertexCredentials variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/model/update_full_params.rb b/lib/hanzoai/models/model/update_full_params.rb index 6bdefc94..bb67e804 100644 --- a/lib/hanzoai/models/model/update_full_params.rb +++ b/lib/hanzoai/models/model/update_full_params.rb @@ -9,12 +9,8 @@ class UpdateFullParams < Hanzoai::Models::Model::UpdateDeployment # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/model/update_partial_params.rb b/lib/hanzoai/models/model/update_partial_params.rb index 4b56b8cd..7f3983c8 100644 --- a/lib/hanzoai/models/model/update_partial_params.rb +++ b/lib/hanzoai/models/model/update_partial_params.rb @@ -9,12 +9,8 @@ class UpdatePartialParams < Hanzoai::Models::Model::UpdateDeployment # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index f84de83b..2ebcc1e2 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -24,15 +24,11 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :model_name, String - # @!parse - # # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] - # # @param model_info [Hanzoai::Models::ModelInfo] - # # @param model_name [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(llm_params:, model_info:, model_name:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(llm_params:, model_info:, model_name:, request_options: {}) + # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] + # @param model_info [Hanzoai::Models::ModelInfo] + # @param model_name [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute model @@ -196,79 +192,40 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :watsonx_region_name, String, nil?: true - # @!parse - # # LLM Params with 'model' requirement - used for completions - # # - # # @param model [String] - # # @param api_base [String, nil] - # # @param api_key [String, nil] - # # @param api_version [String, nil] - # # @param aws_access_key_id [String, nil] - # # @param aws_region_name [String, nil] - # # @param aws_secret_access_key [String, nil] - # # @param budget_duration [String, nil] - # # @param configurable_clientside_auth_params [Array, nil] - # # @param custom_llm_provider [String, nil] - # # @param input_cost_per_second [Float, nil] - # # @param input_cost_per_token [Float, nil] - # # @param llm_trace_id [String, nil] - # # @param max_budget [Float, nil] - # # @param max_file_size_mb [Float, nil] - # # @param max_retries [Integer, nil] - # # @param merge_reasoning_content_in_choices [Boolean, nil] - # # @param model_info [Object, nil] - # # @param organization [String, nil] - # # @param output_cost_per_second [Float, nil] - # # @param output_cost_per_token [Float, nil] - # # @param region_name [String, nil] - # # @param rpm [Integer, nil] - # # @param stream_timeout [Float, String, nil] - # # @param timeout [Float, String, nil] - # # @param tpm [Integer, nil] - # # @param use_in_pass_through [Boolean, nil] - # # @param vertex_credentials [Object, String, nil] - # # @param vertex_location [String, nil] - # # @param vertex_project [String, nil] - # # @param watsonx_region_name [String, nil] - # # - # def initialize( - # model:, - # api_base: nil, - # api_key: nil, - # api_version: nil, - # aws_access_key_id: nil, - # aws_region_name: nil, - # aws_secret_access_key: nil, - # budget_duration: nil, - # configurable_clientside_auth_params: nil, - # custom_llm_provider: nil, - # input_cost_per_second: nil, - # input_cost_per_token: nil, - # llm_trace_id: nil, - # max_budget: nil, - # max_file_size_mb: nil, - # max_retries: nil, - # merge_reasoning_content_in_choices: nil, - # model_info: nil, - # organization: nil, - # output_cost_per_second: nil, - # output_cost_per_token: nil, - # region_name: nil, - # rpm: nil, - # stream_timeout: nil, - # timeout: nil, - # tpm: nil, - # use_in_pass_through: nil, - # vertex_credentials: nil, - # vertex_location: nil, - # vertex_project: nil, - # watsonx_region_name: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model:, api_base: nil, api_key: nil, api_version: nil, aws_access_key_id: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, input_cost_per_second: nil, input_cost_per_token: nil, llm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, model_info: nil, organization: nil, output_cost_per_second: nil, output_cost_per_token: nil, region_name: nil, rpm: nil, stream_timeout: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, watsonx_region_name: nil) + # LLM Params with 'model' requirement - used for completions + # + # @param model [String] + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_version [String, nil] + # @param aws_access_key_id [String, nil] + # @param aws_region_name [String, nil] + # @param aws_secret_access_key [String, nil] + # @param budget_duration [String, nil] + # @param configurable_clientside_auth_params [Array, nil] + # @param custom_llm_provider [String, nil] + # @param input_cost_per_second [Float, nil] + # @param input_cost_per_token [Float, nil] + # @param llm_trace_id [String, nil] + # @param max_budget [Float, nil] + # @param max_file_size_mb [Float, nil] + # @param max_retries [Integer, nil] + # @param merge_reasoning_content_in_choices [Boolean, nil] + # @param model_info [Object, nil] + # @param organization [String, nil] + # @param output_cost_per_second [Float, nil] + # @param output_cost_per_token [Float, nil] + # @param region_name [String, nil] + # @param rpm [Integer, nil] + # @param stream_timeout [Float, String, nil] + # @param timeout [Float, String, nil] + # @param tpm [Integer, nil] + # @param use_in_pass_through [Boolean, nil] + # @param vertex_credentials [Object, String, nil] + # @param vertex_location [String, nil] + # @param vertex_project [String, nil] + # @param watsonx_region_name [String, nil] module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union @@ -277,9 +234,8 @@ module ConfigurableClientsideAuthParam variant -> { Hanzoai::Models::ConfigurableClientsideParamsCustomAuth } - # @!parse - # # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] end # @see Hanzoai::Models::ModelCreateParams::LlmParams#stream_timeout @@ -290,9 +246,8 @@ module StreamTimeout variant String - # @!parse - # # @return [Array(Float, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Float, String)] end # @see Hanzoai::Models::ModelCreateParams::LlmParams#timeout @@ -303,9 +258,8 @@ module Timeout variant String - # @!parse - # # @return [Array(Float, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Float, String)] end # @see Hanzoai::Models::ModelCreateParams::LlmParams#vertex_credentials @@ -316,9 +270,8 @@ module VertexCredentials variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/model_delete_params.rb b/lib/hanzoai/models/model_delete_params.rb index 1543d761..149836f1 100644 --- a/lib/hanzoai/models/model_delete_params.rb +++ b/lib/hanzoai/models/model_delete_params.rb @@ -13,13 +13,9 @@ class ModelDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :id, String - # @!parse - # # @param id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(id:, request_options: {}) + # @param id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/model_group_retrieve_info_params.rb b/lib/hanzoai/models/model_group_retrieve_info_params.rb index d546c556..d91f7d48 100644 --- a/lib/hanzoai/models/model_group_retrieve_info_params.rb +++ b/lib/hanzoai/models/model_group_retrieve_info_params.rb @@ -13,13 +13,9 @@ class ModelGroupRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model_group, String, nil?: true - # @!parse - # # @param model_group [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(model_group: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model_group: nil, request_options: {}) + # @param model_group [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/model_info.rb b/lib/hanzoai/models/model_info.rb index 1bcacc65..a971b278 100644 --- a/lib/hanzoai/models/model_info.rb +++ b/lib/hanzoai/models/model_info.rb @@ -57,35 +57,17 @@ class ModelInfo < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :updated_by, String, nil?: true - # @!parse - # # @param id [String, nil] - # # @param base_model [String, nil] - # # @param created_at [Time, nil] - # # @param created_by [String, nil] - # # @param db_model [Boolean] - # # @param team_id [String, nil] - # # @param team_public_model_name [String, nil] - # # @param tier [Symbol, Hanzoai::Models::ModelInfo::Tier, nil] - # # @param updated_at [Time, nil] - # # @param updated_by [String, nil] - # # - # def initialize( - # id:, - # base_model: nil, - # created_at: nil, - # created_by: nil, - # db_model: nil, - # team_id: nil, - # team_public_model_name: nil, - # tier: nil, - # updated_at: nil, - # updated_by: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(id:, base_model: nil, created_at: nil, created_by: nil, db_model: nil, team_id: nil, team_public_model_name: nil, tier: nil, updated_at: nil, updated_by: nil) + # @param id [String, nil] + # @param base_model [String, nil] + # @param created_at [Time, nil] + # @param created_by [String, nil] + # @param db_model [Boolean] + # @param team_id [String, nil] + # @param team_public_model_name [String, nil] + # @param tier [Symbol, Hanzoai::Models::ModelInfo::Tier, nil] + # @param updated_at [Time, nil] + # @param updated_by [String, nil] # @see Hanzoai::Models::ModelInfo#tier module Tier @@ -94,11 +76,8 @@ module Tier FREE = :free PAID = :paid - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/model_list_params.rb b/lib/hanzoai/models/model_list_params.rb index 9148763e..99d300ca 100644 --- a/lib/hanzoai/models/model_list_params.rb +++ b/lib/hanzoai/models/model_list_params.rb @@ -18,14 +18,10 @@ class ModelListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :team_id, String, nil?: true - # @!parse - # # @param return_wildcard_routes [Boolean, nil] - # # @param team_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(return_wildcard_routes: nil, team_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(return_wildcard_routes: nil, team_id: nil, request_options: {}) + # @param return_wildcard_routes [Boolean, nil] + # @param team_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/moderation_create_params.rb b/lib/hanzoai/models/moderation_create_params.rb index 37b23a2f..d39719b0 100644 --- a/lib/hanzoai/models/moderation_create_params.rb +++ b/lib/hanzoai/models/moderation_create_params.rb @@ -8,12 +8,8 @@ class ModerationCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai/deployment_complete_params.rb b/lib/hanzoai/models/openai/deployment_complete_params.rb index 4af31472..4ecc7b32 100644 --- a/lib/hanzoai/models/openai/deployment_complete_params.rb +++ b/lib/hanzoai/models/openai/deployment_complete_params.rb @@ -9,12 +9,8 @@ class DeploymentCompleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai/deployment_embed_params.rb b/lib/hanzoai/models/openai/deployment_embed_params.rb index 555af9f8..dc96dbcd 100644 --- a/lib/hanzoai/models/openai/deployment_embed_params.rb +++ b/lib/hanzoai/models/openai/deployment_embed_params.rb @@ -9,12 +9,8 @@ class DeploymentEmbedParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai/deployments/chat_complete_params.rb b/lib/hanzoai/models/openai/deployments/chat_complete_params.rb index 7f817d1d..4d069948 100644 --- a/lib/hanzoai/models/openai/deployments/chat_complete_params.rb +++ b/lib/hanzoai/models/openai/deployments/chat_complete_params.rb @@ -10,12 +10,8 @@ class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai_create_params.rb b/lib/hanzoai/models/openai_create_params.rb index 2c6f793c..a3a7dbcd 100644 --- a/lib/hanzoai/models/openai_create_params.rb +++ b/lib/hanzoai/models/openai_create_params.rb @@ -8,12 +8,8 @@ class OpenAICreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai_delete_params.rb b/lib/hanzoai/models/openai_delete_params.rb index 1b14ea44..98e7f6fc 100644 --- a/lib/hanzoai/models/openai_delete_params.rb +++ b/lib/hanzoai/models/openai_delete_params.rb @@ -8,12 +8,8 @@ class OpenAIDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai_patch_params.rb b/lib/hanzoai/models/openai_patch_params.rb index 61c53a61..d9c378c5 100644 --- a/lib/hanzoai/models/openai_patch_params.rb +++ b/lib/hanzoai/models/openai_patch_params.rb @@ -8,12 +8,8 @@ class OpenAIPatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai_retrieve_params.rb b/lib/hanzoai/models/openai_retrieve_params.rb index 478d1f3a..e53da6c4 100644 --- a/lib/hanzoai/models/openai_retrieve_params.rb +++ b/lib/hanzoai/models/openai_retrieve_params.rb @@ -8,12 +8,8 @@ class OpenAIRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/openai_update_params.rb b/lib/hanzoai/models/openai_update_params.rb index ae29054a..015df968 100644 --- a/lib/hanzoai/models/openai_update_params.rb +++ b/lib/hanzoai/models/openai_update_params.rb @@ -8,12 +8,8 @@ class OpenAIUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/org_member.rb b/lib/hanzoai/models/org_member.rb index 6bbf5276..cace64f9 100644 --- a/lib/hanzoai/models/org_member.rb +++ b/lib/hanzoai/models/org_member.rb @@ -18,14 +18,10 @@ class OrgMember < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param role [Symbol, Hanzoai::Models::OrgMember::Role] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # - # def initialize(role:, user_email: nil, user_id: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(role:, user_email: nil, user_id: nil) + # @param role [Symbol, Hanzoai::Models::OrgMember::Role] + # @param user_email [String, nil] + # @param user_id [String, nil] # @see Hanzoai::Models::OrgMember#role module Role @@ -35,11 +31,8 @@ module Role INTERNAL_USER = :internal_user INTERNAL_USER_VIEWER = :internal_user_viewer - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/organization/info_deprecated_params.rb b/lib/hanzoai/models/organization/info_deprecated_params.rb index 27031fe2..12698db1 100644 --- a/lib/hanzoai/models/organization/info_deprecated_params.rb +++ b/lib/hanzoai/models/organization/info_deprecated_params.rb @@ -14,13 +14,9 @@ class InfoDeprecatedParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :organizations, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @param organizations [Array] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(organizations:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organizations:, request_options: {}) + # @param organizations [Array] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/organization/info_retrieve_params.rb b/lib/hanzoai/models/organization/info_retrieve_params.rb index 096efe09..0516082f 100644 --- a/lib/hanzoai/models/organization/info_retrieve_params.rb +++ b/lib/hanzoai/models/organization/info_retrieve_params.rb @@ -14,13 +14,9 @@ class InfoRetrieveParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :organization_id, String - # @!parse - # # @param organization_id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(organization_id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organization_id:, request_options: {}) + # @param organization_id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index dfff5b84..5d01be58 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -87,43 +87,22 @@ class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel # # @return [Array] # attr_writer :teams - # @!parse - # # Returned by the /organization/info endpoint and /organization/list endpoint - # # - # # @param budget_id [String] - # # @param created_at [Time] - # # @param created_by [String] - # # @param models [Array] - # # @param updated_at [Time] - # # @param updated_by [String] - # # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, nil] - # # @param members [Array] - # # @param metadata [Object, nil] - # # @param organization_alias [String, nil] - # # @param organization_id [String, nil] - # # @param spend [Float] - # # @param teams [Array] - # # - # def initialize( - # budget_id:, - # created_at:, - # created_by:, - # models:, - # updated_at:, - # updated_by:, - # llm_budget_table: nil, - # members: nil, - # metadata: nil, - # organization_alias: nil, - # organization_id: nil, - # spend: nil, - # teams: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) + # Returned by the /organization/info endpoint and /organization/list endpoint + # + # @param budget_id [String] + # @param created_at [Time] + # @param created_by [String] + # @param models [Array] + # @param updated_at [Time] + # @param updated_by [String] + # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, nil] + # @param members [Array] + # @param metadata [Object, nil] + # @param organization_alias [String, nil] + # @param organization_id [String, nil] + # @param spend [Float] + # @param teams [Array] # @see Hanzoai::Models::Organization::InfoRetrieveResponse#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -162,31 +141,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end class Member < Hanzoai::Internal::Type::BaseModel @@ -246,36 +210,19 @@ class Member < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::Organization::InfoRetrieveResponse::Member#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -314,31 +261,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end @@ -460,53 +392,26 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param team_id [String] - # # @param admins [Array] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param created_at [Time, nil] - # # @param llm_model_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param members [Array] - # # @param members_with_roles [Array] - # # @param metadata [Object, nil] - # # @param model_id [Integer, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param team_alias [String, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # team_id:, - # admins: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # created_at: nil, - # llm_model_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # members: nil, - # members_with_roles: nil, - # metadata: nil, - # model_id: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # spend: nil, - # team_alias: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @param team_id [String] + # @param admins [Array] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param created_at [Time, nil] + # @param llm_model_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param members [Array] + # @param members_with_roles [Array] + # @param metadata [Object, nil] + # @param model_id [Integer, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param team_alias [String, nil] + # @param tpm_limit [Integer, nil] # @see Hanzoai::Models::Organization::InfoRetrieveResponse::Team#llm_model_table class LlmModelTable < Hanzoai::Internal::Type::BaseModel @@ -527,14 +432,10 @@ class LlmModelTable < Hanzoai::Internal::Type::BaseModel union: -> { Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases }, nil?: true - # @!parse - # # @param created_by [String] - # # @param updated_by [String] - # # @param model_aliases [Object, String, nil] - # # - # def initialize(created_by:, updated_by:, model_aliases: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_by:, updated_by:, model_aliases: nil) + # @param created_by [String] + # @param updated_by [String] + # @param model_aliases [Object, String, nil] # @see Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable#model_aliases module ModelAliases @@ -544,9 +445,8 @@ module ModelAliases variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/organization_add_member_params.rb b/lib/hanzoai/models/organization_add_member_params.rb index 459b40f8..71de651f 100644 --- a/lib/hanzoai/models/organization_add_member_params.rb +++ b/lib/hanzoai/models/organization_add_member_params.rb @@ -23,15 +23,11 @@ class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :max_budget_in_organization, Float, nil?: true - # @!parse - # # @param member [Array, Hanzoai::Models::OrgMember] - # # @param organization_id [String] - # # @param max_budget_in_organization [Float, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(member:, organization_id:, max_budget_in_organization: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) + # @param member [Array, Hanzoai::Models::OrgMember] + # @param organization_id [String] + # @param max_budget_in_organization [Float, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module Member extend Hanzoai::Internal::Type::Union @@ -40,9 +36,8 @@ module Member variant -> { Hanzoai::Models::OrgMember } - # @!parse - # # @return [Array(Array, Hanzoai::Models::OrgMember)] - # def self.variants; end + # @!method self.variants + # @return [Array(Array, Hanzoai::Models::OrgMember)] OrgMemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::OrgMember }] end diff --git a/lib/hanzoai/models/organization_add_member_response.rb b/lib/hanzoai/models/organization_add_member_response.rb index d3f2d591..a59d9128 100644 --- a/lib/hanzoai/models/organization_add_member_response.rb +++ b/lib/hanzoai/models/organization_add_member_response.rb @@ -21,14 +21,10 @@ class OrganizationAddMemberResponse < Hanzoai::Internal::Type::BaseModel required :updated_users, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] } - # @!parse - # # @param organization_id [String] - # # @param updated_organization_memberships [Array] - # # @param updated_users [Array] - # # - # def initialize(organization_id:, updated_organization_memberships:, updated_users:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organization_id:, updated_organization_memberships:, updated_users:) + # @param organization_id [String] + # @param updated_organization_memberships [Array] + # @param updated_users [Array] class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel # @!attribute created_at @@ -87,36 +83,19 @@ class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -155,31 +134,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end @@ -278,47 +242,23 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # @param user_id [String] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param max_budget [Float, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_spend [Object, nil] - # # @param models [Array] - # # @param organization_memberships [Array, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float] - # # @param sso_user_id [String, nil] - # # @param teams [Array] - # # @param tpm_limit [Integer, nil] - # # @param user_email [String, nil] - # # @param user_role [String, nil] - # # - # def initialize( - # user_id:, - # budget_duration: nil, - # budget_reset_at: nil, - # max_budget: nil, - # metadata: nil, - # model_max_budget: nil, - # model_spend: nil, - # models: nil, - # organization_memberships: nil, - # rpm_limit: nil, - # spend: nil, - # sso_user_id: nil, - # teams: nil, - # tpm_limit: nil, - # user_email: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, user_email: nil, user_role: nil) + # @param user_id [String] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param max_budget [Float, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_spend [Object, nil] + # @param models [Array] + # @param organization_memberships [Array, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float] + # @param sso_user_id [String, nil] + # @param teams [Array] + # @param tpm_limit [Integer, nil] + # @param user_email [String, nil] + # @param user_role [String, nil] class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # @!attribute created_at @@ -377,36 +317,19 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -445,31 +368,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end end diff --git a/lib/hanzoai/models/organization_create_params.rb b/lib/hanzoai/models/organization_create_params.rb index d4d176e3..32435199 100644 --- a/lib/hanzoai/models/organization_create_params.rb +++ b/lib/hanzoai/models/organization_create_params.rb @@ -72,41 +72,20 @@ class OrganizationCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param organization_alias [String] - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # organization_alias:, - # budget_duration: nil, - # budget_id: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organization_alias:, budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, models: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @param organization_alias [String] + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/organization_create_response.rb b/lib/hanzoai/models/organization_create_response.rb index 178037f7..463103d0 100644 --- a/lib/hanzoai/models/organization_create_response.rb +++ b/lib/hanzoai/models/organization_create_response.rb @@ -58,35 +58,17 @@ class OrganizationCreateResponse < Hanzoai::Internal::Type::BaseModel # # @return [Float] # attr_writer :spend - # @!parse - # # @param budget_id [String] - # # @param created_at [Time] - # # @param created_by [String] - # # @param models [Array] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param updated_by [String] - # # @param metadata [Object, nil] - # # @param organization_alias [String, nil] - # # @param spend [Float] - # # - # def initialize( - # budget_id:, - # created_at:, - # created_by:, - # models:, - # organization_id:, - # updated_at:, - # updated_by:, - # metadata: nil, - # organization_alias: nil, - # spend: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id:, created_at:, created_by:, models:, organization_id:, updated_at:, updated_by:, metadata: nil, organization_alias: nil, spend: nil) + # @param budget_id [String] + # @param created_at [Time] + # @param created_by [String] + # @param models [Array] + # @param organization_id [String] + # @param updated_at [Time] + # @param updated_by [String] + # @param metadata [Object, nil] + # @param organization_alias [String, nil] + # @param spend [Float] end end end diff --git a/lib/hanzoai/models/organization_delete_member_params.rb b/lib/hanzoai/models/organization_delete_member_params.rb index 4babc187..c37372b0 100644 --- a/lib/hanzoai/models/organization_delete_member_params.rb +++ b/lib/hanzoai/models/organization_delete_member_params.rb @@ -23,15 +23,11 @@ class OrganizationDeleteMemberParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param organization_id [String] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(organization_id:, user_email: nil, user_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organization_id:, user_email: nil, user_id: nil, request_options: {}) + # @param organization_id [String] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/organization_delete_params.rb b/lib/hanzoai/models/organization_delete_params.rb index a8add205..8c0eb5b6 100644 --- a/lib/hanzoai/models/organization_delete_params.rb +++ b/lib/hanzoai/models/organization_delete_params.rb @@ -13,13 +13,9 @@ class OrganizationDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :organization_ids, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @param organization_ids [Array] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(organization_ids:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organization_ids:, request_options: {}) + # @param organization_ids [Array] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index 628b38b5..323b56e1 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -85,43 +85,22 @@ class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel # # @return [Array] # attr_writer :teams - # @!parse - # # Returned by the /organization/info endpoint and /organization/list endpoint - # # - # # @param budget_id [String] - # # @param created_at [Time] - # # @param created_by [String] - # # @param models [Array] - # # @param updated_at [Time] - # # @param updated_by [String] - # # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, nil] - # # @param members [Array] - # # @param metadata [Object, nil] - # # @param organization_alias [String, nil] - # # @param organization_id [String, nil] - # # @param spend [Float] - # # @param teams [Array] - # # - # def initialize( - # budget_id:, - # created_at:, - # created_by:, - # models:, - # updated_at:, - # updated_by:, - # llm_budget_table: nil, - # members: nil, - # metadata: nil, - # organization_alias: nil, - # organization_id: nil, - # spend: nil, - # teams: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) + # Returned by the /organization/info endpoint and /organization/list endpoint + # + # @param budget_id [String] + # @param created_at [Time] + # @param created_by [String] + # @param models [Array] + # @param updated_at [Time] + # @param updated_by [String] + # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, nil] + # @param members [Array] + # @param metadata [Object, nil] + # @param organization_alias [String, nil] + # @param organization_id [String, nil] + # @param spend [Float] + # @param teams [Array] # @see Hanzoai::Models::OrganizationDeleteResponseItem#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -160,31 +139,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end class Member < Hanzoai::Internal::Type::BaseModel @@ -244,36 +208,19 @@ class Member < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationDeleteResponseItem::Member#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -312,31 +259,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end @@ -458,53 +390,26 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param team_id [String] - # # @param admins [Array] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param created_at [Time, nil] - # # @param llm_model_table [Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param members [Array] - # # @param members_with_roles [Array] - # # @param metadata [Object, nil] - # # @param model_id [Integer, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param team_alias [String, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # team_id:, - # admins: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # created_at: nil, - # llm_model_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # members: nil, - # members_with_roles: nil, - # metadata: nil, - # model_id: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # spend: nil, - # team_alias: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @param team_id [String] + # @param admins [Array] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param created_at [Time, nil] + # @param llm_model_table [Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param members [Array] + # @param members_with_roles [Array] + # @param metadata [Object, nil] + # @param model_id [Integer, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param team_alias [String, nil] + # @param tpm_limit [Integer, nil] # @see Hanzoai::Models::OrganizationDeleteResponseItem::Team#llm_model_table class LlmModelTable < Hanzoai::Internal::Type::BaseModel @@ -525,14 +430,10 @@ class LlmModelTable < Hanzoai::Internal::Type::BaseModel union: -> { Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases }, nil?: true - # @!parse - # # @param created_by [String] - # # @param updated_by [String] - # # @param model_aliases [Object, String, nil] - # # - # def initialize(created_by:, updated_by:, model_aliases: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_by:, updated_by:, model_aliases: nil) + # @param created_by [String] + # @param updated_by [String] + # @param model_aliases [Object, String, nil] # @see Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable#model_aliases module ModelAliases @@ -542,9 +443,8 @@ module ModelAliases variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/organization_list_params.rb b/lib/hanzoai/models/organization_list_params.rb index 05736a45..62b4fcac 100644 --- a/lib/hanzoai/models/organization_list_params.rb +++ b/lib/hanzoai/models/organization_list_params.rb @@ -8,12 +8,8 @@ class OrganizationListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index 3566dfb6..35c30c72 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -85,43 +85,22 @@ class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel # # @return [Array] # attr_writer :teams - # @!parse - # # Returned by the /organization/info endpoint and /organization/list endpoint - # # - # # @param budget_id [String] - # # @param created_at [Time] - # # @param created_by [String] - # # @param models [Array] - # # @param updated_at [Time] - # # @param updated_by [String] - # # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, nil] - # # @param members [Array] - # # @param metadata [Object, nil] - # # @param organization_alias [String, nil] - # # @param organization_id [String, nil] - # # @param spend [Float] - # # @param teams [Array] - # # - # def initialize( - # budget_id:, - # created_at:, - # created_by:, - # models:, - # updated_at:, - # updated_by:, - # llm_budget_table: nil, - # members: nil, - # metadata: nil, - # organization_alias: nil, - # organization_id: nil, - # spend: nil, - # teams: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) + # Returned by the /organization/info endpoint and /organization/list endpoint + # + # @param budget_id [String] + # @param created_at [Time] + # @param created_by [String] + # @param models [Array] + # @param updated_at [Time] + # @param updated_by [String] + # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, nil] + # @param members [Array] + # @param metadata [Object, nil] + # @param organization_alias [String, nil] + # @param organization_id [String, nil] + # @param spend [Float] + # @param teams [Array] # @see Hanzoai::Models::OrganizationListResponseItem#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -160,31 +139,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end class Member < Hanzoai::Internal::Type::BaseModel @@ -244,36 +208,19 @@ class Member < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationListResponseItem::Member#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -312,31 +259,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end @@ -458,53 +390,26 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param team_id [String] - # # @param admins [Array] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param created_at [Time, nil] - # # @param llm_model_table [Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param members [Array] - # # @param members_with_roles [Array] - # # @param metadata [Object, nil] - # # @param model_id [Integer, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param team_alias [String, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # team_id:, - # admins: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # created_at: nil, - # llm_model_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # members: nil, - # members_with_roles: nil, - # metadata: nil, - # model_id: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # spend: nil, - # team_alias: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @param team_id [String] + # @param admins [Array] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param created_at [Time, nil] + # @param llm_model_table [Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param members [Array] + # @param members_with_roles [Array] + # @param metadata [Object, nil] + # @param model_id [Integer, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param team_alias [String, nil] + # @param tpm_limit [Integer, nil] # @see Hanzoai::Models::OrganizationListResponseItem::Team#llm_model_table class LlmModelTable < Hanzoai::Internal::Type::BaseModel @@ -525,14 +430,10 @@ class LlmModelTable < Hanzoai::Internal::Type::BaseModel union: -> { Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases }, nil?: true - # @!parse - # # @param created_by [String] - # # @param updated_by [String] - # # @param model_aliases [Object, String, nil] - # # - # def initialize(created_by:, updated_by:, model_aliases: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_by:, updated_by:, model_aliases: nil) + # @param created_by [String] + # @param updated_by [String] + # @param model_aliases [Object, String, nil] # @see Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable#model_aliases module ModelAliases @@ -542,9 +443,8 @@ module ModelAliases variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/organization_update_member_params.rb b/lib/hanzoai/models/organization_update_member_params.rb index 357e67f0..da95398e 100644 --- a/lib/hanzoai/models/organization_update_member_params.rb +++ b/lib/hanzoai/models/organization_update_member_params.rb @@ -44,27 +44,13 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param organization_id [String] - # # @param max_budget_in_organization [Float, nil] - # # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # organization_id:, - # max_budget_in_organization: nil, - # role: nil, - # user_email: nil, - # user_id: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organization_id:, max_budget_in_organization: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) + # @param organization_id [String] + # @param max_budget_in_organization [Float, nil] + # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can # login, view all own keys, view all spend ORG_ADMIN: admin over a specific @@ -88,11 +74,8 @@ module Role TEAM = :team CUSTOMER = :customer - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/organization_update_member_response.rb b/lib/hanzoai/models/organization_update_member_response.rb index 006a672a..9faf5f47 100644 --- a/lib/hanzoai/models/organization_update_member_response.rb +++ b/lib/hanzoai/models/organization_update_member_response.rb @@ -60,36 +60,19 @@ class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationUpdateMemberResponse#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -128,31 +111,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end end diff --git a/lib/hanzoai/models/organization_update_params.rb b/lib/hanzoai/models/organization_update_params.rb index a8e48bc2..ff92ceb3 100644 --- a/lib/hanzoai/models/organization_update_params.rb +++ b/lib/hanzoai/models/organization_update_params.rb @@ -43,31 +43,15 @@ class OrganizationUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :updated_by, String, nil?: true - # @!parse - # # @param budget_id [String, nil] - # # @param metadata [Object, nil] - # # @param models [Array, nil] - # # @param organization_alias [String, nil] - # # @param organization_id [String, nil] - # # @param spend [Float, nil] - # # @param updated_by [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # budget_id: nil, - # metadata: nil, - # models: nil, - # organization_alias: nil, - # organization_id: nil, - # spend: nil, - # updated_by: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id: nil, metadata: nil, models: nil, organization_alias: nil, organization_id: nil, spend: nil, updated_by: nil, request_options: {}) + # @param budget_id [String, nil] + # @param metadata [Object, nil] + # @param models [Array, nil] + # @param organization_alias [String, nil] + # @param organization_id [String, nil] + # @param spend [Float, nil] + # @param updated_by [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index 85354320..a8acc43d 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -84,43 +84,22 @@ class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel # # @return [Array] # attr_writer :teams - # @!parse - # # Returned by the /organization/info endpoint and /organization/list endpoint - # # - # # @param budget_id [String] - # # @param created_at [Time] - # # @param created_by [String] - # # @param models [Array] - # # @param updated_at [Time] - # # @param updated_by [String] - # # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, nil] - # # @param members [Array] - # # @param metadata [Object, nil] - # # @param organization_alias [String, nil] - # # @param organization_id [String, nil] - # # @param spend [Float] - # # @param teams [Array] - # # - # def initialize( - # budget_id:, - # created_at:, - # created_by:, - # models:, - # updated_at:, - # updated_by:, - # llm_budget_table: nil, - # members: nil, - # metadata: nil, - # organization_alias: nil, - # organization_id: nil, - # spend: nil, - # teams: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) + # Returned by the /organization/info endpoint and /organization/list endpoint + # + # @param budget_id [String] + # @param created_at [Time] + # @param created_by [String] + # @param models [Array] + # @param updated_at [Time] + # @param updated_by [String] + # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, nil] + # @param members [Array] + # @param metadata [Object, nil] + # @param organization_alias [String, nil] + # @param organization_id [String, nil] + # @param spend [Float] + # @param teams [Array] # @see Hanzoai::Models::OrganizationUpdateResponse#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -159,31 +138,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end class Member < Hanzoai::Internal::Type::BaseModel @@ -243,36 +207,19 @@ class Member < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationUpdateResponse::Member#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -311,31 +258,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end @@ -457,53 +389,26 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param team_id [String] - # # @param admins [Array] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param created_at [Time, nil] - # # @param llm_model_table [Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param members [Array] - # # @param members_with_roles [Array] - # # @param metadata [Object, nil] - # # @param model_id [Integer, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param team_alias [String, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # team_id:, - # admins: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # created_at: nil, - # llm_model_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # members: nil, - # members_with_roles: nil, - # metadata: nil, - # model_id: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # spend: nil, - # team_alias: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @param team_id [String] + # @param admins [Array] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param created_at [Time, nil] + # @param llm_model_table [Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param members [Array] + # @param members_with_roles [Array] + # @param metadata [Object, nil] + # @param model_id [Integer, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param team_alias [String, nil] + # @param tpm_limit [Integer, nil] # @see Hanzoai::Models::OrganizationUpdateResponse::Team#llm_model_table class LlmModelTable < Hanzoai::Internal::Type::BaseModel @@ -524,14 +429,10 @@ class LlmModelTable < Hanzoai::Internal::Type::BaseModel union: -> { Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases }, nil?: true - # @!parse - # # @param created_by [String] - # # @param updated_by [String] - # # @param model_aliases [Object, String, nil] - # # - # def initialize(created_by:, updated_by:, model_aliases: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_by:, updated_by:, model_aliases: nil) + # @param created_by [String] + # @param updated_by [String] + # @param model_aliases [Object, String, nil] # @see Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable#model_aliases module ModelAliases @@ -541,9 +442,8 @@ module ModelAliases variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/provider_list_budgets_params.rb b/lib/hanzoai/models/provider_list_budgets_params.rb index 8cad874b..314e8c4c 100644 --- a/lib/hanzoai/models/provider_list_budgets_params.rb +++ b/lib/hanzoai/models/provider_list_budgets_params.rb @@ -8,12 +8,8 @@ class ProviderListBudgetsParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/provider_list_budgets_response.rb b/lib/hanzoai/models/provider_list_budgets_response.rb index 9d35ab50..17a7ac95 100644 --- a/lib/hanzoai/models/provider_list_budgets_response.rb +++ b/lib/hanzoai/models/provider_list_budgets_response.rb @@ -14,15 +14,11 @@ class ProviderListBudgetsResponse < Hanzoai::Internal::Type::BaseModel # # @return [Hash{Symbol=>Hanzoai::Models::ProviderListBudgetsResponse::Provider}] # attr_writer :providers - # @!parse - # # Complete provider budget configuration and status. Maps provider names to their - # # budget configs. - # # - # # @param providers [Hash{Symbol=>Hanzoai::Models::ProviderListBudgetsResponse::Provider}] - # # - # def initialize(providers: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(providers: nil) + # Complete provider budget configuration and status. Maps provider names to their + # budget configs. + # + # @param providers [Hash{Symbol=>Hanzoai::Models::ProviderListBudgetsResponse::Provider}] class Provider < Hanzoai::Internal::Type::BaseModel # @!attribute budget_limit @@ -45,17 +41,13 @@ class Provider < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :spend, Float, nil?: true - # @!parse - # # Configuration for a single provider's budget settings - # # - # # @param budget_limit [Float, nil] - # # @param time_period [String, nil] - # # @param budget_reset_at [String, nil] - # # @param spend [Float, nil] - # # - # def initialize(budget_limit:, time_period:, budget_reset_at: nil, spend: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_limit:, time_period:, budget_reset_at: nil, spend: nil) + # Configuration for a single provider's budget settings + # + # @param budget_limit [Float, nil] + # @param time_period [String, nil] + # @param budget_reset_at [String, nil] + # @param spend [Float, nil] end end end diff --git a/lib/hanzoai/models/rerank_create_params.rb b/lib/hanzoai/models/rerank_create_params.rb index b67e009d..3f4957c8 100644 --- a/lib/hanzoai/models/rerank_create_params.rb +++ b/lib/hanzoai/models/rerank_create_params.rb @@ -8,12 +8,8 @@ class RerankCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/rerank_create_v1_params.rb b/lib/hanzoai/models/rerank_create_v1_params.rb index b47169d2..ae0b2012 100644 --- a/lib/hanzoai/models/rerank_create_v1_params.rb +++ b/lib/hanzoai/models/rerank_create_v1_params.rb @@ -8,12 +8,8 @@ class RerankCreateV1Params < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/rerank_create_v2_params.rb b/lib/hanzoai/models/rerank_create_v2_params.rb index eeee8602..b12af843 100644 --- a/lib/hanzoai/models/rerank_create_v2_params.rb +++ b/lib/hanzoai/models/rerank_create_v2_params.rb @@ -8,12 +8,8 @@ class RerankCreateV2Params < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/response_create_params.rb b/lib/hanzoai/models/response_create_params.rb index c7175926..02773912 100644 --- a/lib/hanzoai/models/response_create_params.rb +++ b/lib/hanzoai/models/response_create_params.rb @@ -8,12 +8,8 @@ class ResponseCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/response_delete_params.rb b/lib/hanzoai/models/response_delete_params.rb index 28cb482e..56a75e8f 100644 --- a/lib/hanzoai/models/response_delete_params.rb +++ b/lib/hanzoai/models/response_delete_params.rb @@ -8,12 +8,8 @@ class ResponseDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/response_retrieve_params.rb b/lib/hanzoai/models/response_retrieve_params.rb index 1213d340..b0265ab4 100644 --- a/lib/hanzoai/models/response_retrieve_params.rb +++ b/lib/hanzoai/models/response_retrieve_params.rb @@ -8,12 +8,8 @@ class ResponseRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/responses/input_item_list_params.rb b/lib/hanzoai/models/responses/input_item_list_params.rb index 1e5a65e5..8fa8aded 100644 --- a/lib/hanzoai/models/responses/input_item_list_params.rb +++ b/lib/hanzoai/models/responses/input_item_list_params.rb @@ -9,12 +9,8 @@ class InputItemListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/route_list_params.rb b/lib/hanzoai/models/route_list_params.rb index 56328954..e48bcb2a 100644 --- a/lib/hanzoai/models/route_list_params.rb +++ b/lib/hanzoai/models/route_list_params.rb @@ -8,12 +8,8 @@ class RouteListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/setting_retrieve_params.rb b/lib/hanzoai/models/setting_retrieve_params.rb index 869dbb5c..54ad7ec0 100644 --- a/lib/hanzoai/models/setting_retrieve_params.rb +++ b/lib/hanzoai/models/setting_retrieve_params.rb @@ -8,12 +8,8 @@ class SettingRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/spend_calculate_spend_params.rb b/lib/hanzoai/models/spend_calculate_spend_params.rb index e1476d45..c2f03820 100644 --- a/lib/hanzoai/models/spend_calculate_spend_params.rb +++ b/lib/hanzoai/models/spend_calculate_spend_params.rb @@ -23,15 +23,11 @@ class SpendCalculateSpendParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model, String, nil?: true - # @!parse - # # @param completion_response [Object, nil] - # # @param messages [Array, nil] - # # @param model [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(completion_response: nil, messages: nil, model: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(completion_response: nil, messages: nil, model: nil, request_options: {}) + # @param completion_response [Object, nil] + # @param messages [Array, nil] + # @param model [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/spend_list_logs_params.rb b/lib/hanzoai/models/spend_list_logs_params.rb index 95a52e8f..2b8f7be6 100644 --- a/lib/hanzoai/models/spend_list_logs_params.rb +++ b/lib/hanzoai/models/spend_list_logs_params.rb @@ -39,17 +39,13 @@ class SpendListLogsParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param api_key [String, nil] - # # @param end_date [String, nil] - # # @param request_id [String, nil] - # # @param start_date [String, nil] - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(api_key: nil, end_date: nil, request_id: nil, start_date: nil, user_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_key: nil, end_date: nil, request_id: nil, start_date: nil, user_id: nil, request_options: {}) + # @param api_key [String, nil] + # @param end_date [String, nil] + # @param request_id [String, nil] + # @param start_date [String, nil] + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/spend_list_logs_response.rb b/lib/hanzoai/models/spend_list_logs_response.rb index e1a673c3..0a325cf8 100644 --- a/lib/hanzoai/models/spend_list_logs_response.rb +++ b/lib/hanzoai/models/spend_list_logs_response.rb @@ -112,53 +112,26 @@ class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user, String, nil?: true - # @!parse - # # @param api_key [String] - # # @param call_type [String] - # # @param end_time [String, Time, nil] - # # @param messages [String, Array, Object, nil] - # # @param request_id [String] - # # @param response [String, Array, Object, nil] - # # @param start_time [String, Time, nil] - # # @param api_base [String, nil] - # # @param cache_hit [String, nil] - # # @param cache_key [String, nil] - # # @param completion_tokens [Integer, nil] - # # @param metadata [Object] - # # @param model [String, nil] - # # @param prompt_tokens [Integer, nil] - # # @param request_tags [Object] - # # @param requester_ip_address [String, nil] - # # @param spend [Float, nil] - # # @param total_tokens [Integer, nil] - # # @param user [String, nil] - # # - # def initialize( - # api_key:, - # call_type:, - # end_time:, - # messages:, - # request_id:, - # response:, - # start_time:, - # api_base: nil, - # cache_hit: nil, - # cache_key: nil, - # completion_tokens: nil, - # metadata: nil, - # model: nil, - # prompt_tokens: nil, - # request_tags: nil, - # requester_ip_address: nil, - # spend: nil, - # total_tokens: nil, - # user: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_key:, call_type:, end_time:, messages:, request_id:, response:, start_time:, api_base: nil, cache_hit: nil, cache_key: nil, completion_tokens: nil, metadata: nil, model: nil, prompt_tokens: nil, request_tags: nil, requester_ip_address: nil, spend: nil, total_tokens: nil, user: nil) + # @param api_key [String] + # @param call_type [String] + # @param end_time [String, Time, nil] + # @param messages [String, Array, Object, nil] + # @param request_id [String] + # @param response [String, Array, Object, nil] + # @param start_time [String, Time, nil] + # @param api_base [String, nil] + # @param cache_hit [String, nil] + # @param cache_key [String, nil] + # @param completion_tokens [Integer, nil] + # @param metadata [Object] + # @param model [String, nil] + # @param prompt_tokens [Integer, nil] + # @param request_tags [Object] + # @param requester_ip_address [String, nil] + # @param spend [Float, nil] + # @param total_tokens [Integer, nil] + # @param user [String, nil] # @see Hanzoai::Models::SpendListLogsResponseItem#end_time module EndTime @@ -168,9 +141,8 @@ module EndTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end # @see Hanzoai::Models::SpendListLogsResponseItem#messages @@ -183,9 +155,8 @@ module Messages variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -200,9 +171,8 @@ module Response variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -215,9 +185,8 @@ module StartTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end end diff --git a/lib/hanzoai/models/spend_list_tags_params.rb b/lib/hanzoai/models/spend_list_tags_params.rb index 50dd3a51..033bbd66 100644 --- a/lib/hanzoai/models/spend_list_tags_params.rb +++ b/lib/hanzoai/models/spend_list_tags_params.rb @@ -20,14 +20,10 @@ class SpendListTagsParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :start_date, String, nil?: true - # @!parse - # # @param end_date [String, nil] - # # @param start_date [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(end_date: nil, start_date: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(end_date: nil, start_date: nil, request_options: {}) + # @param end_date [String, nil] + # @param start_date [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/spend_list_tags_response.rb b/lib/hanzoai/models/spend_list_tags_response.rb index 842ba578..e2be922f 100644 --- a/lib/hanzoai/models/spend_list_tags_response.rb +++ b/lib/hanzoai/models/spend_list_tags_response.rb @@ -112,53 +112,26 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user, String, nil?: true - # @!parse - # # @param api_key [String] - # # @param call_type [String] - # # @param end_time [String, Time, nil] - # # @param messages [String, Array, Object, nil] - # # @param request_id [String] - # # @param response [String, Array, Object, nil] - # # @param start_time [String, Time, nil] - # # @param api_base [String, nil] - # # @param cache_hit [String, nil] - # # @param cache_key [String, nil] - # # @param completion_tokens [Integer, nil] - # # @param metadata [Object] - # # @param model [String, nil] - # # @param prompt_tokens [Integer, nil] - # # @param request_tags [Object] - # # @param requester_ip_address [String, nil] - # # @param spend [Float, nil] - # # @param total_tokens [Integer, nil] - # # @param user [String, nil] - # # - # def initialize( - # api_key:, - # call_type:, - # end_time:, - # messages:, - # request_id:, - # response:, - # start_time:, - # api_base: nil, - # cache_hit: nil, - # cache_key: nil, - # completion_tokens: nil, - # metadata: nil, - # model: nil, - # prompt_tokens: nil, - # request_tags: nil, - # requester_ip_address: nil, - # spend: nil, - # total_tokens: nil, - # user: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(api_key:, call_type:, end_time:, messages:, request_id:, response:, start_time:, api_base: nil, cache_hit: nil, cache_key: nil, completion_tokens: nil, metadata: nil, model: nil, prompt_tokens: nil, request_tags: nil, requester_ip_address: nil, spend: nil, total_tokens: nil, user: nil) + # @param api_key [String] + # @param call_type [String] + # @param end_time [String, Time, nil] + # @param messages [String, Array, Object, nil] + # @param request_id [String] + # @param response [String, Array, Object, nil] + # @param start_time [String, Time, nil] + # @param api_base [String, nil] + # @param cache_hit [String, nil] + # @param cache_key [String, nil] + # @param completion_tokens [Integer, nil] + # @param metadata [Object] + # @param model [String, nil] + # @param prompt_tokens [Integer, nil] + # @param request_tags [Object] + # @param requester_ip_address [String, nil] + # @param spend [Float, nil] + # @param total_tokens [Integer, nil] + # @param user [String, nil] # @see Hanzoai::Models::SpendListTagsResponseItem#end_time module EndTime @@ -168,9 +141,8 @@ module EndTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end # @see Hanzoai::Models::SpendListTagsResponseItem#messages @@ -183,9 +155,8 @@ module Messages variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -200,9 +171,8 @@ module Response variant Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Array(String, Array, Object)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Array, Object)] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -215,9 +185,8 @@ module StartTime variant Time - # @!parse - # # @return [Array(String, Time)] - # def self.variants; end + # @!method self.variants + # @return [Array(String, Time)] end end diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index 52f6847e..9861f4cb 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -35,16 +35,12 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param callback_name [String] - # # @param callback_vars [Hash{Symbol=>String}] - # # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}) + # @param callback_name [String] + # @param callback_vars [Hash{Symbol=>String}] + # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CallbackType extend Hanzoai::Internal::Type::Enum @@ -53,11 +49,8 @@ module CallbackType FAILURE = :failure SUCCESS_AND_FAILURE = :success_and_failure - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/team/callback_retrieve_params.rb b/lib/hanzoai/models/team/callback_retrieve_params.rb index c2224a31..aa0bfa1d 100644 --- a/lib/hanzoai/models/team/callback_retrieve_params.rb +++ b/lib/hanzoai/models/team/callback_retrieve_params.rb @@ -9,12 +9,8 @@ class CallbackRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team/model_add_params.rb b/lib/hanzoai/models/team/model_add_params.rb index f688c945..a950173c 100644 --- a/lib/hanzoai/models/team/model_add_params.rb +++ b/lib/hanzoai/models/team/model_add_params.rb @@ -19,14 +19,10 @@ class ModelAddParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!parse - # # @param models [Array] - # # @param team_id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(models:, team_id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(models:, team_id:, request_options: {}) + # @param models [Array] + # @param team_id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team/model_remove_params.rb b/lib/hanzoai/models/team/model_remove_params.rb index 754645ea..874a3032 100644 --- a/lib/hanzoai/models/team/model_remove_params.rb +++ b/lib/hanzoai/models/team/model_remove_params.rb @@ -19,14 +19,10 @@ class ModelRemoveParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!parse - # # @param models [Array] - # # @param team_id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(models:, team_id:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(models:, team_id:, request_options: {}) + # @param models [Array] + # @param team_id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index c9b4895c..03a2080f 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -23,15 +23,11 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :max_budget_in_team, Float, nil?: true - # @!parse - # # @param member [Array, Hanzoai::Models::Member] - # # @param team_id [String] - # # @param max_budget_in_team [Float, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(member:, team_id:, max_budget_in_team: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(member:, team_id:, max_budget_in_team: nil, request_options: {}) + # @param member [Array, Hanzoai::Models::Member] + # @param team_id [String] + # @param max_budget_in_team [Float, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module Member extend Hanzoai::Internal::Type::Union @@ -40,9 +36,8 @@ module Member variant -> { Hanzoai::Models::Member } - # @!parse - # # @return [Array(Array, Hanzoai::Models::Member)] - # def self.variants; end + # @!method self.variants + # @return [Array(Array, Hanzoai::Models::Member)] MemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::Member }] end diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index ffa257e4..932ab8e0 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -131,57 +131,28 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param team_id [String] - # # @param updated_team_memberships [Array] - # # @param updated_users [Array] - # # @param admins [Array] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param created_at [Time, nil] - # # @param llm_model_table [Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param members [Array] - # # @param members_with_roles [Array] - # # @param metadata [Object, nil] - # # @param model_id [Integer, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param team_alias [String, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # team_id:, - # updated_team_memberships:, - # updated_users:, - # admins: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # created_at: nil, - # llm_model_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # members: nil, - # members_with_roles: nil, - # metadata: nil, - # model_id: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # spend: nil, - # team_alias: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, updated_team_memberships:, updated_users:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @param team_id [String] + # @param updated_team_memberships [Array] + # @param updated_users [Array] + # @param admins [Array] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param created_at [Time, nil] + # @param llm_model_table [Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param members [Array] + # @param members_with_roles [Array] + # @param metadata [Object, nil] + # @param model_id [Integer, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param team_alias [String, nil] + # @param tpm_limit [Integer, nil] class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel # @!attribute budget_id @@ -207,15 +178,11 @@ class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel # @return [String] required :user_id, String - # @!parse - # # @param budget_id [String] - # # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, nil] - # # @param team_id [String] - # # @param user_id [String] - # # - # def initialize(budget_id:, llm_budget_table:, team_id:, user_id:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_id:, llm_budget_table:, team_id:, user_id:) + # @param budget_id [String] + # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, nil] + # @param team_id [String] + # @param user_id [String] # @see Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -254,31 +221,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end @@ -377,47 +329,23 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # @param user_id [String] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param max_budget [Float, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_spend [Object, nil] - # # @param models [Array] - # # @param organization_memberships [Array, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float] - # # @param sso_user_id [String, nil] - # # @param teams [Array] - # # @param tpm_limit [Integer, nil] - # # @param user_email [String, nil] - # # @param user_role [String, nil] - # # - # def initialize( - # user_id:, - # budget_duration: nil, - # budget_reset_at: nil, - # max_budget: nil, - # metadata: nil, - # model_max_budget: nil, - # model_spend: nil, - # models: nil, - # organization_memberships: nil, - # rpm_limit: nil, - # spend: nil, - # sso_user_id: nil, - # teams: nil, - # tpm_limit: nil, - # user_email: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, user_email: nil, user_role: nil) + # @param user_id [String] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param max_budget [Float, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_spend [Object, nil] + # @param models [Array] + # @param organization_memberships [Array, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float] + # @param sso_user_id [String, nil] + # @param teams [Array] + # @param tpm_limit [Integer, nil] + # @param user_email [String, nil] + # @param user_role [String, nil] class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # @!attribute created_at @@ -476,36 +404,19 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!parse - # # This is the table that track what organizations a user belongs to and users - # # spend within the organization - # # - # # @param created_at [Time] - # # @param organization_id [String] - # # @param updated_at [Time] - # # @param user_id [String] - # # @param budget_id [String, nil] - # # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] - # # @param spend [Float] - # # @param user [Object] - # # @param user_role [String, nil] - # # - # def initialize( - # created_at:, - # organization_id:, - # updated_at:, - # user_id:, - # budget_id: nil, - # llm_budget_table: nil, - # spend: nil, - # user: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # @param organization_id [String] + # @param updated_at [Time] + # @param user_id [String] + # @param budget_id [String, nil] + # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] + # @param spend [Float] + # @param user [Object] + # @param user_role [String, nil] # @see Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership#llm_budget_table class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel @@ -544,31 +455,16 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # Represents user-controllable params for a LLM_BudgetTable record - # # - # # @param budget_duration [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param model_max_budget [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param soft_budget [Float, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # budget_duration: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # model_max_budget: nil, - # rpm_limit: nil, - # soft_budget: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Object, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] end end end @@ -592,14 +488,10 @@ class LlmModelTable < Hanzoai::Internal::Type::BaseModel union: -> { Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases }, nil?: true - # @!parse - # # @param created_by [String] - # # @param updated_by [String] - # # @param model_aliases [Object, String, nil] - # # - # def initialize(created_by:, updated_by:, model_aliases: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_by:, updated_by:, model_aliases: nil) + # @param created_by [String] + # @param updated_by [String] + # @param model_aliases [Object, String, nil] # @see Hanzoai::Models::TeamAddMemberResponse::LlmModelTable#model_aliases module ModelAliases @@ -609,9 +501,8 @@ module ModelAliases variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/team_block_params.rb b/lib/hanzoai/models/team_block_params.rb index 4f04974b..01c1801a 100644 --- a/lib/hanzoai/models/team_block_params.rb +++ b/lib/hanzoai/models/team_block_params.rb @@ -8,12 +8,8 @@ class TeamBlockParams < Hanzoai::Models::BlockTeamRequest # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index 263ebe6b..d10f3fcc 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -119,51 +119,25 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param admins [Array] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param guardrails [Array, nil] - # # @param max_budget [Float, nil] - # # @param members [Array] - # # @param members_with_roles [Array] - # # @param metadata [Object, nil] - # # @param model_aliases [Object, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param tags [Array, nil] - # # @param team_alias [String, nil] - # # @param team_id [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # admins: nil, - # blocked: nil, - # budget_duration: nil, - # guardrails: nil, - # max_budget: nil, - # members: nil, - # members_with_roles: nil, - # metadata: nil, - # model_aliases: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # tags: nil, - # team_alias: nil, - # team_id: nil, - # tpm_limit: nil, - # llm_changed_by: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(admins: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, team_id: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # @param admins [Array] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param guardrails [Array, nil] + # @param max_budget [Float, nil] + # @param members [Array] + # @param members_with_roles [Array] + # @param metadata [Object, nil] + # @param model_aliases [Object, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param tags [Array, nil] + # @param team_alias [String, nil] + # @param team_id [String, nil] + # @param tpm_limit [Integer, nil] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index b20df46c..f89764bc 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -119,53 +119,26 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!parse - # # @param team_id [String] - # # @param admins [Array] - # # @param blocked [Boolean] - # # @param budget_duration [String, nil] - # # @param budget_reset_at [Time, nil] - # # @param created_at [Time, nil] - # # @param llm_model_table [Hanzoai::Models::TeamCreateResponse::LlmModelTable, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param members [Array] - # # @param members_with_roles [Array] - # # @param metadata [Object, nil] - # # @param model_id [Integer, nil] - # # @param models [Array] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param team_alias [String, nil] - # # @param tpm_limit [Integer, nil] - # # - # def initialize( - # team_id:, - # admins: nil, - # blocked: nil, - # budget_duration: nil, - # budget_reset_at: nil, - # created_at: nil, - # llm_model_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # members: nil, - # members_with_roles: nil, - # metadata: nil, - # model_id: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # spend: nil, - # team_alias: nil, - # tpm_limit: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @param team_id [String] + # @param admins [Array] + # @param blocked [Boolean] + # @param budget_duration [String, nil] + # @param budget_reset_at [Time, nil] + # @param created_at [Time, nil] + # @param llm_model_table [Hanzoai::Models::TeamCreateResponse::LlmModelTable, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param members [Array] + # @param members_with_roles [Array] + # @param metadata [Object, nil] + # @param model_id [Integer, nil] + # @param models [Array] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param team_alias [String, nil] + # @param tpm_limit [Integer, nil] # @see Hanzoai::Models::TeamCreateResponse#llm_model_table class LlmModelTable < Hanzoai::Internal::Type::BaseModel @@ -186,14 +159,10 @@ class LlmModelTable < Hanzoai::Internal::Type::BaseModel union: -> { Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases }, nil?: true - # @!parse - # # @param created_by [String] - # # @param updated_by [String] - # # @param model_aliases [Object, String, nil] - # # - # def initialize(created_by:, updated_by:, model_aliases: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(created_by:, updated_by:, model_aliases: nil) + # @param created_by [String] + # @param updated_by [String] + # @param model_aliases [Object, String, nil] # @see Hanzoai::Models::TeamCreateResponse::LlmModelTable#model_aliases module ModelAliases @@ -203,9 +172,8 @@ module ModelAliases variant String - # @!parse - # # @return [Array(Object, String)] - # def self.variants; end + # @!method self.variants + # @return [Array(Object, String)] end end end diff --git a/lib/hanzoai/models/team_delete_params.rb b/lib/hanzoai/models/team_delete_params.rb index 20b8d1c2..78fa7835 100644 --- a/lib/hanzoai/models/team_delete_params.rb +++ b/lib/hanzoai/models/team_delete_params.rb @@ -24,14 +24,10 @@ class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param team_ids [Array] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(team_ids:, llm_changed_by: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_ids:, llm_changed_by: nil, request_options: {}) + # @param team_ids [Array] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_disable_logging_params.rb b/lib/hanzoai/models/team_disable_logging_params.rb index b5cc227c..b942f9a3 100644 --- a/lib/hanzoai/models/team_disable_logging_params.rb +++ b/lib/hanzoai/models/team_disable_logging_params.rb @@ -8,12 +8,8 @@ class TeamDisableLoggingParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_list_available_params.rb b/lib/hanzoai/models/team_list_available_params.rb index 7e894191..91802105 100644 --- a/lib/hanzoai/models/team_list_available_params.rb +++ b/lib/hanzoai/models/team_list_available_params.rb @@ -17,13 +17,9 @@ class TeamListAvailableParams < Hanzoai::Internal::Type::BaseModel # # @return [Object] # attr_writer :response_model - # @!parse - # # @param response_model [Object] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(response_model: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(response_model: nil, request_options: {}) + # @param response_model [Object] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_list_params.rb b/lib/hanzoai/models/team_list_params.rb index d3c79377..eb456acf 100644 --- a/lib/hanzoai/models/team_list_params.rb +++ b/lib/hanzoai/models/team_list_params.rb @@ -19,14 +19,10 @@ class TeamListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param organization_id [String, nil] - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(organization_id: nil, user_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(organization_id: nil, user_id: nil, request_options: {}) + # @param organization_id [String, nil] + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_remove_member_params.rb b/lib/hanzoai/models/team_remove_member_params.rb index 2da1faea..217d9a60 100644 --- a/lib/hanzoai/models/team_remove_member_params.rb +++ b/lib/hanzoai/models/team_remove_member_params.rb @@ -23,15 +23,11 @@ class TeamRemoveMemberParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param team_id [String] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(team_id:, user_email: nil, user_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, user_email: nil, user_id: nil, request_options: {}) + # @param team_id [String] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_retrieve_info_params.rb b/lib/hanzoai/models/team_retrieve_info_params.rb index 08fd7ad9..0041a777 100644 --- a/lib/hanzoai/models/team_retrieve_info_params.rb +++ b/lib/hanzoai/models/team_retrieve_info_params.rb @@ -18,13 +18,9 @@ class TeamRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :team_id - # @!parse - # # @param team_id [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(team_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id: nil, request_options: {}) + # @param team_id [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_unblock_params.rb b/lib/hanzoai/models/team_unblock_params.rb index d9a0170d..2ff02728 100644 --- a/lib/hanzoai/models/team_unblock_params.rb +++ b/lib/hanzoai/models/team_unblock_params.rb @@ -8,12 +8,8 @@ class TeamUnblockParams < Hanzoai::Models::BlockTeamRequest # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/team_update_member_params.rb b/lib/hanzoai/models/team_update_member_params.rb index e2efbeee..c3326c1e 100644 --- a/lib/hanzoai/models/team_update_member_params.rb +++ b/lib/hanzoai/models/team_update_member_params.rb @@ -33,17 +33,13 @@ class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param team_id [String] - # # @param max_budget_in_team [Float, nil] - # # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(team_id:, max_budget_in_team: nil, role: nil, user_email: nil, user_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, max_budget_in_team: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) + # @param team_id [String] + # @param max_budget_in_team [Float, nil] + # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module Role extend Hanzoai::Internal::Type::Enum @@ -51,11 +47,8 @@ module Role ADMIN = :admin USER = :user - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/team_update_member_response.rb b/lib/hanzoai/models/team_update_member_response.rb index 044814ba..65fc8d71 100644 --- a/lib/hanzoai/models/team_update_member_response.rb +++ b/lib/hanzoai/models/team_update_member_response.rb @@ -24,15 +24,11 @@ class TeamUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_email, String, nil?: true - # @!parse - # # @param team_id [String] - # # @param user_id [String] - # # @param max_budget_in_team [Float, nil] - # # @param user_email [String, nil] - # # - # def initialize(team_id:, user_id:, max_budget_in_team: nil, user_email: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, user_id:, max_budget_in_team: nil, user_email: nil) + # @param team_id [String] + # @param user_id [String] + # @param max_budget_in_team [Float, nil] + # @param user_email [String, nil] end end end diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index fbd2211d..e1bbe4f2 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -84,45 +84,22 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param team_id [String] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param guardrails [Array, nil] - # # @param max_budget [Float, nil] - # # @param metadata [Object, nil] - # # @param model_aliases [Object, nil] - # # @param models [Array, nil] - # # @param organization_id [String, nil] - # # @param rpm_limit [Integer, nil] - # # @param tags [Array, nil] - # # @param team_alias [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # team_id:, - # blocked: nil, - # budget_duration: nil, - # guardrails: nil, - # max_budget: nil, - # metadata: nil, - # model_aliases: nil, - # models: nil, - # organization_id: nil, - # rpm_limit: nil, - # tags: nil, - # team_alias: nil, - # tpm_limit: nil, - # llm_changed_by: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(team_id:, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # @param team_id [String] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param guardrails [Array, nil] + # @param max_budget [Float, nil] + # @param metadata [Object, nil] + # @param model_aliases [Object, nil] + # @param models [Array, nil] + # @param organization_id [String, nil] + # @param rpm_limit [Integer, nil] + # @param tags [Array, nil] + # @param team_alias [String, nil] + # @param tpm_limit [Integer, nil] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/test_ping_params.rb b/lib/hanzoai/models/test_ping_params.rb index b58d7a7a..dfbd3f48 100644 --- a/lib/hanzoai/models/test_ping_params.rb +++ b/lib/hanzoai/models/test_ping_params.rb @@ -8,12 +8,8 @@ class TestPingParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/thread_create_params.rb b/lib/hanzoai/models/thread_create_params.rb index ac726c7f..8b27c9af 100644 --- a/lib/hanzoai/models/thread_create_params.rb +++ b/lib/hanzoai/models/thread_create_params.rb @@ -8,12 +8,8 @@ class ThreadCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/thread_retrieve_params.rb b/lib/hanzoai/models/thread_retrieve_params.rb index db22969c..8862922f 100644 --- a/lib/hanzoai/models/thread_retrieve_params.rb +++ b/lib/hanzoai/models/thread_retrieve_params.rb @@ -8,12 +8,8 @@ class ThreadRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/threads/message_create_params.rb b/lib/hanzoai/models/threads/message_create_params.rb index 0a58a0ea..eb44de01 100644 --- a/lib/hanzoai/models/threads/message_create_params.rb +++ b/lib/hanzoai/models/threads/message_create_params.rb @@ -9,12 +9,8 @@ class MessageCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/threads/message_list_params.rb b/lib/hanzoai/models/threads/message_list_params.rb index 0441df04..64dcb05b 100644 --- a/lib/hanzoai/models/threads/message_list_params.rb +++ b/lib/hanzoai/models/threads/message_list_params.rb @@ -9,12 +9,8 @@ class MessageListParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/threads/run_create_params.rb b/lib/hanzoai/models/threads/run_create_params.rb index 19e7d64f..9e4289ac 100644 --- a/lib/hanzoai/models/threads/run_create_params.rb +++ b/lib/hanzoai/models/threads/run_create_params.rb @@ -9,12 +9,8 @@ class RunCreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/user_create_params.rb b/lib/hanzoai/models/user_create_params.rb index e06fa18e..36940e17 100644 --- a/lib/hanzoai/models/user_create_params.rb +++ b/lib/hanzoai/models/user_create_params.rb @@ -149,71 +149,35 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] optional :user_role, enum: -> { Hanzoai::Models::UserCreateParams::UserRole }, nil?: true - # @!parse - # # @param aliases [Object, nil] - # # @param allowed_cache_controls [Array, nil] - # # @param auto_create_key [Boolean] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param config [Object, nil] - # # @param duration [String, nil] - # # @param guardrails [Array, nil] - # # @param key_alias [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_rpm_limit [Object, nil] - # # @param model_tpm_limit [Object, nil] - # # @param models [Array, nil] - # # @param permissions [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param send_invite_email [Boolean, nil] - # # @param spend [Float, nil] - # # @param team_id [String, nil] - # # @param teams [Array, nil] - # # @param tpm_limit [Integer, nil] - # # @param user_alias [String, nil] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # aliases: nil, - # allowed_cache_controls: nil, - # auto_create_key: nil, - # blocked: nil, - # budget_duration: nil, - # config: nil, - # duration: nil, - # guardrails: nil, - # key_alias: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_rpm_limit: nil, - # model_tpm_limit: nil, - # models: nil, - # permissions: nil, - # rpm_limit: nil, - # send_invite_email: nil, - # spend: nil, - # team_id: nil, - # teams: nil, - # tpm_limit: nil, - # user_alias: nil, - # user_email: nil, - # user_id: nil, - # user_role: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) + # @param aliases [Object, nil] + # @param allowed_cache_controls [Array, nil] + # @param auto_create_key [Boolean] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param config [Object, nil] + # @param duration [String, nil] + # @param guardrails [Array, nil] + # @param key_alias [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_rpm_limit [Object, nil] + # @param model_tpm_limit [Object, nil] + # @param models [Array, nil] + # @param permissions [Object, nil] + # @param rpm_limit [Integer, nil] + # @param send_invite_email [Boolean, nil] + # @param spend [Float, nil] + # @param team_id [String, nil] + # @param teams [Array, nil] + # @param tpm_limit [Integer, nil] + # @param user_alias [String, nil] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module UserRole extend Hanzoai::Internal::Type::Enum @@ -223,11 +187,8 @@ module UserRole INTERNAL_USER = :internal_user INTERNAL_USER_VIEWER = :internal_user_viewer - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/user_create_response.rb b/lib/hanzoai/models/user_create_response.rb index 493e3f4e..68848dcf 100644 --- a/lib/hanzoai/models/user_create_response.rb +++ b/lib/hanzoai/models/user_create_response.rb @@ -190,87 +190,43 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::UserCreateResponse::UserRole, nil] optional :user_role, enum: -> { Hanzoai::Models::UserCreateResponse::UserRole }, nil?: true - # @!parse - # # @param expires [Time, nil] - # # @param key [String] - # # @param token [String, nil] - # # @param aliases [Object, nil] - # # @param allowed_cache_controls [Array, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param budget_id [String, nil] - # # @param config [Object, nil] - # # @param created_by [String, nil] - # # @param duration [String, nil] - # # @param enforced_params [Array, nil] - # # @param guardrails [Array, nil] - # # @param key_alias [String, nil] - # # @param key_name [String, nil] - # # @param llm_budget_table [Object] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_rpm_limit [Object, nil] - # # @param model_tpm_limit [Object, nil] - # # @param models [Array, nil] - # # @param permissions [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param tags [Array, nil] - # # @param team_id [String, nil] - # # @param teams [Array, nil] - # # @param token_id [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param updated_by [String, nil] - # # @param user_alias [String, nil] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param user_role [Symbol, Hanzoai::Models::UserCreateResponse::UserRole, nil] - # # - # def initialize( - # expires:, - # key:, - # token: nil, - # aliases: nil, - # allowed_cache_controls: nil, - # blocked: nil, - # budget_duration: nil, - # budget_id: nil, - # config: nil, - # created_by: nil, - # duration: nil, - # enforced_params: nil, - # guardrails: nil, - # key_alias: nil, - # key_name: nil, - # llm_budget_table: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_rpm_limit: nil, - # model_tpm_limit: nil, - # models: nil, - # permissions: nil, - # rpm_limit: nil, - # spend: nil, - # tags: nil, - # team_id: nil, - # teams: nil, - # token_id: nil, - # tpm_limit: nil, - # updated_by: nil, - # user_alias: nil, - # user_email: nil, - # user_id: nil, - # user_role: nil, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(expires:, key:, token: nil, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, created_by: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, key_name: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, teams: nil, token_id: nil, tpm_limit: nil, updated_by: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil) + # @param expires [Time, nil] + # @param key [String] + # @param token [String, nil] + # @param aliases [Object, nil] + # @param allowed_cache_controls [Array, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param config [Object, nil] + # @param created_by [String, nil] + # @param duration [String, nil] + # @param enforced_params [Array, nil] + # @param guardrails [Array, nil] + # @param key_alias [String, nil] + # @param key_name [String, nil] + # @param llm_budget_table [Object] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_rpm_limit [Object, nil] + # @param model_tpm_limit [Object, nil] + # @param models [Array, nil] + # @param permissions [Object, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param tags [Array, nil] + # @param team_id [String, nil] + # @param teams [Array, nil] + # @param token_id [String, nil] + # @param tpm_limit [Integer, nil] + # @param updated_by [String, nil] + # @param user_alias [String, nil] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param user_role [Symbol, Hanzoai::Models::UserCreateResponse::UserRole, nil] # @see Hanzoai::Models::UserCreateResponse#user_role module UserRole @@ -281,11 +237,8 @@ module UserRole INTERNAL_USER = :internal_user INTERNAL_USER_VIEWER = :internal_user_viewer - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/user_delete_params.rb b/lib/hanzoai/models/user_delete_params.rb index 641bf1c9..79f2fea1 100644 --- a/lib/hanzoai/models/user_delete_params.rb +++ b/lib/hanzoai/models/user_delete_params.rb @@ -24,14 +24,10 @@ class UserDeleteParams < Hanzoai::Internal::Type::BaseModel # # @return [String] # attr_writer :llm_changed_by - # @!parse - # # @param user_ids [Array] - # # @param llm_changed_by [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(user_ids:, llm_changed_by: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_ids:, llm_changed_by: nil, request_options: {}) + # @param user_ids [Array] + # @param llm_changed_by [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/user_list_params.rb b/lib/hanzoai/models/user_list_params.rb index f2b3e5a9..881743ee 100644 --- a/lib/hanzoai/models/user_list_params.rb +++ b/lib/hanzoai/models/user_list_params.rb @@ -40,16 +40,12 @@ class UserListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_ids, String, nil?: true - # @!parse - # # @param page [Integer] - # # @param page_size [Integer] - # # @param role [String, nil] - # # @param user_ids [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}) + # @param page [Integer] + # @param page_size [Integer] + # @param role [String, nil] + # @param user_ids [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/user_retrieve_info_params.rb b/lib/hanzoai/models/user_retrieve_info_params.rb index 1d57b98f..49cc7d31 100644 --- a/lib/hanzoai/models/user_retrieve_info_params.rb +++ b/lib/hanzoai/models/user_retrieve_info_params.rb @@ -14,13 +14,9 @@ class UserRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!parse - # # @param user_id [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(user_id: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(user_id: nil, request_options: {}) + # @param user_id [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/user_update_params.rb b/lib/hanzoai/models/user_update_params.rb index ca47bb37..52f8e955 100644 --- a/lib/hanzoai/models/user_update_params.rb +++ b/lib/hanzoai/models/user_update_params.rb @@ -130,65 +130,32 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] optional :user_role, enum: -> { Hanzoai::Models::UserUpdateParams::UserRole }, nil?: true - # @!parse - # # @param aliases [Object, nil] - # # @param allowed_cache_controls [Array, nil] - # # @param blocked [Boolean, nil] - # # @param budget_duration [String, nil] - # # @param config [Object, nil] - # # @param duration [String, nil] - # # @param guardrails [Array, nil] - # # @param key_alias [String, nil] - # # @param max_budget [Float, nil] - # # @param max_parallel_requests [Integer, nil] - # # @param metadata [Object, nil] - # # @param model_max_budget [Object, nil] - # # @param model_rpm_limit [Object, nil] - # # @param model_tpm_limit [Object, nil] - # # @param models [Array, nil] - # # @param password [String, nil] - # # @param permissions [Object, nil] - # # @param rpm_limit [Integer, nil] - # # @param spend [Float, nil] - # # @param team_id [String, nil] - # # @param tpm_limit [Integer, nil] - # # @param user_email [String, nil] - # # @param user_id [String, nil] - # # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize( - # aliases: nil, - # allowed_cache_controls: nil, - # blocked: nil, - # budget_duration: nil, - # config: nil, - # duration: nil, - # guardrails: nil, - # key_alias: nil, - # max_budget: nil, - # max_parallel_requests: nil, - # metadata: nil, - # model_max_budget: nil, - # model_rpm_limit: nil, - # model_tpm_limit: nil, - # models: nil, - # password: nil, - # permissions: nil, - # rpm_limit: nil, - # spend: nil, - # team_id: nil, - # tpm_limit: nil, - # user_email: nil, - # user_id: nil, - # user_role: nil, - # request_options: {}, - # ** - # ) - # super - # end - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, password: nil, permissions: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) + # @param aliases [Object, nil] + # @param allowed_cache_controls [Array, nil] + # @param blocked [Boolean, nil] + # @param budget_duration [String, nil] + # @param config [Object, nil] + # @param duration [String, nil] + # @param guardrails [Array, nil] + # @param key_alias [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param metadata [Object, nil] + # @param model_max_budget [Object, nil] + # @param model_rpm_limit [Object, nil] + # @param model_tpm_limit [Object, nil] + # @param models [Array, nil] + # @param password [String, nil] + # @param permissions [Object, nil] + # @param rpm_limit [Integer, nil] + # @param spend [Float, nil] + # @param team_id [String, nil] + # @param tpm_limit [Integer, nil] + # @param user_email [String, nil] + # @param user_id [String, nil] + # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module UserRole extend Hanzoai::Internal::Type::Enum @@ -198,11 +165,8 @@ module UserRole INTERNAL_USER = :internal_user INTERNAL_USER_VIEWER = :internal_user_viewer - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/util_get_supported_openai_params_params.rb b/lib/hanzoai/models/util_get_supported_openai_params_params.rb index 2d23b88d..2aa72c25 100644 --- a/lib/hanzoai/models/util_get_supported_openai_params_params.rb +++ b/lib/hanzoai/models/util_get_supported_openai_params_params.rb @@ -13,13 +13,9 @@ class UtilGetSupportedOpenAIParamsParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :model, String - # @!parse - # # @param model [String] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(model:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model:, request_options: {}) + # @param model [String] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/util_token_counter_params.rb b/lib/hanzoai/models/util_token_counter_params.rb index 78b78c56..15816b53 100644 --- a/lib/hanzoai/models/util_token_counter_params.rb +++ b/lib/hanzoai/models/util_token_counter_params.rb @@ -23,15 +23,11 @@ class UtilTokenCounterParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :prompt, String, nil?: true - # @!parse - # # @param model [String] - # # @param messages [Array, nil] - # # @param prompt [String, nil] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(model:, messages: nil, prompt: nil, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model:, messages: nil, prompt: nil, request_options: {}) + # @param model [String] + # @param messages [Array, nil] + # @param prompt [String, nil] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/util_token_counter_response.rb b/lib/hanzoai/models/util_token_counter_response.rb index b482f3fe..f248b71a 100644 --- a/lib/hanzoai/models/util_token_counter_response.rb +++ b/lib/hanzoai/models/util_token_counter_response.rb @@ -24,15 +24,11 @@ class UtilTokenCounterResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer] required :total_tokens, Integer - # @!parse - # # @param model_used [String] - # # @param request_model [String] - # # @param tokenizer_type [String] - # # @param total_tokens [Integer] - # # - # def initialize(model_used:, request_model:, tokenizer_type:, total_tokens:, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(model_used:, request_model:, tokenizer_type:, total_tokens:) + # @param model_used [String] + # @param request_model [String] + # @param tokenizer_type [String] + # @param total_tokens [Integer] end end end diff --git a/lib/hanzoai/models/util_transform_request_params.rb b/lib/hanzoai/models/util_transform_request_params.rb index 8288b8a6..ec123358 100644 --- a/lib/hanzoai/models/util_transform_request_params.rb +++ b/lib/hanzoai/models/util_transform_request_params.rb @@ -18,14 +18,10 @@ class UtilTransformRequestParams < Hanzoai::Internal::Type::BaseModel # @return [Object] required :request_body, Hanzoai::Internal::Type::Unknown - # @!parse - # # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] - # # @param request_body [Object] - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(call_type:, request_body:, request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(call_type:, request_body:, request_options: {}) + # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] + # @param request_body [Object] + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CallType extend Hanzoai::Internal::Type::Enum @@ -92,11 +88,8 @@ module CallType RESPONSES = :responses ARESPONSES = :aresponses - finalize! - - # @!parse - # # @return [Array] - # def self.values; end + # @!method self.values + # @return [Array] end end end diff --git a/lib/hanzoai/models/util_transform_request_response.rb b/lib/hanzoai/models/util_transform_request_response.rb index ae8ff93e..68e8c025 100644 --- a/lib/hanzoai/models/util_transform_request_response.rb +++ b/lib/hanzoai/models/util_transform_request_response.rb @@ -24,15 +24,11 @@ class UtilTransformRequestResponse < Hanzoai::Internal::Type::BaseModel # @return [Object, nil] optional :raw_request_headers, Hanzoai::Internal::Type::Unknown, nil?: true - # @!parse - # # @param error [String, nil] - # # @param raw_request_api_base [String, nil] - # # @param raw_request_body [Object, nil] - # # @param raw_request_headers [Object, nil] - # # - # def initialize(error: nil, raw_request_api_base: nil, raw_request_body: nil, raw_request_headers: nil, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(error: nil, raw_request_api_base: nil, raw_request_body: nil, raw_request_headers: nil) + # @param error [String, nil] + # @param raw_request_api_base [String, nil] + # @param raw_request_body [Object, nil] + # @param raw_request_headers [Object, nil] end end end diff --git a/lib/hanzoai/models/vertex_ai_create_params.rb b/lib/hanzoai/models/vertex_ai_create_params.rb index 8b288efc..33fa9018 100644 --- a/lib/hanzoai/models/vertex_ai_create_params.rb +++ b/lib/hanzoai/models/vertex_ai_create_params.rb @@ -8,12 +8,8 @@ class VertexAICreateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/vertex_ai_delete_params.rb b/lib/hanzoai/models/vertex_ai_delete_params.rb index aecb5af7..cdaaac9e 100644 --- a/lib/hanzoai/models/vertex_ai_delete_params.rb +++ b/lib/hanzoai/models/vertex_ai_delete_params.rb @@ -8,12 +8,8 @@ class VertexAIDeleteParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/vertex_ai_patch_params.rb b/lib/hanzoai/models/vertex_ai_patch_params.rb index 6e062d12..baf98e88 100644 --- a/lib/hanzoai/models/vertex_ai_patch_params.rb +++ b/lib/hanzoai/models/vertex_ai_patch_params.rb @@ -8,12 +8,8 @@ class VertexAIPatchParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/vertex_ai_retrieve_params.rb b/lib/hanzoai/models/vertex_ai_retrieve_params.rb index 74e28086..ad30c56a 100644 --- a/lib/hanzoai/models/vertex_ai_retrieve_params.rb +++ b/lib/hanzoai/models/vertex_ai_retrieve_params.rb @@ -8,12 +8,8 @@ class VertexAIRetrieveParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/vertex_ai_update_params.rb b/lib/hanzoai/models/vertex_ai_update_params.rb index f3b391b5..2ed2cec7 100644 --- a/lib/hanzoai/models/vertex_ai_update_params.rb +++ b/lib/hanzoai/models/vertex_ai_update_params.rb @@ -8,12 +8,8 @@ class VertexAIUpdateParams < Hanzoai::Internal::Type::BaseModel # extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!parse - # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # # - # def initialize(request_options: {}, **) = super - - # def initialize: (Hash | Hanzoai::Internal::Type::BaseModel) -> void + # @!method initialize(request_options: {}) + # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/request_options.rb b/lib/hanzoai/request_options.rb index dd26afe9..e617fb99 100644 --- a/lib/hanzoai/request_options.rb +++ b/lib/hanzoai/request_options.rb @@ -66,10 +66,9 @@ def self.validate!(opts) optional :timeout, Float # @!parse - # # Returns a new instance of RequestOptions. + # # @!method initialize(values = {}) + # # Returns a new instance of RequestOptions. # # - # # @param values [Hash{Symbol=>Object}] - # # - # def initialize(values = {}) = super + # # @param values [Hash{Symbol=>Object}] end end diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index 3a34b9dc..5c12dff5 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -176,6 +176,7 @@ module Hanzoai def deconstruct_keys(keys); end class << self + # @api private sig { params(model: Hanzoai::Internal::Type::BaseModel).returns(Hanzoai::Internal::AnyHash) } def walk(model); end end diff --git a/rbi/lib/hanzoai/internal/type/enum.rbi b/rbi/lib/hanzoai/internal/type/enum.rbi index 183a334f..f64faee7 100644 --- a/rbi/lib/hanzoai/internal/type/enum.rbi +++ b/rbi/lib/hanzoai/internal/type/enum.rbi @@ -22,12 +22,6 @@ module Hanzoai sig { overridable.returns(T::Array[T.any(NilClass, T::Boolean, Integer, Float, Symbol)]) } def values; end - # @api private - # - # Guard against thread safety issues by instantiating `@values`. - sig { void } - private def finalize!; end - sig { params(other: T.anything).returns(T::Boolean) } def ===(other); end diff --git a/sig/hanzoai/internal/type/enum.rbs b/sig/hanzoai/internal/type/enum.rbs index 79f33d51..ed3522cf 100644 --- a/sig/hanzoai/internal/type/enum.rbs +++ b/sig/hanzoai/internal/type/enum.rbs @@ -6,8 +6,6 @@ module Hanzoai def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)] - private def self.finalize!: -> void - def ===: (top other) -> bool def ==: (top other) -> bool diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 88199e14..6d8e57ac 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -156,6 +156,7 @@ def test_dump_retry class Hanzoai::Test::EnumModelTest < Minitest::Test class E0 include Hanzoai::Internal::Type::Enum + attr_reader :values def initialize(*values) = (@values = values) end @@ -575,6 +576,7 @@ def test_coerce class Hanzoai::Test::BaseModelQoLTest < Minitest::Test class E0 include Hanzoai::Internal::Type::Enum + attr_reader :values def initialize(*values) = (@values = values) end From 2596eac15f30607a3a832dd44cdfde5cf48b8006 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 03:29:04 +0000 Subject: [PATCH 038/139] chore: simplify yard annotations by removing most `@!parse` directives --- .../internal/type/request_parameters.rb | 3 +- .../models/active_list_callbacks_params.rb | 3 +- .../models/add_add_allowed_ip_params.rb | 3 +- lib/hanzoai/models/anthropic_create_params.rb | 3 +- lib/hanzoai/models/anthropic_delete_params.rb | 3 +- lib/hanzoai/models/anthropic_modify_params.rb | 3 +- .../models/anthropic_retrieve_params.rb | 3 +- lib/hanzoai/models/anthropic_update_params.rb | 3 +- .../models/assemblyai_create_params.rb | 3 +- .../models/assemblyai_delete_params.rb | 3 +- lib/hanzoai/models/assemblyai_patch_params.rb | 3 +- .../models/assemblyai_retrieve_params.rb | 3 +- .../models/assemblyai_update_params.rb | 3 +- lib/hanzoai/models/assistant_create_params.rb | 3 +- lib/hanzoai/models/assistant_delete_params.rb | 3 +- lib/hanzoai/models/assistant_list_params.rb | 3 +- .../models/audio/speech_create_params.rb | 3 +- .../audio/transcription_create_params.rb | 3 +- lib/hanzoai/models/azure_call_params.rb | 3 +- lib/hanzoai/models/azure_create_params.rb | 3 +- lib/hanzoai/models/azure_delete_params.rb | 3 +- lib/hanzoai/models/azure_patch_params.rb | 3 +- lib/hanzoai/models/azure_update_params.rb | 3 +- .../batch_cancel_with_provider_params.rb | 3 +- lib/hanzoai/models/batch_create_params.rb | 3 +- .../batch_create_with_provider_params.rb | 3 +- lib/hanzoai/models/batch_list_params.rb | 3 +- .../models/batch_list_with_provider_params.rb | 3 +- lib/hanzoai/models/batch_retrieve_params.rb | 3 +- .../batch_retrieve_with_provider_params.rb | 3 +- .../models/batches/cancel_cancel_params.rb | 3 +- lib/hanzoai/models/bedrock_create_params.rb | 3 +- lib/hanzoai/models/bedrock_delete_params.rb | 3 +- lib/hanzoai/models/bedrock_patch_params.rb | 3 +- lib/hanzoai/models/bedrock_retrieve_params.rb | 3 +- lib/hanzoai/models/bedrock_update_params.rb | 3 +- lib/hanzoai/models/budget_create_params.rb | 3 +- lib/hanzoai/models/budget_delete_params.rb | 3 +- lib/hanzoai/models/budget_info_params.rb | 3 +- lib/hanzoai/models/budget_list_params.rb | 3 +- lib/hanzoai/models/budget_settings_params.rb | 3 +- lib/hanzoai/models/budget_update_params.rb | 3 +- .../models/cache/redi_retrieve_info_params.rb | 3 +- lib/hanzoai/models/cache_delete_params.rb | 3 +- lib/hanzoai/models/cache_flush_all_params.rb | 3 +- lib/hanzoai/models/cache_ping_params.rb | 3 +- .../models/chat/completion_create_params.rb | 3 +- lib/hanzoai/models/client_get_home_params.rb | 3 +- lib/hanzoai/models/cohere_create_params.rb | 3 +- lib/hanzoai/models/cohere_delete_params.rb | 3 +- lib/hanzoai/models/cohere_modify_params.rb | 3 +- lib/hanzoai/models/cohere_retrieve_params.rb | 3 +- lib/hanzoai/models/cohere_update_params.rb | 3 +- .../models/completion_create_params.rb | 3 +- .../pass_through_endpoint_create_params.rb | 3 +- .../pass_through_endpoint_delete_params.rb | 3 +- .../pass_through_endpoint_list_params.rb | 3 +- .../pass_through_endpoint_update_params.rb | 3 +- .../models/credential_create_params.rb | 3 +- .../models/credential_delete_params.rb | 3 +- lib/hanzoai/models/credential_list_params.rb | 3 +- lib/hanzoai/models/customer_block_params.rb | 3 +- lib/hanzoai/models/customer_create_params.rb | 9 +-- lib/hanzoai/models/customer_delete_params.rb | 3 +- lib/hanzoai/models/customer_list_params.rb | 3 +- lib/hanzoai/models/customer_list_response.rb | 6 +- .../models/customer_retrieve_info_params.rb | 3 +- .../models/customer_retrieve_info_response.rb | 6 +- lib/hanzoai/models/customer_unblock_params.rb | 3 +- lib/hanzoai/models/customer_update_params.rb | 9 +-- .../models/delete_create_allowed_ip_params.rb | 3 +- lib/hanzoai/models/embedding_create_params.rb | 3 +- lib/hanzoai/models/engine_complete_params.rb | 3 +- lib/hanzoai/models/engine_embed_params.rb | 3 +- .../models/engines/chat_complete_params.rb | 3 +- .../models/eu_assemblyai_create_params.rb | 3 +- .../models/eu_assemblyai_delete_params.rb | 3 +- .../models/eu_assemblyai_patch_params.rb | 3 +- .../models/eu_assemblyai_retrieve_params.rb | 3 +- .../models/eu_assemblyai_update_params.rb | 3 +- lib/hanzoai/models/file_create_params.rb | 9 +-- lib/hanzoai/models/file_delete_params.rb | 3 +- lib/hanzoai/models/file_list_params.rb | 3 +- lib/hanzoai/models/file_retrieve_params.rb | 3 +- .../models/files/content_retrieve_params.rb | 3 +- .../models/fine_tuning/job_create_params.rb | 3 +- .../models/fine_tuning/job_list_params.rb | 3 +- .../models/fine_tuning/job_retrieve_params.rb | 3 +- .../fine_tuning/jobs/cancel_create_params.rb | 3 +- lib/hanzoai/models/gemini_create_params.rb | 3 +- lib/hanzoai/models/gemini_delete_params.rb | 3 +- lib/hanzoai/models/gemini_patch_params.rb | 3 +- lib/hanzoai/models/gemini_retrieve_params.rb | 3 +- lib/hanzoai/models/gemini_update_params.rb | 3 +- lib/hanzoai/models/generate_key_response.rb | 6 +- .../models/global/spend_list_tags_params.rb | 3 +- .../models/global/spend_list_tags_response.rb | 12 +-- .../models/global/spend_reset_params.rb | 3 +- .../global/spend_retrieve_report_params.rb | 3 +- .../global/spend_retrieve_report_response.rb | 12 +-- lib/hanzoai/models/guardrail_list_params.rb | 3 +- lib/hanzoai/models/guardrail_list_response.rb | 6 +- lib/hanzoai/models/health_check_all_params.rb | 3 +- .../models/health_check_liveliness_params.rb | 3 +- .../models/health_check_liveness_params.rb | 3 +- .../models/health_check_readiness_params.rb | 3 +- .../models/health_check_services_params.rb | 3 +- .../models/images/generation_create_params.rb | 3 +- lib/hanzoai/models/key_block_params.rb | 9 +-- lib/hanzoai/models/key_block_response.rb | 54 +++---------- lib/hanzoai/models/key_check_health_params.rb | 3 +- .../models/key_check_health_response.rb | 18 +---- lib/hanzoai/models/key_delete_params.rb | 9 +-- lib/hanzoai/models/key_generate_params.rb | 9 +-- lib/hanzoai/models/key_list_params.rb | 27 ++----- lib/hanzoai/models/key_list_response.rb | 78 ++++--------------- .../models/key_regenerate_by_key_params.rb | 9 +-- .../models/key_retrieve_info_params.rb | 3 +- lib/hanzoai/models/key_unblock_params.rb | 9 +-- lib/hanzoai/models/key_update_params.rb | 9 +-- lib/hanzoai/models/langfuse_create_params.rb | 3 +- lib/hanzoai/models/langfuse_delete_params.rb | 3 +- lib/hanzoai/models/langfuse_patch_params.rb | 3 +- .../models/langfuse_retrieve_params.rb | 3 +- lib/hanzoai/models/langfuse_update_params.rb | 3 +- lib/hanzoai/models/model/info_list_params.rb | 3 +- .../models/model/update_full_params.rb | 3 +- .../models/model/update_partial_params.rb | 3 +- lib/hanzoai/models/model_create_params.rb | 3 +- lib/hanzoai/models/model_delete_params.rb | 3 +- .../model_group_retrieve_info_params.rb | 3 +- lib/hanzoai/models/model_info.rb | 6 +- lib/hanzoai/models/model_list_params.rb | 3 +- .../models/moderation_create_params.rb | 3 +- .../openai/deployment_complete_params.rb | 3 +- .../models/openai/deployment_embed_params.rb | 3 +- .../deployments/chat_complete_params.rb | 3 +- lib/hanzoai/models/openai_create_params.rb | 3 +- lib/hanzoai/models/openai_delete_params.rb | 3 +- lib/hanzoai/models/openai_patch_params.rb | 3 +- lib/hanzoai/models/openai_retrieve_params.rb | 3 +- lib/hanzoai/models/openai_update_params.rb | 3 +- .../organization/info_deprecated_params.rb | 3 +- .../organization/info_retrieve_params.rb | 3 +- .../organization/info_retrieve_response.rb | 60 +++----------- .../models/organization_add_member_params.rb | 3 +- .../organization_add_member_response.rb | 42 ++-------- .../models/organization_create_params.rb | 9 +-- .../models/organization_create_response.rb | 6 +- .../organization_delete_member_params.rb | 3 +- .../models/organization_delete_params.rb | 3 +- .../models/organization_delete_response.rb | 60 +++----------- .../models/organization_list_params.rb | 3 +- .../models/organization_list_response.rb | 60 +++----------- .../organization_update_member_params.rb | 3 +- .../organization_update_member_response.rb | 12 +-- .../models/organization_update_params.rb | 3 +- .../models/organization_update_response.rb | 60 +++----------- .../models/provider_list_budgets_params.rb | 3 +- .../models/provider_list_budgets_response.rb | 6 +- lib/hanzoai/models/rerank_create_params.rb | 3 +- lib/hanzoai/models/rerank_create_v1_params.rb | 3 +- lib/hanzoai/models/rerank_create_v2_params.rb | 3 +- lib/hanzoai/models/response_create_params.rb | 3 +- lib/hanzoai/models/response_delete_params.rb | 3 +- .../models/response_retrieve_params.rb | 3 +- .../responses/input_item_list_params.rb | 3 +- lib/hanzoai/models/route_list_params.rb | 3 +- lib/hanzoai/models/setting_retrieve_params.rb | 3 +- .../models/spend_calculate_spend_params.rb | 3 +- lib/hanzoai/models/spend_list_logs_params.rb | 3 +- .../models/spend_list_logs_response.rb | 12 +-- lib/hanzoai/models/spend_list_tags_params.rb | 3 +- .../models/spend_list_tags_response.rb | 12 +-- .../models/team/callback_add_params.rb | 9 +-- .../models/team/callback_retrieve_params.rb | 3 +- lib/hanzoai/models/team/model_add_params.rb | 3 +- .../models/team/model_remove_params.rb | 3 +- lib/hanzoai/models/team_add_member_params.rb | 3 +- .../models/team_add_member_response.rb | 60 +++----------- lib/hanzoai/models/team_block_params.rb | 3 +- lib/hanzoai/models/team_create_params.rb | 39 ++-------- lib/hanzoai/models/team_create_response.rb | 30 ++----- lib/hanzoai/models/team_delete_params.rb | 9 +-- .../models/team_disable_logging_params.rb | 3 +- .../models/team_list_available_params.rb | 9 +-- lib/hanzoai/models/team_list_params.rb | 3 +- .../models/team_remove_member_params.rb | 3 +- .../models/team_retrieve_info_params.rb | 9 +-- lib/hanzoai/models/team_unblock_params.rb | 3 +- .../models/team_update_member_params.rb | 3 +- lib/hanzoai/models/team_update_params.rb | 9 +-- lib/hanzoai/models/test_ping_params.rb | 3 +- lib/hanzoai/models/thread_create_params.rb | 3 +- lib/hanzoai/models/thread_retrieve_params.rb | 3 +- .../models/threads/message_create_params.rb | 3 +- .../models/threads/message_list_params.rb | 3 +- .../models/threads/run_create_params.rb | 3 +- lib/hanzoai/models/user_create_params.rb | 9 +-- lib/hanzoai/models/user_create_response.rb | 6 +- lib/hanzoai/models/user_delete_params.rb | 9 +-- lib/hanzoai/models/user_list_params.rb | 15 +--- .../models/user_retrieve_info_params.rb | 3 +- lib/hanzoai/models/user_update_params.rb | 3 +- ...util_get_supported_openai_params_params.rb | 3 +- .../models/util_token_counter_params.rb | 3 +- .../models/util_transform_request_params.rb | 3 +- lib/hanzoai/models/vertex_ai_create_params.rb | 3 +- lib/hanzoai/models/vertex_ai_delete_params.rb | 3 +- lib/hanzoai/models/vertex_ai_patch_params.rb | 3 +- .../models/vertex_ai_retrieve_params.rb | 3 +- lib/hanzoai/models/vertex_ai_update_params.rb | 3 +- 212 files changed, 323 insertions(+), 1048 deletions(-) diff --git a/lib/hanzoai/internal/type/request_parameters.rb b/lib/hanzoai/internal/type/request_parameters.rb index 4332f065..a9f95b50 100644 --- a/lib/hanzoai/internal/type/request_parameters.rb +++ b/lib/hanzoai/internal/type/request_parameters.rb @@ -12,9 +12,8 @@ module RequestParameters # @param mod [Module] def self.included(mod) - return unless mod <= Hanzoai::Internal::Type::BaseModel + raise ArgumentError.new(mod) unless mod <= Hanzoai::Internal::Type::BaseModel - mod.extend(Hanzoai::Internal::Type::RequestParameters::Converter) mod.optional(:request_options, Hanzoai::RequestOptions) end diff --git a/lib/hanzoai/models/active_list_callbacks_params.rb b/lib/hanzoai/models/active_list_callbacks_params.rb index 9cfac535..b98c9cfb 100644 --- a/lib/hanzoai/models/active_list_callbacks_params.rb +++ b/lib/hanzoai/models/active_list_callbacks_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Active#list_callbacks class ActiveListCallbacksParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/add_add_allowed_ip_params.rb b/lib/hanzoai/models/add_add_allowed_ip_params.rb index 4c9a5a3b..033069a2 100644 --- a/lib/hanzoai/models/add_add_allowed_ip_params.rb +++ b/lib/hanzoai/models/add_add_allowed_ip_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Add#add_allowed_ip class AddAddAllowedIPParams < Hanzoai::Models::IPAddress - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/anthropic_create_params.rb b/lib/hanzoai/models/anthropic_create_params.rb index fb4087c5..03262af2 100644 --- a/lib/hanzoai/models/anthropic_create_params.rb +++ b/lib/hanzoai/models/anthropic_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Anthropic#create class AnthropicCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/anthropic_delete_params.rb b/lib/hanzoai/models/anthropic_delete_params.rb index 7165ce41..839d0be5 100644 --- a/lib/hanzoai/models/anthropic_delete_params.rb +++ b/lib/hanzoai/models/anthropic_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Anthropic#delete class AnthropicDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/anthropic_modify_params.rb b/lib/hanzoai/models/anthropic_modify_params.rb index f6fa9bd4..48db14d9 100644 --- a/lib/hanzoai/models/anthropic_modify_params.rb +++ b/lib/hanzoai/models/anthropic_modify_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Anthropic#modify class AnthropicModifyParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/anthropic_retrieve_params.rb b/lib/hanzoai/models/anthropic_retrieve_params.rb index 715ba1e8..1edd4e04 100644 --- a/lib/hanzoai/models/anthropic_retrieve_params.rb +++ b/lib/hanzoai/models/anthropic_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Anthropic#retrieve class AnthropicRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/anthropic_update_params.rb b/lib/hanzoai/models/anthropic_update_params.rb index 2e63cf4a..26dfdde2 100644 --- a/lib/hanzoai/models/anthropic_update_params.rb +++ b/lib/hanzoai/models/anthropic_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Anthropic#update class AnthropicUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assemblyai_create_params.rb b/lib/hanzoai/models/assemblyai_create_params.rb index 6d3d109e..d3fd8696 100644 --- a/lib/hanzoai/models/assemblyai_create_params.rb +++ b/lib/hanzoai/models/assemblyai_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assemblyai#create class AssemblyaiCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assemblyai_delete_params.rb b/lib/hanzoai/models/assemblyai_delete_params.rb index 125b164b..26e99c0c 100644 --- a/lib/hanzoai/models/assemblyai_delete_params.rb +++ b/lib/hanzoai/models/assemblyai_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assemblyai#delete class AssemblyaiDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assemblyai_patch_params.rb b/lib/hanzoai/models/assemblyai_patch_params.rb index 74ea0874..13ce61f6 100644 --- a/lib/hanzoai/models/assemblyai_patch_params.rb +++ b/lib/hanzoai/models/assemblyai_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assemblyai#patch class AssemblyaiPatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assemblyai_retrieve_params.rb b/lib/hanzoai/models/assemblyai_retrieve_params.rb index 97dc1419..86f52ef8 100644 --- a/lib/hanzoai/models/assemblyai_retrieve_params.rb +++ b/lib/hanzoai/models/assemblyai_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assemblyai#retrieve class AssemblyaiRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assemblyai_update_params.rb b/lib/hanzoai/models/assemblyai_update_params.rb index 1c870520..0d55b73d 100644 --- a/lib/hanzoai/models/assemblyai_update_params.rb +++ b/lib/hanzoai/models/assemblyai_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assemblyai#update class AssemblyaiUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assistant_create_params.rb b/lib/hanzoai/models/assistant_create_params.rb index 81d29d8e..ceba1018 100644 --- a/lib/hanzoai/models/assistant_create_params.rb +++ b/lib/hanzoai/models/assistant_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assistants#create class AssistantCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assistant_delete_params.rb b/lib/hanzoai/models/assistant_delete_params.rb index 0d1afe7a..fa7849d6 100644 --- a/lib/hanzoai/models/assistant_delete_params.rb +++ b/lib/hanzoai/models/assistant_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assistants#delete class AssistantDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/assistant_list_params.rb b/lib/hanzoai/models/assistant_list_params.rb index b640e8a5..4f71149b 100644 --- a/lib/hanzoai/models/assistant_list_params.rb +++ b/lib/hanzoai/models/assistant_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Assistants#list class AssistantListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/audio/speech_create_params.rb b/lib/hanzoai/models/audio/speech_create_params.rb index 55796097..784dfa09 100644 --- a/lib/hanzoai/models/audio/speech_create_params.rb +++ b/lib/hanzoai/models/audio/speech_create_params.rb @@ -5,8 +5,7 @@ module Models module Audio # @see Hanzoai::Resources::Audio::Speech#create class SpeechCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/audio/transcription_create_params.rb b/lib/hanzoai/models/audio/transcription_create_params.rb index 33e1cd55..70ca3d76 100644 --- a/lib/hanzoai/models/audio/transcription_create_params.rb +++ b/lib/hanzoai/models/audio/transcription_create_params.rb @@ -5,8 +5,7 @@ module Models module Audio # @see Hanzoai::Resources::Audio::Transcriptions#create class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute file diff --git a/lib/hanzoai/models/azure_call_params.rb b/lib/hanzoai/models/azure_call_params.rb index c8fde838..687fc69d 100644 --- a/lib/hanzoai/models/azure_call_params.rb +++ b/lib/hanzoai/models/azure_call_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Azure#call class AzureCallParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/azure_create_params.rb b/lib/hanzoai/models/azure_create_params.rb index 2c593706..96694b64 100644 --- a/lib/hanzoai/models/azure_create_params.rb +++ b/lib/hanzoai/models/azure_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Azure#create class AzureCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/azure_delete_params.rb b/lib/hanzoai/models/azure_delete_params.rb index 97f8df14..7c554bd6 100644 --- a/lib/hanzoai/models/azure_delete_params.rb +++ b/lib/hanzoai/models/azure_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Azure#delete class AzureDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/azure_patch_params.rb b/lib/hanzoai/models/azure_patch_params.rb index f32c85ed..95a8e289 100644 --- a/lib/hanzoai/models/azure_patch_params.rb +++ b/lib/hanzoai/models/azure_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Azure#patch class AzurePatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/azure_update_params.rb b/lib/hanzoai/models/azure_update_params.rb index b94a04f8..e2f9872b 100644 --- a/lib/hanzoai/models/azure_update_params.rb +++ b/lib/hanzoai/models/azure_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Azure#update class AzureUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/batch_cancel_with_provider_params.rb b/lib/hanzoai/models/batch_cancel_with_provider_params.rb index d56d2003..ff884c74 100644 --- a/lib/hanzoai/models/batch_cancel_with_provider_params.rb +++ b/lib/hanzoai/models/batch_cancel_with_provider_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Batches#cancel_with_provider class BatchCancelWithProviderParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/batch_create_params.rb b/lib/hanzoai/models/batch_create_params.rb index 5788c98e..69761d03 100644 --- a/lib/hanzoai/models/batch_create_params.rb +++ b/lib/hanzoai/models/batch_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Batches#create class BatchCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/batch_create_with_provider_params.rb b/lib/hanzoai/models/batch_create_with_provider_params.rb index 9b0c5208..57524e4e 100644 --- a/lib/hanzoai/models/batch_create_with_provider_params.rb +++ b/lib/hanzoai/models/batch_create_with_provider_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Batches#create_with_provider class BatchCreateWithProviderParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/batch_list_params.rb b/lib/hanzoai/models/batch_list_params.rb index 1a3e5257..a017aa94 100644 --- a/lib/hanzoai/models/batch_list_params.rb +++ b/lib/hanzoai/models/batch_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Batches#list class BatchListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute after diff --git a/lib/hanzoai/models/batch_list_with_provider_params.rb b/lib/hanzoai/models/batch_list_with_provider_params.rb index bc5dcf29..cba55440 100644 --- a/lib/hanzoai/models/batch_list_with_provider_params.rb +++ b/lib/hanzoai/models/batch_list_with_provider_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Batches#list_with_provider class BatchListWithProviderParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute after diff --git a/lib/hanzoai/models/batch_retrieve_params.rb b/lib/hanzoai/models/batch_retrieve_params.rb index 6b5daab6..a09902db 100644 --- a/lib/hanzoai/models/batch_retrieve_params.rb +++ b/lib/hanzoai/models/batch_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Batches#retrieve class BatchRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/batch_retrieve_with_provider_params.rb b/lib/hanzoai/models/batch_retrieve_with_provider_params.rb index ce96a423..753cd957 100644 --- a/lib/hanzoai/models/batch_retrieve_with_provider_params.rb +++ b/lib/hanzoai/models/batch_retrieve_with_provider_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Batches#retrieve_with_provider class BatchRetrieveWithProviderParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/batches/cancel_cancel_params.rb b/lib/hanzoai/models/batches/cancel_cancel_params.rb index 31406cfa..dbf92c00 100644 --- a/lib/hanzoai/models/batches/cancel_cancel_params.rb +++ b/lib/hanzoai/models/batches/cancel_cancel_params.rb @@ -5,8 +5,7 @@ module Models module Batches # @see Hanzoai::Resources::Batches::Cancel#cancel class CancelCancelParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/bedrock_create_params.rb b/lib/hanzoai/models/bedrock_create_params.rb index b5095ffc..2f2ba114 100644 --- a/lib/hanzoai/models/bedrock_create_params.rb +++ b/lib/hanzoai/models/bedrock_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Bedrock#create class BedrockCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/bedrock_delete_params.rb b/lib/hanzoai/models/bedrock_delete_params.rb index 29c2860a..3266cd3e 100644 --- a/lib/hanzoai/models/bedrock_delete_params.rb +++ b/lib/hanzoai/models/bedrock_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Bedrock#delete class BedrockDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/bedrock_patch_params.rb b/lib/hanzoai/models/bedrock_patch_params.rb index 9743ad43..c48c09f3 100644 --- a/lib/hanzoai/models/bedrock_patch_params.rb +++ b/lib/hanzoai/models/bedrock_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Bedrock#patch class BedrockPatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/bedrock_retrieve_params.rb b/lib/hanzoai/models/bedrock_retrieve_params.rb index d94504c4..6ff6d937 100644 --- a/lib/hanzoai/models/bedrock_retrieve_params.rb +++ b/lib/hanzoai/models/bedrock_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Bedrock#retrieve class BedrockRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/bedrock_update_params.rb b/lib/hanzoai/models/bedrock_update_params.rb index c4425691..8ffee27e 100644 --- a/lib/hanzoai/models/bedrock_update_params.rb +++ b/lib/hanzoai/models/bedrock_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Bedrock#update class BedrockUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/budget_create_params.rb b/lib/hanzoai/models/budget_create_params.rb index b957534c..71bae2a3 100644 --- a/lib/hanzoai/models/budget_create_params.rb +++ b/lib/hanzoai/models/budget_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Budget#create class BudgetCreateParams < Hanzoai::Models::BudgetNew - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/budget_delete_params.rb b/lib/hanzoai/models/budget_delete_params.rb index 2609b48d..41c8e037 100644 --- a/lib/hanzoai/models/budget_delete_params.rb +++ b/lib/hanzoai/models/budget_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Budget#delete class BudgetDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute id diff --git a/lib/hanzoai/models/budget_info_params.rb b/lib/hanzoai/models/budget_info_params.rb index 8f0cb7bd..e63629c4 100644 --- a/lib/hanzoai/models/budget_info_params.rb +++ b/lib/hanzoai/models/budget_info_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Budget#info class BudgetInfoParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute budgets diff --git a/lib/hanzoai/models/budget_list_params.rb b/lib/hanzoai/models/budget_list_params.rb index 3ecbac9c..96222eba 100644 --- a/lib/hanzoai/models/budget_list_params.rb +++ b/lib/hanzoai/models/budget_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Budget#list class BudgetListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/budget_settings_params.rb b/lib/hanzoai/models/budget_settings_params.rb index 60aaf65f..95561491 100644 --- a/lib/hanzoai/models/budget_settings_params.rb +++ b/lib/hanzoai/models/budget_settings_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Budget#settings class BudgetSettingsParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute budget_id diff --git a/lib/hanzoai/models/budget_update_params.rb b/lib/hanzoai/models/budget_update_params.rb index 70f2679d..09acc464 100644 --- a/lib/hanzoai/models/budget_update_params.rb +++ b/lib/hanzoai/models/budget_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Budget#update class BudgetUpdateParams < Hanzoai::Models::BudgetNew - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cache/redi_retrieve_info_params.rb b/lib/hanzoai/models/cache/redi_retrieve_info_params.rb index d21284b4..cf2df72b 100644 --- a/lib/hanzoai/models/cache/redi_retrieve_info_params.rb +++ b/lib/hanzoai/models/cache/redi_retrieve_info_params.rb @@ -5,8 +5,7 @@ module Models module Cache # @see Hanzoai::Resources::Cache::Redis#retrieve_info class RediRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cache_delete_params.rb b/lib/hanzoai/models/cache_delete_params.rb index 4b689b87..662fb7d3 100644 --- a/lib/hanzoai/models/cache_delete_params.rb +++ b/lib/hanzoai/models/cache_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cache#delete class CacheDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cache_flush_all_params.rb b/lib/hanzoai/models/cache_flush_all_params.rb index d80449b4..37d4fce0 100644 --- a/lib/hanzoai/models/cache_flush_all_params.rb +++ b/lib/hanzoai/models/cache_flush_all_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cache#flush_all class CacheFlushAllParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cache_ping_params.rb b/lib/hanzoai/models/cache_ping_params.rb index b9bba58e..e3a770b9 100644 --- a/lib/hanzoai/models/cache_ping_params.rb +++ b/lib/hanzoai/models/cache_ping_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cache#ping class CachePingParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/chat/completion_create_params.rb b/lib/hanzoai/models/chat/completion_create_params.rb index 2678cf8d..d6cbc0cd 100644 --- a/lib/hanzoai/models/chat/completion_create_params.rb +++ b/lib/hanzoai/models/chat/completion_create_params.rb @@ -5,8 +5,7 @@ module Models module Chat # @see Hanzoai::Resources::Chat::Completions#create class CompletionCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute model diff --git a/lib/hanzoai/models/client_get_home_params.rb b/lib/hanzoai/models/client_get_home_params.rb index c0ee2bb6..780bb951 100644 --- a/lib/hanzoai/models/client_get_home_params.rb +++ b/lib/hanzoai/models/client_get_home_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Client#get_home class ClientGetHomeParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cohere_create_params.rb b/lib/hanzoai/models/cohere_create_params.rb index 5fc33fd3..b4f14442 100644 --- a/lib/hanzoai/models/cohere_create_params.rb +++ b/lib/hanzoai/models/cohere_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cohere#create class CohereCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cohere_delete_params.rb b/lib/hanzoai/models/cohere_delete_params.rb index 179aa6c2..bc876698 100644 --- a/lib/hanzoai/models/cohere_delete_params.rb +++ b/lib/hanzoai/models/cohere_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cohere#delete class CohereDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cohere_modify_params.rb b/lib/hanzoai/models/cohere_modify_params.rb index 46681ab2..55112a4c 100644 --- a/lib/hanzoai/models/cohere_modify_params.rb +++ b/lib/hanzoai/models/cohere_modify_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cohere#modify class CohereModifyParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cohere_retrieve_params.rb b/lib/hanzoai/models/cohere_retrieve_params.rb index 2a29c352..4bb88352 100644 --- a/lib/hanzoai/models/cohere_retrieve_params.rb +++ b/lib/hanzoai/models/cohere_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cohere#retrieve class CohereRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/cohere_update_params.rb b/lib/hanzoai/models/cohere_update_params.rb index 24b8f7f1..f06cdff8 100644 --- a/lib/hanzoai/models/cohere_update_params.rb +++ b/lib/hanzoai/models/cohere_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Cohere#update class CohereUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/completion_create_params.rb b/lib/hanzoai/models/completion_create_params.rb index 31eb42ff..e13e7ca2 100644 --- a/lib/hanzoai/models/completion_create_params.rb +++ b/lib/hanzoai/models/completion_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Completions#create class CompletionCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute model diff --git a/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb index e4912273..0a741f95 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_create_params.rb @@ -5,8 +5,7 @@ module Models module Config # @see Hanzoai::Resources::Config::PassThroughEndpoint#create class PassThroughEndpointCreateParams < Hanzoai::Models::Config::PassThroughGenericEndpoint - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb index a85b62a5..fc21bf10 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rb @@ -5,8 +5,7 @@ module Models module Config # @see Hanzoai::Resources::Config::PassThroughEndpoint#delete class PassThroughEndpointDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute endpoint_id diff --git a/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb index dccd3449..5a39d638 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb @@ -5,8 +5,7 @@ module Models module Config # @see Hanzoai::Resources::Config::PassThroughEndpoint#list class PassThroughEndpointListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute endpoint_id diff --git a/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb index 14435977..ed4bb0d8 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb @@ -5,8 +5,7 @@ module Models module Config # @see Hanzoai::Resources::Config::PassThroughEndpoint#update class PassThroughEndpointUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/credential_create_params.rb b/lib/hanzoai/models/credential_create_params.rb index 910044d1..659e7e42 100644 --- a/lib/hanzoai/models/credential_create_params.rb +++ b/lib/hanzoai/models/credential_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Credentials#create class CredentialCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute credential_info diff --git a/lib/hanzoai/models/credential_delete_params.rb b/lib/hanzoai/models/credential_delete_params.rb index 4abef2fa..de176b59 100644 --- a/lib/hanzoai/models/credential_delete_params.rb +++ b/lib/hanzoai/models/credential_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Credentials#delete class CredentialDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/credential_list_params.rb b/lib/hanzoai/models/credential_list_params.rb index 31983d72..88767495 100644 --- a/lib/hanzoai/models/credential_list_params.rb +++ b/lib/hanzoai/models/credential_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Credentials#list class CredentialListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/customer_block_params.rb b/lib/hanzoai/models/customer_block_params.rb index b471d943..284cd00d 100644 --- a/lib/hanzoai/models/customer_block_params.rb +++ b/lib/hanzoai/models/customer_block_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Customer#block class CustomerBlockParams < Hanzoai::Models::BlockUsers - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index f7d14f04..e932ad03 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Customer#create class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute user_id @@ -25,15 +24,11 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel enum: -> { Hanzoai::Models::CustomerCreateParams::AllowedModelRegion }, nil?: true - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # Max duration budget should be set for (e.g. '1hr', '1d', '28d') # diff --git a/lib/hanzoai/models/customer_delete_params.rb b/lib/hanzoai/models/customer_delete_params.rb index fc21e876..ea278ce6 100644 --- a/lib/hanzoai/models/customer_delete_params.rb +++ b/lib/hanzoai/models/customer_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Customer#delete class CustomerDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute user_ids diff --git a/lib/hanzoai/models/customer_list_params.rb b/lib/hanzoai/models/customer_list_params.rb index 3a9831c5..1bbb3837 100644 --- a/lib/hanzoai/models/customer_list_params.rb +++ b/lib/hanzoai/models/customer_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Customer#list class CustomerListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/customer_list_response.rb b/lib/hanzoai/models/customer_list_response.rb index 8affe69e..5efeea46 100644 --- a/lib/hanzoai/models/customer_list_response.rb +++ b/lib/hanzoai/models/customer_list_response.rb @@ -36,15 +36,11 @@ class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, nil] optional :llm_budget_table, -> { Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) # @param blocked [Boolean] # @param user_id [String] diff --git a/lib/hanzoai/models/customer_retrieve_info_params.rb b/lib/hanzoai/models/customer_retrieve_info_params.rb index 5d4ff78c..3f9a0b82 100644 --- a/lib/hanzoai/models/customer_retrieve_info_params.rb +++ b/lib/hanzoai/models/customer_retrieve_info_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Customer#retrieve_info class CustomerRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute end_user_id diff --git a/lib/hanzoai/models/customer_retrieve_info_response.rb b/lib/hanzoai/models/customer_retrieve_info_response.rb index 88ebdd5b..71677314 100644 --- a/lib/hanzoai/models/customer_retrieve_info_response.rb +++ b/lib/hanzoai/models/customer_retrieve_info_response.rb @@ -39,15 +39,11 @@ class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) # @param blocked [Boolean] # @param user_id [String] diff --git a/lib/hanzoai/models/customer_unblock_params.rb b/lib/hanzoai/models/customer_unblock_params.rb index ae98c9fe..cea56f3e 100644 --- a/lib/hanzoai/models/customer_unblock_params.rb +++ b/lib/hanzoai/models/customer_unblock_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Customer#unblock class CustomerUnblockParams < Hanzoai::Models::BlockUsers - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/customer_update_params.rb b/lib/hanzoai/models/customer_update_params.rb index e86d8195..faa0c68f 100644 --- a/lib/hanzoai/models/customer_update_params.rb +++ b/lib/hanzoai/models/customer_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Customer#update class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute user_id @@ -25,15 +24,11 @@ class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel enum: -> { Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion }, nil?: true - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_id # # @return [String, nil] diff --git a/lib/hanzoai/models/delete_create_allowed_ip_params.rb b/lib/hanzoai/models/delete_create_allowed_ip_params.rb index 8762dbe2..d81e747d 100644 --- a/lib/hanzoai/models/delete_create_allowed_ip_params.rb +++ b/lib/hanzoai/models/delete_create_allowed_ip_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Delete#create_allowed_ip class DeleteCreateAllowedIPParams < Hanzoai::Models::IPAddress - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/embedding_create_params.rb b/lib/hanzoai/models/embedding_create_params.rb index 33281733..3dd53706 100644 --- a/lib/hanzoai/models/embedding_create_params.rb +++ b/lib/hanzoai/models/embedding_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Embeddings#create class EmbeddingCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute model diff --git a/lib/hanzoai/models/engine_complete_params.rb b/lib/hanzoai/models/engine_complete_params.rb index f05597c6..415d8083 100644 --- a/lib/hanzoai/models/engine_complete_params.rb +++ b/lib/hanzoai/models/engine_complete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Engines#complete class EngineCompleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/engine_embed_params.rb b/lib/hanzoai/models/engine_embed_params.rb index 1c9dfc9a..944afa3a 100644 --- a/lib/hanzoai/models/engine_embed_params.rb +++ b/lib/hanzoai/models/engine_embed_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Engines#embed class EngineEmbedParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/engines/chat_complete_params.rb b/lib/hanzoai/models/engines/chat_complete_params.rb index ef5437b1..cb3c5279 100644 --- a/lib/hanzoai/models/engines/chat_complete_params.rb +++ b/lib/hanzoai/models/engines/chat_complete_params.rb @@ -5,8 +5,7 @@ module Models module Engines # @see Hanzoai::Resources::Engines::Chat#complete class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/eu_assemblyai_create_params.rb b/lib/hanzoai/models/eu_assemblyai_create_params.rb index d150246d..3d79c9bb 100644 --- a/lib/hanzoai/models/eu_assemblyai_create_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::EuAssemblyai#create class EuAssemblyaiCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/eu_assemblyai_delete_params.rb b/lib/hanzoai/models/eu_assemblyai_delete_params.rb index b0334179..41be641e 100644 --- a/lib/hanzoai/models/eu_assemblyai_delete_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::EuAssemblyai#delete class EuAssemblyaiDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/eu_assemblyai_patch_params.rb b/lib/hanzoai/models/eu_assemblyai_patch_params.rb index f3aad6df..44e92ecb 100644 --- a/lib/hanzoai/models/eu_assemblyai_patch_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::EuAssemblyai#patch class EuAssemblyaiPatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb b/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb index bc2998f4..cf2ec073 100644 --- a/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::EuAssemblyai#retrieve class EuAssemblyaiRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/eu_assemblyai_update_params.rb b/lib/hanzoai/models/eu_assemblyai_update_params.rb index 45269487..9b9fb036 100644 --- a/lib/hanzoai/models/eu_assemblyai_update_params.rb +++ b/lib/hanzoai/models/eu_assemblyai_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::EuAssemblyai#update class EuAssemblyaiUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/file_create_params.rb b/lib/hanzoai/models/file_create_params.rb index 5d5bd55a..7f251ac8 100644 --- a/lib/hanzoai/models/file_create_params.rb +++ b/lib/hanzoai/models/file_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Files#create class FileCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute file @@ -18,15 +17,11 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :purpose, String - # @!attribute [r] custom_llm_provider + # @!attribute custom_llm_provider # # @return [String, nil] optional :custom_llm_provider, String - # @!parse - # # @return [String] - # attr_writer :custom_llm_provider - # @!method initialize(file:, purpose:, custom_llm_provider: nil, request_options: {}) # @param file [Pathname, StringIO] # @param purpose [String] diff --git a/lib/hanzoai/models/file_delete_params.rb b/lib/hanzoai/models/file_delete_params.rb index 0f0195d4..16e5759a 100644 --- a/lib/hanzoai/models/file_delete_params.rb +++ b/lib/hanzoai/models/file_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Files#delete class FileDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/file_list_params.rb b/lib/hanzoai/models/file_list_params.rb index a76d69ba..fc001b12 100644 --- a/lib/hanzoai/models/file_list_params.rb +++ b/lib/hanzoai/models/file_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Files#list class FileListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute purpose diff --git a/lib/hanzoai/models/file_retrieve_params.rb b/lib/hanzoai/models/file_retrieve_params.rb index b79df78e..6ce7c288 100644 --- a/lib/hanzoai/models/file_retrieve_params.rb +++ b/lib/hanzoai/models/file_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Files#retrieve class FileRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/files/content_retrieve_params.rb b/lib/hanzoai/models/files/content_retrieve_params.rb index 385eab1d..b873400a 100644 --- a/lib/hanzoai/models/files/content_retrieve_params.rb +++ b/lib/hanzoai/models/files/content_retrieve_params.rb @@ -5,8 +5,7 @@ module Models module Files # @see Hanzoai::Resources::Files::Content#retrieve class ContentRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute provider diff --git a/lib/hanzoai/models/fine_tuning/job_create_params.rb b/lib/hanzoai/models/fine_tuning/job_create_params.rb index e9fa564b..19c051c9 100644 --- a/lib/hanzoai/models/fine_tuning/job_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_create_params.rb @@ -5,8 +5,7 @@ module Models module FineTuning # @see Hanzoai::Resources::FineTuning::Jobs#create class JobCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute custom_llm_provider diff --git a/lib/hanzoai/models/fine_tuning/job_list_params.rb b/lib/hanzoai/models/fine_tuning/job_list_params.rb index 8070b614..10475c04 100644 --- a/lib/hanzoai/models/fine_tuning/job_list_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_list_params.rb @@ -5,8 +5,7 @@ module Models module FineTuning # @see Hanzoai::Resources::FineTuning::Jobs#list class JobListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute custom_llm_provider diff --git a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb index c1778e22..78be842b 100644 --- a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb @@ -5,8 +5,7 @@ module Models module FineTuning # @see Hanzoai::Resources::FineTuning::Jobs#retrieve class JobRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute custom_llm_provider diff --git a/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb b/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb index 6c94f483..401fc995 100644 --- a/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rb @@ -6,8 +6,7 @@ module FineTuning module Jobs # @see Hanzoai::Resources::FineTuning::Jobs::Cancel#create class CancelCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/gemini_create_params.rb b/lib/hanzoai/models/gemini_create_params.rb index f6a10297..6be7ffbc 100644 --- a/lib/hanzoai/models/gemini_create_params.rb +++ b/lib/hanzoai/models/gemini_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Gemini#create class GeminiCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/gemini_delete_params.rb b/lib/hanzoai/models/gemini_delete_params.rb index 1f96f953..de66ba65 100644 --- a/lib/hanzoai/models/gemini_delete_params.rb +++ b/lib/hanzoai/models/gemini_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Gemini#delete class GeminiDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/gemini_patch_params.rb b/lib/hanzoai/models/gemini_patch_params.rb index ec9f3da1..7b2d8da5 100644 --- a/lib/hanzoai/models/gemini_patch_params.rb +++ b/lib/hanzoai/models/gemini_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Gemini#patch class GeminiPatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/gemini_retrieve_params.rb b/lib/hanzoai/models/gemini_retrieve_params.rb index 3502d318..b49440f0 100644 --- a/lib/hanzoai/models/gemini_retrieve_params.rb +++ b/lib/hanzoai/models/gemini_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Gemini#retrieve class GeminiRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/gemini_update_params.rb b/lib/hanzoai/models/gemini_update_params.rb index b413c226..62de1705 100644 --- a/lib/hanzoai/models/gemini_update_params.rb +++ b/lib/hanzoai/models/gemini_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Gemini#update class GeminiUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/generate_key_response.rb b/lib/hanzoai/models/generate_key_response.rb index e4981799..5b2dfb30 100644 --- a/lib/hanzoai/models/generate_key_response.rb +++ b/lib/hanzoai/models/generate_key_response.rb @@ -81,15 +81,11 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_name, String, nil?: true - # @!attribute [r] llm_budget_table + # @!attribute llm_budget_table # # @return [Object, nil] optional :llm_budget_table, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :llm_budget_table - # @!attribute max_budget # # @return [Float, nil] diff --git a/lib/hanzoai/models/global/spend_list_tags_params.rb b/lib/hanzoai/models/global/spend_list_tags_params.rb index b63d6b3f..73449d03 100644 --- a/lib/hanzoai/models/global/spend_list_tags_params.rb +++ b/lib/hanzoai/models/global/spend_list_tags_params.rb @@ -5,8 +5,7 @@ module Models module Global # @see Hanzoai::Resources::Global::Spend#list_tags class SpendListTagsParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute end_date diff --git a/lib/hanzoai/models/global/spend_list_tags_response.rb b/lib/hanzoai/models/global/spend_list_tags_response.rb index 8e930cb4..9646e7cc 100644 --- a/lib/hanzoai/models/global/spend_list_tags_response.rb +++ b/lib/hanzoai/models/global/spend_list_tags_response.rb @@ -65,15 +65,11 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :completion_tokens, Integer, nil?: true - # @!attribute [r] metadata + # @!attribute metadata # # @return [Object, nil] optional :metadata, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :metadata - # @!attribute model # # @return [String, nil] @@ -84,15 +80,11 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :prompt_tokens, Integer, nil?: true - # @!attribute [r] request_tags + # @!attribute request_tags # # @return [Object, nil] optional :request_tags, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :request_tags - # @!attribute requester_ip_address # # @return [String, nil] diff --git a/lib/hanzoai/models/global/spend_reset_params.rb b/lib/hanzoai/models/global/spend_reset_params.rb index fb5b5d2e..19a40562 100644 --- a/lib/hanzoai/models/global/spend_reset_params.rb +++ b/lib/hanzoai/models/global/spend_reset_params.rb @@ -5,8 +5,7 @@ module Models module Global # @see Hanzoai::Resources::Global::Spend#reset class SpendResetParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/global/spend_retrieve_report_params.rb b/lib/hanzoai/models/global/spend_retrieve_report_params.rb index c343bcb3..7a3fa11e 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_params.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_params.rb @@ -5,8 +5,7 @@ module Models module Global # @see Hanzoai::Resources::Global::Spend#retrieve_report class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute api_key diff --git a/lib/hanzoai/models/global/spend_retrieve_report_response.rb b/lib/hanzoai/models/global/spend_retrieve_report_response.rb index 0bf360d4..baa90960 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_response.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_response.rb @@ -69,15 +69,11 @@ class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :completion_tokens, Integer, nil?: true - # @!attribute [r] metadata + # @!attribute metadata # # @return [Object, nil] optional :metadata, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :metadata - # @!attribute model # # @return [String, nil] @@ -88,15 +84,11 @@ class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :prompt_tokens, Integer, nil?: true - # @!attribute [r] request_tags + # @!attribute request_tags # # @return [Object, nil] optional :request_tags, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :request_tags - # @!attribute requester_ip_address # # @return [String, nil] diff --git a/lib/hanzoai/models/guardrail_list_params.rb b/lib/hanzoai/models/guardrail_list_params.rb index 63c29aaa..fa0eaacf 100644 --- a/lib/hanzoai/models/guardrail_list_params.rb +++ b/lib/hanzoai/models/guardrail_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Guardrails#list class GuardrailListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index 18115b47..2fe61606 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -47,15 +47,11 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, Array] required :mode, union: -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode } - # @!attribute [r] default_on + # @!attribute default_on # # @return [Boolean, nil] optional :default_on, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :default_on - # @!method initialize(guardrail:, mode:, default_on: nil) # The returned LLM Params object for /guardrails/list # diff --git a/lib/hanzoai/models/health_check_all_params.rb b/lib/hanzoai/models/health_check_all_params.rb index cc9e437a..d4fe1b98 100644 --- a/lib/hanzoai/models/health_check_all_params.rb +++ b/lib/hanzoai/models/health_check_all_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Health#check_all class HealthCheckAllParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute model diff --git a/lib/hanzoai/models/health_check_liveliness_params.rb b/lib/hanzoai/models/health_check_liveliness_params.rb index 646a403a..45c39688 100644 --- a/lib/hanzoai/models/health_check_liveliness_params.rb +++ b/lib/hanzoai/models/health_check_liveliness_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Health#check_liveliness class HealthCheckLivelinessParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/health_check_liveness_params.rb b/lib/hanzoai/models/health_check_liveness_params.rb index 23d5ab88..d2d979fa 100644 --- a/lib/hanzoai/models/health_check_liveness_params.rb +++ b/lib/hanzoai/models/health_check_liveness_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Health#check_liveness class HealthCheckLivenessParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/health_check_readiness_params.rb b/lib/hanzoai/models/health_check_readiness_params.rb index 71d46c3f..23cff7bf 100644 --- a/lib/hanzoai/models/health_check_readiness_params.rb +++ b/lib/hanzoai/models/health_check_readiness_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Health#check_readiness class HealthCheckReadinessParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/health_check_services_params.rb b/lib/hanzoai/models/health_check_services_params.rb index 9134c43b..35fccfac 100644 --- a/lib/hanzoai/models/health_check_services_params.rb +++ b/lib/hanzoai/models/health_check_services_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Health#check_services class HealthCheckServicesParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute service diff --git a/lib/hanzoai/models/images/generation_create_params.rb b/lib/hanzoai/models/images/generation_create_params.rb index f1d1f4bf..d9554d11 100644 --- a/lib/hanzoai/models/images/generation_create_params.rb +++ b/lib/hanzoai/models/images/generation_create_params.rb @@ -5,8 +5,7 @@ module Models module Images # @see Hanzoai::Resources::Images::Generations#create class GenerationCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/key_block_params.rb b/lib/hanzoai/models/key_block_params.rb index c45f4948..6bedc7e2 100644 --- a/lib/hanzoai/models/key_block_params.rb +++ b/lib/hanzoai/models/key_block_params.rb @@ -4,21 +4,16 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#block class KeyBlockParams < Hanzoai::Models::BlockKeyRequest - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(llm_changed_by: nil, request_options: {}) # @param llm_changed_by [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/key_block_response.rb b/lib/hanzoai/models/key_block_response.rb index c26f4eaa..08b207b5 100644 --- a/lib/hanzoai/models/key_block_response.rb +++ b/lib/hanzoai/models/key_block_response.rb @@ -9,15 +9,11 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :token, String, nil?: true - # @!attribute [r] aliases + # @!attribute aliases # # @return [Object, nil] optional :aliases, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :aliases - # @!attribute allowed_cache_controls # # @return [Array, nil] @@ -40,15 +36,11 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @return [Time, nil] optional :budget_reset_at, Time, nil?: true - # @!attribute [r] config + # @!attribute config # # @return [Object, nil] optional :config, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :config - # @!attribute created_at # # @return [Time, nil] @@ -89,79 +81,51 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] metadata + # @!attribute metadata # # @return [Object, nil] optional :metadata, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :metadata - - # @!attribute [r] model_max_budget + # @!attribute model_max_budget # # @return [Object, nil] optional :model_max_budget, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :model_max_budget - - # @!attribute [r] model_spend + # @!attribute model_spend # # @return [Object, nil] optional :model_spend, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :model_spend - - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute org_id # # @return [String, nil] optional :org_id, String, nil?: true - # @!attribute [r] permissions + # @!attribute permissions # # @return [Object, nil] optional :permissions, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :permissions - # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true - # @!attribute [r] soft_budget_cooldown + # @!attribute soft_budget_cooldown # # @return [Boolean, nil] optional :soft_budget_cooldown, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :soft_budget_cooldown - - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - # @!attribute team_id # # @return [String, nil] diff --git a/lib/hanzoai/models/key_check_health_params.rb b/lib/hanzoai/models/key_check_health_params.rb index a185d7f2..9861c097 100644 --- a/lib/hanzoai/models/key_check_health_params.rb +++ b/lib/hanzoai/models/key_check_health_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#check_health class KeyCheckHealthParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/key_check_health_response.rb b/lib/hanzoai/models/key_check_health_response.rb index 73ef4b2b..d1650071 100644 --- a/lib/hanzoai/models/key_check_health_response.rb +++ b/lib/hanzoai/models/key_check_health_response.rb @@ -4,15 +4,11 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#check_health class KeyCheckHealthResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute [r] key + # @!attribute key # # @return [Symbol, Hanzoai::Models::KeyCheckHealthResponse::Key, nil] optional :key, enum: -> { Hanzoai::Models::KeyCheckHealthResponse::Key } - # @!parse - # # @return [Symbol, Hanzoai::Models::KeyCheckHealthResponse::Key] - # attr_writer :key - # @!attribute logging_callbacks # # @return [Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks, nil] @@ -35,29 +31,21 @@ module Key # @see Hanzoai::Models::KeyCheckHealthResponse#logging_callbacks class LoggingCallbacks < Hanzoai::Internal::Type::BaseModel - # @!attribute [r] callbacks + # @!attribute callbacks # # @return [Array, nil] optional :callbacks, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @return [Array] - # attr_writer :callbacks - # @!attribute details # # @return [String, nil] optional :details, String, nil?: true - # @!attribute [r] status + # @!attribute status # # @return [Symbol, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status, nil] optional :status, enum: -> { Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status } - # @!parse - # # @return [Symbol, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status] - # attr_writer :status - # @!method initialize(callbacks: nil, details: nil, status: nil) # @param callbacks [Array] # @param details [String, nil] diff --git a/lib/hanzoai/models/key_delete_params.rb b/lib/hanzoai/models/key_delete_params.rb index 45734f51..e60319f1 100644 --- a/lib/hanzoai/models/key_delete_params.rb +++ b/lib/hanzoai/models/key_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#delete class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute key_aliases @@ -18,17 +17,13 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array, nil] optional :keys, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) # @param key_aliases [Array, nil] # @param keys [Array, nil] diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index a390c456..987b3590 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#generate class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute aliases @@ -145,17 +144,13 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # @param aliases [Object, nil] # @param allowed_cache_controls [Array, nil] diff --git a/lib/hanzoai/models/key_list_params.rb b/lib/hanzoai/models/key_list_params.rb index 8caecf95..46badb1a 100644 --- a/lib/hanzoai/models/key_list_params.rb +++ b/lib/hanzoai/models/key_list_params.rb @@ -4,20 +4,15 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#list class KeyListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] include_team_keys + # @!attribute include_team_keys # Include all keys for teams that user is an admin of. # # @return [Boolean, nil] optional :include_team_keys, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :include_team_keys - # @!attribute key_alias # Filter keys by key alias # @@ -30,36 +25,24 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :organization_id, String, nil?: true - # @!attribute [r] page + # @!attribute page # Page number # # @return [Integer, nil] optional :page, Integer - # @!parse - # # @return [Integer] - # attr_writer :page - - # @!attribute [r] return_full_object + # @!attribute return_full_object # Return full key object # # @return [Boolean, nil] optional :return_full_object, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :return_full_object - - # @!attribute [r] size + # @!attribute size # Page size # # @return [Integer, nil] optional :size, Integer - # @!parse - # # @return [Integer] - # attr_writer :size - # @!attribute team_id # Filter keys by team ID # diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index 97d48b1e..86a1eb32 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -9,15 +9,11 @@ class KeyListResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :current_page, Integer, nil?: true - # @!attribute [r] keys + # @!attribute keys # # @return [Array, nil] optional :keys, -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Models::KeyListResponse::Key] } - # @!parse - # # @return [Array] - # attr_writer :keys - # @!attribute total_count # # @return [Integer, nil] @@ -49,15 +45,11 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :token, String, nil?: true - # @!attribute [r] aliases + # @!attribute aliases # # @return [Object, nil] optional :aliases, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :aliases - # @!attribute allowed_cache_controls # # @return [Array, nil] @@ -92,15 +84,11 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [Time, nil] optional :budget_reset_at, Time, nil?: true - # @!attribute [r] config + # @!attribute config # # @return [Object, nil] optional :config, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :config - # @!attribute created_at # # @return [Time, nil] @@ -168,65 +156,41 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] metadata + # @!attribute metadata # # @return [Object, nil] optional :metadata, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :metadata - - # @!attribute [r] model_max_budget + # @!attribute model_max_budget # # @return [Object, nil] optional :model_max_budget, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :model_max_budget - - # @!attribute [r] model_spend + # @!attribute model_spend # # @return [Object, nil] optional :model_spend, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :model_spend - - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute org_id # # @return [String, nil] optional :org_id, String, nil?: true - # @!attribute [r] parent_otel_span + # @!attribute parent_otel_span # # @return [Object, nil] optional :parent_otel_span, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :parent_otel_span - - # @!attribute [r] permissions + # @!attribute permissions # # @return [Object, nil] optional :permissions, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :permissions - # @!attribute rpm_limit # # @return [Integer, nil] @@ -242,38 +206,26 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :soft_budget, Float, nil?: true - # @!attribute [r] soft_budget_cooldown + # @!attribute soft_budget_cooldown # # @return [Boolean, nil] optional :soft_budget_cooldown, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :soft_budget_cooldown - - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - # @!attribute team_alias # # @return [String, nil] optional :team_alias, String, nil?: true - # @!attribute [r] team_blocked + # @!attribute team_blocked # # @return [Boolean, nil] optional :team_blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :team_blocked - # @!attribute team_id # # @return [String, nil] @@ -304,15 +256,11 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [Object, nil] optional :team_model_aliases, Hanzoai::Internal::Type::Unknown, nil?: true - # @!attribute [r] team_models + # @!attribute team_models # # @return [Array, nil] optional :team_models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :team_models - # @!attribute team_rpm_limit # # @return [Integer, nil] diff --git a/lib/hanzoai/models/key_regenerate_by_key_params.rb b/lib/hanzoai/models/key_regenerate_by_key_params.rb index f1500657..b36061af 100644 --- a/lib/hanzoai/models/key_regenerate_by_key_params.rb +++ b/lib/hanzoai/models/key_regenerate_by_key_params.rb @@ -4,21 +4,16 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#regenerate_by_key class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(llm_changed_by: nil, request_options: {}) # @param llm_changed_by [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/key_retrieve_info_params.rb b/lib/hanzoai/models/key_retrieve_info_params.rb index 31091f13..66eb5cc0 100644 --- a/lib/hanzoai/models/key_retrieve_info_params.rb +++ b/lib/hanzoai/models/key_retrieve_info_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#retrieve_info class KeyRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute key diff --git a/lib/hanzoai/models/key_unblock_params.rb b/lib/hanzoai/models/key_unblock_params.rb index 4c699ee9..6f65021b 100644 --- a/lib/hanzoai/models/key_unblock_params.rb +++ b/lib/hanzoai/models/key_unblock_params.rb @@ -4,21 +4,16 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#unblock class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(llm_changed_by: nil, request_options: {}) # @param llm_changed_by [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index 293b7325..f2a6f2ee 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#update class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute key @@ -145,17 +144,13 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(key:, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # @param key [String] # @param aliases [Object, nil] diff --git a/lib/hanzoai/models/langfuse_create_params.rb b/lib/hanzoai/models/langfuse_create_params.rb index 9f0b5d03..64d3f87b 100644 --- a/lib/hanzoai/models/langfuse_create_params.rb +++ b/lib/hanzoai/models/langfuse_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Langfuse#create class LangfuseCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/langfuse_delete_params.rb b/lib/hanzoai/models/langfuse_delete_params.rb index 1a0f1076..59faece0 100644 --- a/lib/hanzoai/models/langfuse_delete_params.rb +++ b/lib/hanzoai/models/langfuse_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Langfuse#delete class LangfuseDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/langfuse_patch_params.rb b/lib/hanzoai/models/langfuse_patch_params.rb index 08adca6d..8fc5593f 100644 --- a/lib/hanzoai/models/langfuse_patch_params.rb +++ b/lib/hanzoai/models/langfuse_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Langfuse#patch class LangfusePatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/langfuse_retrieve_params.rb b/lib/hanzoai/models/langfuse_retrieve_params.rb index af31f62e..258bd4d6 100644 --- a/lib/hanzoai/models/langfuse_retrieve_params.rb +++ b/lib/hanzoai/models/langfuse_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Langfuse#retrieve class LangfuseRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/langfuse_update_params.rb b/lib/hanzoai/models/langfuse_update_params.rb index 78ba6904..a557983c 100644 --- a/lib/hanzoai/models/langfuse_update_params.rb +++ b/lib/hanzoai/models/langfuse_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Langfuse#update class LangfuseUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/model/info_list_params.rb b/lib/hanzoai/models/model/info_list_params.rb index 25a6a88c..bdf34c57 100644 --- a/lib/hanzoai/models/model/info_list_params.rb +++ b/lib/hanzoai/models/model/info_list_params.rb @@ -5,8 +5,7 @@ module Models module Model # @see Hanzoai::Resources::Model::Info#list class InfoListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute llm_model_id diff --git a/lib/hanzoai/models/model/update_full_params.rb b/lib/hanzoai/models/model/update_full_params.rb index bb67e804..cc6d3463 100644 --- a/lib/hanzoai/models/model/update_full_params.rb +++ b/lib/hanzoai/models/model/update_full_params.rb @@ -5,8 +5,7 @@ module Models module Model # @see Hanzoai::Resources::Model::Update#full class UpdateFullParams < Hanzoai::Models::Model::UpdateDeployment - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/model/update_partial_params.rb b/lib/hanzoai/models/model/update_partial_params.rb index 7f3983c8..ee683c59 100644 --- a/lib/hanzoai/models/model/update_partial_params.rb +++ b/lib/hanzoai/models/model/update_partial_params.rb @@ -5,8 +5,7 @@ module Models module Model # @see Hanzoai::Resources::Model::Update#partial class UpdatePartialParams < Hanzoai::Models::Model::UpdateDeployment - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index 2ebcc1e2..74b2e0d6 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Model#create class ModelCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute llm_params diff --git a/lib/hanzoai/models/model_delete_params.rb b/lib/hanzoai/models/model_delete_params.rb index 149836f1..acbf492b 100644 --- a/lib/hanzoai/models/model_delete_params.rb +++ b/lib/hanzoai/models/model_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Model#delete class ModelDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute id diff --git a/lib/hanzoai/models/model_group_retrieve_info_params.rb b/lib/hanzoai/models/model_group_retrieve_info_params.rb index d91f7d48..9699e074 100644 --- a/lib/hanzoai/models/model_group_retrieve_info_params.rb +++ b/lib/hanzoai/models/model_group_retrieve_info_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::ModelGroup#retrieve_info class ModelGroupRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute model_group diff --git a/lib/hanzoai/models/model_info.rb b/lib/hanzoai/models/model_info.rb index a971b278..69195ee3 100644 --- a/lib/hanzoai/models/model_info.rb +++ b/lib/hanzoai/models/model_info.rb @@ -23,15 +23,11 @@ class ModelInfo < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :created_by, String, nil?: true - # @!attribute [r] db_model + # @!attribute db_model # # @return [Boolean, nil] optional :db_model, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :db_model - # @!attribute team_id # # @return [String, nil] diff --git a/lib/hanzoai/models/model_list_params.rb b/lib/hanzoai/models/model_list_params.rb index 99d300ca..dfb69a0a 100644 --- a/lib/hanzoai/models/model_list_params.rb +++ b/lib/hanzoai/models/model_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Models#list class ModelListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute return_wildcard_routes diff --git a/lib/hanzoai/models/moderation_create_params.rb b/lib/hanzoai/models/moderation_create_params.rb index d39719b0..788d45af 100644 --- a/lib/hanzoai/models/moderation_create_params.rb +++ b/lib/hanzoai/models/moderation_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Moderations#create class ModerationCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai/deployment_complete_params.rb b/lib/hanzoai/models/openai/deployment_complete_params.rb index 4ecc7b32..617460a6 100644 --- a/lib/hanzoai/models/openai/deployment_complete_params.rb +++ b/lib/hanzoai/models/openai/deployment_complete_params.rb @@ -5,8 +5,7 @@ module Models module OpenAI # @see Hanzoai::Resources::OpenAI::Deployments#complete class DeploymentCompleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai/deployment_embed_params.rb b/lib/hanzoai/models/openai/deployment_embed_params.rb index dc96dbcd..355ad13a 100644 --- a/lib/hanzoai/models/openai/deployment_embed_params.rb +++ b/lib/hanzoai/models/openai/deployment_embed_params.rb @@ -5,8 +5,7 @@ module Models module OpenAI # @see Hanzoai::Resources::OpenAI::Deployments#embed class DeploymentEmbedParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai/deployments/chat_complete_params.rb b/lib/hanzoai/models/openai/deployments/chat_complete_params.rb index 4d069948..9051ce46 100644 --- a/lib/hanzoai/models/openai/deployments/chat_complete_params.rb +++ b/lib/hanzoai/models/openai/deployments/chat_complete_params.rb @@ -6,8 +6,7 @@ module OpenAI module Deployments # @see Hanzoai::Resources::OpenAI::Deployments::Chat#complete class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai_create_params.rb b/lib/hanzoai/models/openai_create_params.rb index a3a7dbcd..a846db80 100644 --- a/lib/hanzoai/models/openai_create_params.rb +++ b/lib/hanzoai/models/openai_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::OpenAI#create class OpenAICreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai_delete_params.rb b/lib/hanzoai/models/openai_delete_params.rb index 98e7f6fc..f5499fa6 100644 --- a/lib/hanzoai/models/openai_delete_params.rb +++ b/lib/hanzoai/models/openai_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::OpenAI#delete class OpenAIDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai_patch_params.rb b/lib/hanzoai/models/openai_patch_params.rb index d9c378c5..1d84466b 100644 --- a/lib/hanzoai/models/openai_patch_params.rb +++ b/lib/hanzoai/models/openai_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::OpenAI#patch class OpenAIPatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai_retrieve_params.rb b/lib/hanzoai/models/openai_retrieve_params.rb index e53da6c4..ce89c155 100644 --- a/lib/hanzoai/models/openai_retrieve_params.rb +++ b/lib/hanzoai/models/openai_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::OpenAI#retrieve class OpenAIRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/openai_update_params.rb b/lib/hanzoai/models/openai_update_params.rb index 015df968..5ff3e81f 100644 --- a/lib/hanzoai/models/openai_update_params.rb +++ b/lib/hanzoai/models/openai_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::OpenAI#update class OpenAIUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/organization/info_deprecated_params.rb b/lib/hanzoai/models/organization/info_deprecated_params.rb index 12698db1..4802da70 100644 --- a/lib/hanzoai/models/organization/info_deprecated_params.rb +++ b/lib/hanzoai/models/organization/info_deprecated_params.rb @@ -5,8 +5,7 @@ module Models module Organization # @see Hanzoai::Resources::Organization::Info#deprecated class InfoDeprecatedParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute organizations diff --git a/lib/hanzoai/models/organization/info_retrieve_params.rb b/lib/hanzoai/models/organization/info_retrieve_params.rb index 0516082f..5eb2fdf6 100644 --- a/lib/hanzoai/models/organization/info_retrieve_params.rb +++ b/lib/hanzoai/models/organization/info_retrieve_params.rb @@ -5,8 +5,7 @@ module Models module Organization # @see Hanzoai::Resources::Organization::Info#retrieve class InfoRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute organization_id diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index 5d01be58..a6821047 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -43,16 +43,12 @@ class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable }, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Organization::InfoRetrieveResponse::Member] } - # @!parse - # # @return [Array] - # attr_writer :members - # @!attribute metadata # # @return [Object, nil] @@ -68,25 +64,17 @@ class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :organization_id, String, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] teams + # @!attribute teams # # @return [Array, nil] optional :teams, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] } - # @!parse - # # @return [Array] - # attr_writer :teams - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) # Returned by the /organization/info endpoint and /organization/list endpoint # @@ -187,24 +175,16 @@ class Member < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] @@ -280,24 +260,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!attribute [r] admins + # @!attribute admins # # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :admins - - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # # @return [String, nil] @@ -330,24 +302,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :members - - # @!attribute [r] members_with_roles + # @!attribute members_with_roles # # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } - # @!parse - # # @return [Array] - # attr_writer :members_with_roles - # @!attribute metadata # # @return [Object, nil] @@ -358,15 +322,11 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :model_id, Integer, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] diff --git a/lib/hanzoai/models/organization_add_member_params.rb b/lib/hanzoai/models/organization_add_member_params.rb index 71de651f..a91e76fe 100644 --- a/lib/hanzoai/models/organization_add_member_params.rb +++ b/lib/hanzoai/models/organization_add_member_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Organization#add_member class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute member diff --git a/lib/hanzoai/models/organization_add_member_response.rb b/lib/hanzoai/models/organization_add_member_response.rb index a59d9128..9aa15901 100644 --- a/lib/hanzoai/models/organization_add_member_response.rb +++ b/lib/hanzoai/models/organization_add_member_response.rb @@ -60,24 +60,16 @@ class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] @@ -183,15 +175,11 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Object, nil] optional :model_spend, Hanzoai::Internal::Type::Unknown, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_memberships # # @return [Array, nil] @@ -204,29 +192,21 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - # @!attribute sso_user_id # # @return [String, nil] optional :sso_user_id, String, nil?: true - # @!attribute [r] teams + # @!attribute teams # # @return [Array, nil] optional :teams, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @return [Array] - # attr_writer :teams - # @!attribute tpm_limit # # @return [Integer, nil] @@ -294,24 +274,16 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] diff --git a/lib/hanzoai/models/organization_create_params.rb b/lib/hanzoai/models/organization_create_params.rb index 32435199..fb7903c2 100644 --- a/lib/hanzoai/models/organization_create_params.rb +++ b/lib/hanzoai/models/organization_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Organization#create class OrganizationCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute organization_alias @@ -43,15 +42,11 @@ class OrganizationCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Object, nil] optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] diff --git a/lib/hanzoai/models/organization_create_response.rb b/lib/hanzoai/models/organization_create_response.rb index 463103d0..7733bd90 100644 --- a/lib/hanzoai/models/organization_create_response.rb +++ b/lib/hanzoai/models/organization_create_response.rb @@ -49,15 +49,11 @@ class OrganizationCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :organization_alias, String, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - # @!method initialize(budget_id:, created_at:, created_by:, models:, organization_id:, updated_at:, updated_by:, metadata: nil, organization_alias: nil, spend: nil) # @param budget_id [String] # @param created_at [Time] diff --git a/lib/hanzoai/models/organization_delete_member_params.rb b/lib/hanzoai/models/organization_delete_member_params.rb index c37372b0..0ce0ed66 100644 --- a/lib/hanzoai/models/organization_delete_member_params.rb +++ b/lib/hanzoai/models/organization_delete_member_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Organization#delete_member class OrganizationDeleteMemberParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute organization_id diff --git a/lib/hanzoai/models/organization_delete_params.rb b/lib/hanzoai/models/organization_delete_params.rb index 8c0eb5b6..932264e9 100644 --- a/lib/hanzoai/models/organization_delete_params.rb +++ b/lib/hanzoai/models/organization_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Organization#delete class OrganizationDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute organization_ids diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index 323b56e1..318095fb 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -41,16 +41,12 @@ class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable }, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationDeleteResponseItem::Member] } - # @!parse - # # @return [Array] - # attr_writer :members - # @!attribute metadata # # @return [Object, nil] @@ -66,25 +62,17 @@ class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :organization_id, String, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] teams + # @!attribute teams # # @return [Array, nil] optional :teams, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationDeleteResponseItem::Team] } - # @!parse - # # @return [Array] - # attr_writer :teams - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) # Returned by the /organization/info endpoint and /organization/list endpoint # @@ -185,24 +173,16 @@ class Member < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] @@ -278,24 +258,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!attribute [r] admins + # @!attribute admins # # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :admins - - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # # @return [String, nil] @@ -328,24 +300,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :members - - # @!attribute [r] members_with_roles + # @!attribute members_with_roles # # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } - # @!parse - # # @return [Array] - # attr_writer :members_with_roles - # @!attribute metadata # # @return [Object, nil] @@ -356,15 +320,11 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :model_id, Integer, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] diff --git a/lib/hanzoai/models/organization_list_params.rb b/lib/hanzoai/models/organization_list_params.rb index 62b4fcac..a35fba6d 100644 --- a/lib/hanzoai/models/organization_list_params.rb +++ b/lib/hanzoai/models/organization_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Organization#list class OrganizationListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index 35c30c72..426da6a0 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -41,16 +41,12 @@ class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable }, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationListResponseItem::Member] } - # @!parse - # # @return [Array] - # attr_writer :members - # @!attribute metadata # # @return [Object, nil] @@ -66,25 +62,17 @@ class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :organization_id, String, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] teams + # @!attribute teams # # @return [Array, nil] optional :teams, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationListResponseItem::Team] } - # @!parse - # # @return [Array] - # attr_writer :teams - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) # Returned by the /organization/info endpoint and /organization/list endpoint # @@ -185,24 +173,16 @@ class Member < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] @@ -278,24 +258,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!attribute [r] admins + # @!attribute admins # # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :admins - - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # # @return [String, nil] @@ -328,24 +300,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :members - - # @!attribute [r] members_with_roles + # @!attribute members_with_roles # # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } - # @!parse - # # @return [Array] - # attr_writer :members_with_roles - # @!attribute metadata # # @return [Object, nil] @@ -356,15 +320,11 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :model_id, Integer, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] diff --git a/lib/hanzoai/models/organization_update_member_params.rb b/lib/hanzoai/models/organization_update_member_params.rb index da95398e..4e57c9d1 100644 --- a/lib/hanzoai/models/organization_update_member_params.rb +++ b/lib/hanzoai/models/organization_update_member_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Organization#update_member class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute organization_id diff --git a/lib/hanzoai/models/organization_update_member_response.rb b/lib/hanzoai/models/organization_update_member_response.rb index 9faf5f47..7d7fa07d 100644 --- a/lib/hanzoai/models/organization_update_member_response.rb +++ b/lib/hanzoai/models/organization_update_member_response.rb @@ -37,24 +37,16 @@ class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] diff --git a/lib/hanzoai/models/organization_update_params.rb b/lib/hanzoai/models/organization_update_params.rb index ff92ceb3..c69444ed 100644 --- a/lib/hanzoai/models/organization_update_params.rb +++ b/lib/hanzoai/models/organization_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Organization#update class OrganizationUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute budget_id diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index a8acc43d..35f89ce1 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -40,16 +40,12 @@ class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel # @return [Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, nil] optional :llm_budget_table, -> { Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable }, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationUpdateResponse::Member] } - # @!parse - # # @return [Array] - # attr_writer :members - # @!attribute metadata # # @return [Object, nil] @@ -65,25 +61,17 @@ class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :organization_id, String, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] teams + # @!attribute teams # # @return [Array, nil] optional :teams, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationUpdateResponse::Team] } - # @!parse - # # @return [Array] - # attr_writer :teams - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) # Returned by the /organization/info endpoint and /organization/list endpoint # @@ -184,24 +172,16 @@ class Member < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] @@ -277,24 +257,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!attribute [r] admins + # @!attribute admins # # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :admins - - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # # @return [String, nil] @@ -327,24 +299,16 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :members - - # @!attribute [r] members_with_roles + # @!attribute members_with_roles # # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } - # @!parse - # # @return [Array] - # attr_writer :members_with_roles - # @!attribute metadata # # @return [Object, nil] @@ -355,15 +319,11 @@ class Team < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :model_id, Integer, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] diff --git a/lib/hanzoai/models/provider_list_budgets_params.rb b/lib/hanzoai/models/provider_list_budgets_params.rb index 314e8c4c..74a669f8 100644 --- a/lib/hanzoai/models/provider_list_budgets_params.rb +++ b/lib/hanzoai/models/provider_list_budgets_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Provider#list_budgets class ProviderListBudgetsParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/provider_list_budgets_response.rb b/lib/hanzoai/models/provider_list_budgets_response.rb index 17a7ac95..8f7a2dce 100644 --- a/lib/hanzoai/models/provider_list_budgets_response.rb +++ b/lib/hanzoai/models/provider_list_budgets_response.rb @@ -4,16 +4,12 @@ module Hanzoai module Models # @see Hanzoai::Resources::Provider#list_budgets class ProviderListBudgetsResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute [r] providers + # @!attribute providers # # @return [Hash{Symbol=>Hanzoai::Models::ProviderListBudgetsResponse::Provider}, nil] optional :providers, -> { Hanzoai::Internal::Type::HashOf[Hanzoai::Models::ProviderListBudgetsResponse::Provider] } - # @!parse - # # @return [Hash{Symbol=>Hanzoai::Models::ProviderListBudgetsResponse::Provider}] - # attr_writer :providers - # @!method initialize(providers: nil) # Complete provider budget configuration and status. Maps provider names to their # budget configs. diff --git a/lib/hanzoai/models/rerank_create_params.rb b/lib/hanzoai/models/rerank_create_params.rb index 3f4957c8..c4c1fad0 100644 --- a/lib/hanzoai/models/rerank_create_params.rb +++ b/lib/hanzoai/models/rerank_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Rerank#create class RerankCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/rerank_create_v1_params.rb b/lib/hanzoai/models/rerank_create_v1_params.rb index ae0b2012..9afe57d8 100644 --- a/lib/hanzoai/models/rerank_create_v1_params.rb +++ b/lib/hanzoai/models/rerank_create_v1_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Rerank#create_v1 class RerankCreateV1Params < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/rerank_create_v2_params.rb b/lib/hanzoai/models/rerank_create_v2_params.rb index b12af843..8b82031b 100644 --- a/lib/hanzoai/models/rerank_create_v2_params.rb +++ b/lib/hanzoai/models/rerank_create_v2_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Rerank#create_v2 class RerankCreateV2Params < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/response_create_params.rb b/lib/hanzoai/models/response_create_params.rb index 02773912..dcc968e4 100644 --- a/lib/hanzoai/models/response_create_params.rb +++ b/lib/hanzoai/models/response_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Responses#create class ResponseCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/response_delete_params.rb b/lib/hanzoai/models/response_delete_params.rb index 56a75e8f..67682982 100644 --- a/lib/hanzoai/models/response_delete_params.rb +++ b/lib/hanzoai/models/response_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Responses#delete class ResponseDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/response_retrieve_params.rb b/lib/hanzoai/models/response_retrieve_params.rb index b0265ab4..351d30a5 100644 --- a/lib/hanzoai/models/response_retrieve_params.rb +++ b/lib/hanzoai/models/response_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Responses#retrieve class ResponseRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/responses/input_item_list_params.rb b/lib/hanzoai/models/responses/input_item_list_params.rb index 8fa8aded..b5fb813c 100644 --- a/lib/hanzoai/models/responses/input_item_list_params.rb +++ b/lib/hanzoai/models/responses/input_item_list_params.rb @@ -5,8 +5,7 @@ module Models module Responses # @see Hanzoai::Resources::Responses::InputItems#list class InputItemListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/route_list_params.rb b/lib/hanzoai/models/route_list_params.rb index e48bcb2a..1e56e3cb 100644 --- a/lib/hanzoai/models/route_list_params.rb +++ b/lib/hanzoai/models/route_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Routes#list class RouteListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/setting_retrieve_params.rb b/lib/hanzoai/models/setting_retrieve_params.rb index 54ad7ec0..fad0d6e9 100644 --- a/lib/hanzoai/models/setting_retrieve_params.rb +++ b/lib/hanzoai/models/setting_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Settings#retrieve class SettingRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/spend_calculate_spend_params.rb b/lib/hanzoai/models/spend_calculate_spend_params.rb index c2f03820..5f812fb3 100644 --- a/lib/hanzoai/models/spend_calculate_spend_params.rb +++ b/lib/hanzoai/models/spend_calculate_spend_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Spend#calculate_spend class SpendCalculateSpendParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute completion_response diff --git a/lib/hanzoai/models/spend_list_logs_params.rb b/lib/hanzoai/models/spend_list_logs_params.rb index 2b8f7be6..2160758f 100644 --- a/lib/hanzoai/models/spend_list_logs_params.rb +++ b/lib/hanzoai/models/spend_list_logs_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Spend#list_logs class SpendListLogsParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute api_key diff --git a/lib/hanzoai/models/spend_list_logs_response.rb b/lib/hanzoai/models/spend_list_logs_response.rb index 0a325cf8..cdf82614 100644 --- a/lib/hanzoai/models/spend_list_logs_response.rb +++ b/lib/hanzoai/models/spend_list_logs_response.rb @@ -64,15 +64,11 @@ class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :completion_tokens, Integer, nil?: true - # @!attribute [r] metadata + # @!attribute metadata # # @return [Object, nil] optional :metadata, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :metadata - # @!attribute model # # @return [String, nil] @@ -83,15 +79,11 @@ class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :prompt_tokens, Integer, nil?: true - # @!attribute [r] request_tags + # @!attribute request_tags # # @return [Object, nil] optional :request_tags, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :request_tags - # @!attribute requester_ip_address # # @return [String, nil] diff --git a/lib/hanzoai/models/spend_list_tags_params.rb b/lib/hanzoai/models/spend_list_tags_params.rb index 033bbd66..424dc8ca 100644 --- a/lib/hanzoai/models/spend_list_tags_params.rb +++ b/lib/hanzoai/models/spend_list_tags_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Spend#list_tags class SpendListTagsParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute end_date diff --git a/lib/hanzoai/models/spend_list_tags_response.rb b/lib/hanzoai/models/spend_list_tags_response.rb index e2be922f..915b6fc9 100644 --- a/lib/hanzoai/models/spend_list_tags_response.rb +++ b/lib/hanzoai/models/spend_list_tags_response.rb @@ -64,15 +64,11 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :completion_tokens, Integer, nil?: true - # @!attribute [r] metadata + # @!attribute metadata # # @return [Object, nil] optional :metadata, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :metadata - # @!attribute model # # @return [String, nil] @@ -83,15 +79,11 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :prompt_tokens, Integer, nil?: true - # @!attribute [r] request_tags + # @!attribute request_tags # # @return [Object, nil] optional :request_tags, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :request_tags - # @!attribute requester_ip_address # # @return [String, nil] diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index 9861f4cb..95d55110 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -5,8 +5,7 @@ module Models module Team # @see Hanzoai::Resources::Team::Callback#add class CallbackAddParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute callback_name @@ -24,17 +23,13 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] optional :callback_type, enum: -> { Hanzoai::Models::Team::CallbackAddParams::CallbackType }, nil?: true - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}) # @param callback_name [String] # @param callback_vars [Hash{Symbol=>String}] diff --git a/lib/hanzoai/models/team/callback_retrieve_params.rb b/lib/hanzoai/models/team/callback_retrieve_params.rb index aa0bfa1d..6d67dccc 100644 --- a/lib/hanzoai/models/team/callback_retrieve_params.rb +++ b/lib/hanzoai/models/team/callback_retrieve_params.rb @@ -5,8 +5,7 @@ module Models module Team # @see Hanzoai::Resources::Team::Callback#retrieve class CallbackRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/team/model_add_params.rb b/lib/hanzoai/models/team/model_add_params.rb index a950173c..c1ae5c43 100644 --- a/lib/hanzoai/models/team/model_add_params.rb +++ b/lib/hanzoai/models/team/model_add_params.rb @@ -5,8 +5,7 @@ module Models module Team # @see Hanzoai::Resources::Team::Model#add class ModelAddParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute models diff --git a/lib/hanzoai/models/team/model_remove_params.rb b/lib/hanzoai/models/team/model_remove_params.rb index 874a3032..ad8e9e60 100644 --- a/lib/hanzoai/models/team/model_remove_params.rb +++ b/lib/hanzoai/models/team/model_remove_params.rb @@ -5,8 +5,7 @@ module Models module Team # @see Hanzoai::Resources::Team::Model#remove class ModelRemoveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute models diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index 03a2080f..1a2b0184 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#add_member class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute member diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index 932ab8e0..c97389d8 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -21,24 +21,16 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel required :updated_users, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser] } - # @!attribute [r] admins + # @!attribute admins # # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :admins - - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # # @return [String, nil] @@ -69,24 +61,16 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :members - - # @!attribute [r] members_with_roles + # @!attribute members_with_roles # # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } - # @!parse - # # @return [Array] - # attr_writer :members_with_roles - # @!attribute metadata # # @return [Object, nil] @@ -97,15 +81,11 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :model_id, Integer, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] @@ -270,15 +250,11 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Object, nil] optional :model_spend, Hanzoai::Internal::Type::Unknown, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_memberships # # @return [Array, nil] @@ -291,29 +267,21 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - # @!attribute sso_user_id # # @return [String, nil] optional :sso_user_id, String, nil?: true - # @!attribute [r] teams + # @!attribute teams # # @return [Array, nil] optional :teams, Hanzoai::Internal::Type::ArrayOf[String] - # @!parse - # # @return [Array] - # attr_writer :teams - # @!attribute tpm_limit # # @return [Integer, nil] @@ -381,24 +349,16 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel -> { Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable }, nil?: true - # @!attribute [r] spend + # @!attribute spend # # @return [Float, nil] optional :spend, Float - # @!parse - # # @return [Float] - # attr_writer :spend - - # @!attribute [r] user + # @!attribute user # # @return [Object, nil] optional :user, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :user - # @!attribute user_role # # @return [String, nil] diff --git a/lib/hanzoai/models/team_block_params.rb b/lib/hanzoai/models/team_block_params.rb index 01c1801a..54aa2741 100644 --- a/lib/hanzoai/models/team_block_params.rb +++ b/lib/hanzoai/models/team_block_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#block class TeamBlockParams < Hanzoai::Models::BlockTeamRequest - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index d10f3fcc..a969df06 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -4,28 +4,19 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#create class TeamCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] admins + # @!attribute admins # # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :admins - - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # # @return [String, nil] @@ -41,24 +32,16 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :max_budget, Float, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :members - - # @!attribute [r] members_with_roles + # @!attribute members_with_roles # # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } - # @!parse - # # @return [Array] - # attr_writer :members_with_roles - # @!attribute metadata # # @return [Object, nil] @@ -69,15 +52,11 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Object, nil] optional :model_aliases, Hanzoai::Internal::Type::Unknown, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] @@ -108,17 +87,13 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(admins: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, team_id: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) # @param admins [Array] # @param blocked [Boolean] diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index f89764bc..59b64898 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -9,24 +9,16 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String - # @!attribute [r] admins + # @!attribute admins # # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :admins - - # @!attribute [r] blocked + # @!attribute blocked # # @return [Boolean, nil] optional :blocked, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :blocked - # @!attribute budget_duration # # @return [String, nil] @@ -57,24 +49,16 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :max_parallel_requests, Integer, nil?: true - # @!attribute [r] members + # @!attribute members # # @return [Array, nil] optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :members - - # @!attribute [r] members_with_roles + # @!attribute members_with_roles # # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } - # @!parse - # # @return [Array] - # attr_writer :members_with_roles - # @!attribute metadata # # @return [Object, nil] @@ -85,15 +69,11 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :model_id, Integer, nil?: true - # @!attribute [r] models + # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - # @!parse - # # @return [Array] - # attr_writer :models - # @!attribute organization_id # # @return [String, nil] diff --git a/lib/hanzoai/models/team_delete_params.rb b/lib/hanzoai/models/team_delete_params.rb index 78fa7835..b8fd49d8 100644 --- a/lib/hanzoai/models/team_delete_params.rb +++ b/lib/hanzoai/models/team_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#delete class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute team_ids @@ -13,17 +12,13 @@ class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :team_ids, Hanzoai::Internal::Type::ArrayOf[String] - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(team_ids:, llm_changed_by: nil, request_options: {}) # @param team_ids [Array] # @param llm_changed_by [String] diff --git a/lib/hanzoai/models/team_disable_logging_params.rb b/lib/hanzoai/models/team_disable_logging_params.rb index b942f9a3..f806cf5b 100644 --- a/lib/hanzoai/models/team_disable_logging_params.rb +++ b/lib/hanzoai/models/team_disable_logging_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#disable_logging class TeamDisableLoggingParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/team_list_available_params.rb b/lib/hanzoai/models/team_list_available_params.rb index 91802105..da4d4091 100644 --- a/lib/hanzoai/models/team_list_available_params.rb +++ b/lib/hanzoai/models/team_list_available_params.rb @@ -4,19 +4,14 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#list_available class TeamListAvailableParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] response_model + # @!attribute response_model # # @return [Object, nil] optional :response_model, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :response_model - # @!method initialize(response_model: nil, request_options: {}) # @param response_model [Object] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/team_list_params.rb b/lib/hanzoai/models/team_list_params.rb index eb456acf..3a545cdb 100644 --- a/lib/hanzoai/models/team_list_params.rb +++ b/lib/hanzoai/models/team_list_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#list class TeamListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute organization_id diff --git a/lib/hanzoai/models/team_remove_member_params.rb b/lib/hanzoai/models/team_remove_member_params.rb index 217d9a60..d327184b 100644 --- a/lib/hanzoai/models/team_remove_member_params.rb +++ b/lib/hanzoai/models/team_remove_member_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#remove_member class TeamRemoveMemberParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute team_id diff --git a/lib/hanzoai/models/team_retrieve_info_params.rb b/lib/hanzoai/models/team_retrieve_info_params.rb index 0041a777..17e4b5b0 100644 --- a/lib/hanzoai/models/team_retrieve_info_params.rb +++ b/lib/hanzoai/models/team_retrieve_info_params.rb @@ -4,20 +4,15 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#retrieve_info class TeamRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] team_id + # @!attribute team_id # Team ID in the request parameters # # @return [String, nil] optional :team_id, String - # @!parse - # # @return [String] - # attr_writer :team_id - # @!method initialize(team_id: nil, request_options: {}) # @param team_id [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/team_unblock_params.rb b/lib/hanzoai/models/team_unblock_params.rb index 2ff02728..27de5f56 100644 --- a/lib/hanzoai/models/team_unblock_params.rb +++ b/lib/hanzoai/models/team_unblock_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#unblock class TeamUnblockParams < Hanzoai::Models::BlockTeamRequest - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/team_update_member_params.rb b/lib/hanzoai/models/team_update_member_params.rb index c3326c1e..a1a5c207 100644 --- a/lib/hanzoai/models/team_update_member_params.rb +++ b/lib/hanzoai/models/team_update_member_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#update_member class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute team_id diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index e1bbe4f2..de6ff7f1 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Team#update class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute team_id @@ -73,17 +72,13 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(team_id:, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) # @param team_id [String] # @param blocked [Boolean, nil] diff --git a/lib/hanzoai/models/test_ping_params.rb b/lib/hanzoai/models/test_ping_params.rb index dfbd3f48..34e93741 100644 --- a/lib/hanzoai/models/test_ping_params.rb +++ b/lib/hanzoai/models/test_ping_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Test#ping class TestPingParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/thread_create_params.rb b/lib/hanzoai/models/thread_create_params.rb index 8b27c9af..3f93af4b 100644 --- a/lib/hanzoai/models/thread_create_params.rb +++ b/lib/hanzoai/models/thread_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Threads#create class ThreadCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/thread_retrieve_params.rb b/lib/hanzoai/models/thread_retrieve_params.rb index 8862922f..45a86b3f 100644 --- a/lib/hanzoai/models/thread_retrieve_params.rb +++ b/lib/hanzoai/models/thread_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Threads#retrieve class ThreadRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/threads/message_create_params.rb b/lib/hanzoai/models/threads/message_create_params.rb index eb44de01..e17959a4 100644 --- a/lib/hanzoai/models/threads/message_create_params.rb +++ b/lib/hanzoai/models/threads/message_create_params.rb @@ -5,8 +5,7 @@ module Models module Threads # @see Hanzoai::Resources::Threads::Messages#create class MessageCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/threads/message_list_params.rb b/lib/hanzoai/models/threads/message_list_params.rb index 64dcb05b..75f330e7 100644 --- a/lib/hanzoai/models/threads/message_list_params.rb +++ b/lib/hanzoai/models/threads/message_list_params.rb @@ -5,8 +5,7 @@ module Models module Threads # @see Hanzoai::Resources::Threads::Messages#list class MessageListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/threads/run_create_params.rb b/lib/hanzoai/models/threads/run_create_params.rb index 9e4289ac..cdb17ad4 100644 --- a/lib/hanzoai/models/threads/run_create_params.rb +++ b/lib/hanzoai/models/threads/run_create_params.rb @@ -5,8 +5,7 @@ module Models module Threads # @see Hanzoai::Resources::Threads::Runs#create class RunCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/user_create_params.rb b/lib/hanzoai/models/user_create_params.rb index 36940e17..8704f224 100644 --- a/lib/hanzoai/models/user_create_params.rb +++ b/lib/hanzoai/models/user_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::User#create class UserCreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute aliases @@ -20,15 +19,11 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true - # @!attribute [r] auto_create_key + # @!attribute auto_create_key # # @return [Boolean, nil] optional :auto_create_key, Hanzoai::Internal::Type::Boolean - # @!parse - # # @return [Boolean] - # attr_writer :auto_create_key - # @!attribute blocked # # @return [Boolean, nil] diff --git a/lib/hanzoai/models/user_create_response.rb b/lib/hanzoai/models/user_create_response.rb index 68848dcf..bc57aa8f 100644 --- a/lib/hanzoai/models/user_create_response.rb +++ b/lib/hanzoai/models/user_create_response.rb @@ -81,15 +81,11 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_name, String, nil?: true - # @!attribute [r] llm_budget_table + # @!attribute llm_budget_table # # @return [Object, nil] optional :llm_budget_table, Hanzoai::Internal::Type::Unknown - # @!parse - # # @return [Object] - # attr_writer :llm_budget_table - # @!attribute max_budget # # @return [Float, nil] diff --git a/lib/hanzoai/models/user_delete_params.rb b/lib/hanzoai/models/user_delete_params.rb index 79f2fea1..b66e2e16 100644 --- a/lib/hanzoai/models/user_delete_params.rb +++ b/lib/hanzoai/models/user_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::User#delete class UserDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute user_ids @@ -13,17 +12,13 @@ class UserDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :user_ids, Hanzoai::Internal::Type::ArrayOf[String] - # @!attribute [r] llm_changed_by + # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability # # @return [String, nil] optional :llm_changed_by, String - # @!parse - # # @return [String] - # attr_writer :llm_changed_by - # @!method initialize(user_ids:, llm_changed_by: nil, request_options: {}) # @param user_ids [Array] # @param llm_changed_by [String] diff --git a/lib/hanzoai/models/user_list_params.rb b/lib/hanzoai/models/user_list_params.rb index 881743ee..2c37a4fc 100644 --- a/lib/hanzoai/models/user_list_params.rb +++ b/lib/hanzoai/models/user_list_params.rb @@ -4,30 +4,21 @@ module Hanzoai module Models # @see Hanzoai::Resources::User#list class UserListParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute [r] page + # @!attribute page # Page number # # @return [Integer, nil] optional :page, Integer - # @!parse - # # @return [Integer] - # attr_writer :page - - # @!attribute [r] page_size + # @!attribute page_size # Number of items per page # # @return [Integer, nil] optional :page_size, Integer - # @!parse - # # @return [Integer] - # attr_writer :page_size - # @!attribute role # Filter users by role # diff --git a/lib/hanzoai/models/user_retrieve_info_params.rb b/lib/hanzoai/models/user_retrieve_info_params.rb index 49cc7d31..1fc77937 100644 --- a/lib/hanzoai/models/user_retrieve_info_params.rb +++ b/lib/hanzoai/models/user_retrieve_info_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::User#retrieve_info class UserRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute user_id diff --git a/lib/hanzoai/models/user_update_params.rb b/lib/hanzoai/models/user_update_params.rb index 52f8e955..0dea9465 100644 --- a/lib/hanzoai/models/user_update_params.rb +++ b/lib/hanzoai/models/user_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::User#update class UserUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute aliases diff --git a/lib/hanzoai/models/util_get_supported_openai_params_params.rb b/lib/hanzoai/models/util_get_supported_openai_params_params.rb index 2aa72c25..9b7f1388 100644 --- a/lib/hanzoai/models/util_get_supported_openai_params_params.rb +++ b/lib/hanzoai/models/util_get_supported_openai_params_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Utils#get_supported_openai_params class UtilGetSupportedOpenAIParamsParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute model diff --git a/lib/hanzoai/models/util_token_counter_params.rb b/lib/hanzoai/models/util_token_counter_params.rb index 15816b53..e3d279ba 100644 --- a/lib/hanzoai/models/util_token_counter_params.rb +++ b/lib/hanzoai/models/util_token_counter_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Utils#token_counter class UtilTokenCounterParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute model diff --git a/lib/hanzoai/models/util_transform_request_params.rb b/lib/hanzoai/models/util_transform_request_params.rb index ec123358..5b35b5b3 100644 --- a/lib/hanzoai/models/util_transform_request_params.rb +++ b/lib/hanzoai/models/util_transform_request_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::Utils#transform_request class UtilTransformRequestParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!attribute call_type diff --git a/lib/hanzoai/models/vertex_ai_create_params.rb b/lib/hanzoai/models/vertex_ai_create_params.rb index 33fa9018..bf8a5eb2 100644 --- a/lib/hanzoai/models/vertex_ai_create_params.rb +++ b/lib/hanzoai/models/vertex_ai_create_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::VertexAI#create class VertexAICreateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/vertex_ai_delete_params.rb b/lib/hanzoai/models/vertex_ai_delete_params.rb index cdaaac9e..798eb3ed 100644 --- a/lib/hanzoai/models/vertex_ai_delete_params.rb +++ b/lib/hanzoai/models/vertex_ai_delete_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::VertexAI#delete class VertexAIDeleteParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/vertex_ai_patch_params.rb b/lib/hanzoai/models/vertex_ai_patch_params.rb index baf98e88..83039070 100644 --- a/lib/hanzoai/models/vertex_ai_patch_params.rb +++ b/lib/hanzoai/models/vertex_ai_patch_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::VertexAI#patch class VertexAIPatchParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/vertex_ai_retrieve_params.rb b/lib/hanzoai/models/vertex_ai_retrieve_params.rb index ad30c56a..550e34bc 100644 --- a/lib/hanzoai/models/vertex_ai_retrieve_params.rb +++ b/lib/hanzoai/models/vertex_ai_retrieve_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::VertexAI#retrieve class VertexAIRetrieveParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) diff --git a/lib/hanzoai/models/vertex_ai_update_params.rb b/lib/hanzoai/models/vertex_ai_update_params.rb index 2ed2cec7..3ebd40b0 100644 --- a/lib/hanzoai/models/vertex_ai_update_params.rb +++ b/lib/hanzoai/models/vertex_ai_update_params.rb @@ -4,8 +4,7 @@ module Hanzoai module Models # @see Hanzoai::Resources::VertexAI#update class VertexAIUpdateParams < Hanzoai::Internal::Type::BaseModel - # @!parse - # extend Hanzoai::Internal::Type::RequestParameters::Converter + extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters # @!method initialize(request_options: {}) From 4ab0bd63d2a8e48ca1fd327c3fbbd6353cfe1be8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 03:32:27 +0000 Subject: [PATCH 039/139] chore: documentation improvements --- README.md | 92 ++++++++++++++++++++++++-------------------------- Rakefile | 4 +-- lib/hanzoai.rb | 9 ----- 3 files changed, 47 insertions(+), 58 deletions(-) diff --git a/README.md b/README.md index bf227619..9bf5f6b1 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,16 @@ response = hanzo.get_home puts(response) ``` +## Sorbet + +This library is written with [Sorbet type definitions](https://sorbet.org/docs/rbi). However, there is no runtime dependency on the `sorbet-runtime`. + +When using sorbet, it is recommended to use model classes as below. This provides stronger type checking and tooling integration. + +```ruby +hanzo.get_home +``` + ### 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. @@ -119,61 +129,34 @@ hanzo = Hanzoai::Client.new( hanzo.get_home(request_options: {timeout: 5}) ``` -## LSP Support - -### Solargraph - -This library includes [Solargraph](https://solargraph.org) support for both auto completion and go to definition. - -```ruby -gem "solargraph", group: :development -``` - -After Solargraph is installed, **you must populate its index** either via the provided editor command, or by running the following in your terminal: - -```sh -bundle exec solargraph gems -``` - -Note: if you had installed the gem either using a `git:` or `github:` URL, or had vendored the gem using bundler, you will need to set up your [`.solargraph.yml`](https://solargraph.org/guides/configuration) to include the path to the gem's `lib` directory. +## Editor support -```yaml -include: - - 'vendor/bundle/ruby/*/gems/hanzoai-*/lib/**/*.rb' -``` +Some editor language services like [Solargraph](https://github.com/castwide/solargraph?tab=readme-ov-file#gem-support) or [Sorbet](https://sorbet.org/docs/rbi#the-hidden-definitions-rbi) require a manually triggered indexing step before functionalities like auto-completion and go to definition can operate. -Otherwise Solargraph will not be able to provide type information or auto-completion for any non-indexed libraries. +Please refer to their respective documentation for details. This library also includes a [short guide](https://github.com/hanzoai/ruby-sdk/tree/main/CONTRIBUTING.md#editor-support) on how to set up various editor services for internal development. -### Sorbet +## Advanced Concepts -This library is written with [Sorbet type definitions](https://sorbet.org/docs/rbi). However, there is no runtime dependency on the `sorbet-runtime`. +### Model DSL -What this means is that while you can use Sorbet to type check your code statically, and benefit from the [Sorbet Language Server](https://sorbet.org/docs/lsp) in your editor, there is no runtime type checking and execution overhead from Sorbet itself. +This library uses a Model DSL to represent request parameters and response shapes in `lib/hanzoai/models`. -Due to limitations with the Sorbet type system, where a method otherwise can take an instance of `Hanzoai::BaseModel` class, you will need to use the `**` splat operator to pass the arguments: +The model classes service as anchor points for both toolchain readable documentation, and language service assisted navigation links. This information also allows the SDK's internals to perform translation between plain and rich data types; e.g., conversion between a `Time` instance and an ISO8601 `String`, and vice versa. -Please follow Sorbet's [setup guides](https://sorbet.org/docs/adopting) for best experience. +In all places where a `BaseModel` type is specified, vanilla Ruby `Hash` can also be used. For example, the following are interchangeable as arguments: ```ruby +# This has tooling readability, for auto-completion, static analysis, and goto definition with supported language services params = Hanzoai::Models::ClientGetHomeParams.new -hanzo.get_home(**params) -``` - -Note: **This library emits an intentional warning under the [`tapioca` toolchain](https://github.com/Shopify/tapioca)**. This is normal, and does not impact functionality. - -### Ruby LSP +# This also works +params = { -The Ruby LSP has [best effort support](https://shopify.github.io/ruby-lsp/#guessed-types) for inferring type information from Ruby code, and as such it may not always be able to provide accurate type information. - -## Advanced +} +``` ### Making custom/undocumented requests -This library is typed for convenient access to the documented API. - -If you need to access undocumented endpoints, params, or response properties, the library can still be used. - #### Undocumented request params If you want to explicitly send an extra param, you can do so with the `extra_query`, `extra_body`, and `extra_headers` under the `request_options:` parameter when making a requests as seen in examples above. @@ -184,15 +167,15 @@ To make requests to undocumented endpoints, you can make requests using `client. ```ruby response = client.request( - method: :post, - path: '/undocumented/endpoint', - query: {"dog": "woof"}, - headers: {"useful-header": "interesting-value"}, - body: {"he": "llo"}, - ) + method: :post, + path: '/undocumented/endpoint', + query: {"dog": "woof"}, + headers: {"useful-header": "interesting-value"}, + body: {"he": "llo"}, +) ``` -### Concurrency & Connection Pooling +### Concurrency & connection pooling The `Hanzoai::Client` instances are thread-safe, and should be re-used across multiple threads. By default, each `Client` have their own HTTP connection pool, with a maximum number of connections equal to thread count. @@ -202,6 +185,17 @@ Unless otherwise specified, other classes in the SDK do not have locks protectin Currently, `Hanzoai::Client` instances are only fork-safe if there are no in-flight HTTP requests. +### Sorbet + +#### Argument passing trick + +It is possible to pass a compatible model / parameter class to a method that expects keyword arguments by using the `**` splat operator. + +```ruby +params = Hanzoai::Models::ClientGetHomeParams.new +hanzo.get_home(**params) +``` + ## Versioning This package follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions. As the library is in initial development and has a major version of `0`, APIs may change at any time. @@ -211,3 +205,7 @@ This package considers improvements to the (non-runtime) `*.rbi` and `*.rbs` typ ## Requirements Ruby 3.1.0 or higher. + +## Contributing + +See [the contributing documentation](https://github.com/hanzoai/ruby-sdk/tree/main/CONTRIBUTING.md). diff --git a/Rakefile b/Rakefile index b01c2735..92ec1ea6 100644 --- a/Rakefile +++ b/Rakefile @@ -21,7 +21,7 @@ end desc("Preview docs; use `PORT=` to change the port") multitask(:"docs:preview") do - sh(*%w[yard server --bind [::] --reload --quiet --port], ENV.fetch("PORT", "8808")) + sh(*%w[yard server --reload --quiet --bind [::] --port], ENV.fetch("PORT", "8808")) end desc("Run test suites; use `TEST=path/to/test.rb` to run a specific test file") @@ -111,7 +111,7 @@ end desc("Typecheck everything") multitask(typecheck: [:"typecheck:steep", :"typecheck:sorbet"]) -desc("Lint everything") +desc("Lint and typecheck") multitask(lint: [:"lint:rubocop", :typecheck]) desc("Build yard docs") diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index 483bcadc..ae0b747e 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -19,15 +19,6 @@ # We already ship the preferred sorbet manifests in the package itself. # `tapioca` currently does not offer us a way to opt out of unnecessary compilation. if Object.const_defined?(:Tapioca) && caller.chain([$PROGRAM_NAME]).chain(ARGV).grep(/tapioca/) - Warning.warn( - <<~WARN - \n - ⚠️ skipped loading of "hanzoai" gem under `tapioca`. - - This message is normal and expected if you are running a `tapioca` command, and does not impact `.rbi` generation. - \n - WARN - ) return end From c2d963dec2fd81dba50a8769224a3656f46afaf3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 03:33:40 +0000 Subject: [PATCH 040/139] feat: implement `#hash` for data containers --- .../transport/pooled_net_requester.rb | 6 +---- lib/hanzoai/internal/type/array_of.rb | 3 +++ lib/hanzoai/internal/type/base_model.rb | 24 +++++++++---------- lib/hanzoai/internal/type/enum.rb | 3 +++ lib/hanzoai/internal/type/hash_of.rb | 3 +++ lib/hanzoai/internal/type/union.rb | 5 +++- rbi/lib/hanzoai/internal/type/array_of.rbi | 3 +++ rbi/lib/hanzoai/internal/type/base_model.rbi | 6 +++++ rbi/lib/hanzoai/internal/type/enum.rbi | 3 +++ rbi/lib/hanzoai/internal/type/hash_of.rbi | 3 +++ rbi/lib/hanzoai/internal/type/union.rbi | 3 +++ sig/hanzoai/internal/type/array_of.rbs | 2 ++ sig/hanzoai/internal/type/base_model.rbs | 4 ++++ sig/hanzoai/internal/type/enum.rbs | 2 ++ sig/hanzoai/internal/type/hash_of.rbs | 2 ++ sig/hanzoai/internal/type/union.rbs | 2 ++ test/hanzoai/internal/type/base_model_test.rb | 5 +++- 17 files changed, 60 insertions(+), 19 deletions(-) diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index d4e7783c..4f843783 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -57,15 +57,11 @@ def calibrate_socket_timeout(conn, deadline) # @return [Array(Net::HTTPGenericRequest, Proc)] def build_request(request, &blk) method, url, headers, body = request.fetch_values(:method, :url, :headers, :body) - - # ensure we construct a URI class of the right scheme - url = URI(url.to_s) - req = Net::HTTPGenericRequest.new( method.to_s.upcase, !body.nil?, method != :head, - url + URI(url.to_s) # ensure we construct a URI class of the right scheme ) headers.each { req[_1] = _2 } diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index 1dda3686..f88743f0 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -44,6 +44,9 @@ def ==(other) # rubocop:enable Layout/LineLength end + # @return [Integer] + def hash = [self.class, item_type].hash + # @api private # # @param value [Array, Object] diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 6eff89c6..58d837d9 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -4,14 +4,6 @@ module Hanzoai module Internal module Type # @abstract - # - # @example - # # `util_token_counter_response` is a `Hanzoai::Models::UtilTokenCounterResponse` - # util_token_counter_response => { - # model_used: model_used, - # request_model: request_model, - # tokenizer_type: tokenizer_type - # } class BaseModel extend Hanzoai::Internal::Type::Converter @@ -100,11 +92,13 @@ def fields state: state ) end - rescue StandardError + rescue StandardError => e cls = self.class.name.split("::").last - # rubocop:disable Layout/LineLength - message = "Failed to parse #{cls}.#{__method__} from #{value.class} to #{target.inspect}. To get the unparsed API response, use #{cls}[:#{__method__}]." - # rubocop:enable Layout/LineLength + message = [ + "Failed to parse #{cls}.#{__method__} from #{value.class} to #{target.inspect}.", + "To get the unparsed API response, use #{cls}[#{__method__.inspect}].", + "Cause: #{e.message}" + ].join(" ") raise Hanzoai::Errors::ConversionError.new(message) end end @@ -178,6 +172,9 @@ def optional(name_sym, type_info, spec = {}) def ==(other) other.is_a?(Class) && other <= Hanzoai::Internal::Type::BaseModel && other.fields == fields end + + # @return [Integer] + def hash = fields.hash end # @param other [Object] @@ -185,6 +182,9 @@ def ==(other) # @return [Boolean] def ==(other) = self.class == other.class && @data == other.to_h + # @return [Integer] + def hash = [self.class, @data].hash + class << self # @api private # diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 412cf315..ed264fe9 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -37,6 +37,9 @@ def ==(other) # rubocop:enable Style/CaseEquality end + # @return [Integer] + def hash = values.to_set.hash + # @api private # # Unlike with primitives, `Enum` additionally validates that the value is a member diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index 84fc23a2..94a733f3 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -59,6 +59,9 @@ def ==(other) # rubocop:enable Layout/LineLength end + # @return [Integer] + def hash = [self.class, item_type].hash + # @api private # # @param value [Hash{Object=>Object}, Object] diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index b3fd6e81..93045a59 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -18,7 +18,7 @@ module Union # # @return [Array] protected def derefed_variants - @known_variants.map { |key, variant_fn| [key, variant_fn.call] } + known_variants.map { |key, variant_fn| [key, variant_fn.call] } end # All of the specified variants for this union. @@ -103,6 +103,9 @@ def ==(other) Hanzoai::Internal::Type::Union === other && other.derefed_variants == derefed_variants end + # @return [Integer] + def hash = variants.hash + # @api private # # @param value [Object] diff --git a/rbi/lib/hanzoai/internal/type/array_of.rbi b/rbi/lib/hanzoai/internal/type/array_of.rbi index f473ca34..cfc98e9a 100644 --- a/rbi/lib/hanzoai/internal/type/array_of.rbi +++ b/rbi/lib/hanzoai/internal/type/array_of.rbi @@ -32,6 +32,9 @@ module Hanzoai sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end + sig { returns(Integer) } + def hash; end + # @api private sig do override diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index 5c12dff5..fb2e2289 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -111,11 +111,17 @@ module Hanzoai sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end + + sig { returns(Integer) } + def hash; end end sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end + sig { returns(Integer) } + def hash; end + class << self # @api private sig do diff --git a/rbi/lib/hanzoai/internal/type/enum.rbi b/rbi/lib/hanzoai/internal/type/enum.rbi index f64faee7..b75672d2 100644 --- a/rbi/lib/hanzoai/internal/type/enum.rbi +++ b/rbi/lib/hanzoai/internal/type/enum.rbi @@ -28,6 +28,9 @@ module Hanzoai sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end + sig { returns(Integer) } + def hash; end + # @api private # # Unlike with primitives, `Enum` additionally validates that the value is a member diff --git a/rbi/lib/hanzoai/internal/type/hash_of.rbi b/rbi/lib/hanzoai/internal/type/hash_of.rbi index cc7aadcb..f5c8ba5f 100644 --- a/rbi/lib/hanzoai/internal/type/hash_of.rbi +++ b/rbi/lib/hanzoai/internal/type/hash_of.rbi @@ -32,6 +32,9 @@ module Hanzoai sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end + sig { returns(Integer) } + def hash; end + # @api private sig do override diff --git a/rbi/lib/hanzoai/internal/type/union.rbi b/rbi/lib/hanzoai/internal/type/union.rbi index 9f1d58c6..b4cd3c17 100644 --- a/rbi/lib/hanzoai/internal/type/union.rbi +++ b/rbi/lib/hanzoai/internal/type/union.rbi @@ -47,6 +47,9 @@ module Hanzoai sig { params(other: T.anything).returns(T::Boolean) } def ==(other); end + sig { returns(Integer) } + def hash; end + # @api private sig do override diff --git a/sig/hanzoai/internal/type/array_of.rbs b/sig/hanzoai/internal/type/array_of.rbs index ca4d9928..6c8b6575 100644 --- a/sig/hanzoai/internal/type/array_of.rbs +++ b/sig/hanzoai/internal/type/array_of.rbs @@ -15,6 +15,8 @@ module Hanzoai def ==: (top other) -> bool + def hash: -> Integer + def coerce: ( ::Array[top] | top value, state: Hanzoai::Internal::Type::Converter::coerce_state diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index d66a5fdb..e41a44a3 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -49,8 +49,12 @@ module Hanzoai def self.==: (top other) -> bool + def self.hash: -> Integer + def ==: (top other) -> bool + def hash: -> Integer + def self.coerce: ( Hanzoai::Internal::Type::BaseModel | ::Hash[top, top] | top value, state: Hanzoai::Internal::Type::Converter::coerce_state diff --git a/sig/hanzoai/internal/type/enum.rbs b/sig/hanzoai/internal/type/enum.rbs index ed3522cf..2e3c23dd 100644 --- a/sig/hanzoai/internal/type/enum.rbs +++ b/sig/hanzoai/internal/type/enum.rbs @@ -10,6 +10,8 @@ module Hanzoai def ==: (top other) -> bool + def hash: -> Integer + def coerce: ( String | Symbol | top value, state: Hanzoai::Internal::Type::Converter::coerce_state diff --git a/sig/hanzoai/internal/type/hash_of.rbs b/sig/hanzoai/internal/type/hash_of.rbs index 0bf8dada..6982435c 100644 --- a/sig/hanzoai/internal/type/hash_of.rbs +++ b/sig/hanzoai/internal/type/hash_of.rbs @@ -15,6 +15,8 @@ module Hanzoai def ==: (top other) -> bool + def hash: -> Integer + def coerce: ( ::Hash[top, top] | top value, state: Hanzoai::Internal::Type::Converter::coerce_state diff --git a/sig/hanzoai/internal/type/union.rbs b/sig/hanzoai/internal/type/union.rbs index 667fa2b7..c122a3aa 100644 --- a/sig/hanzoai/internal/type/union.rbs +++ b/sig/hanzoai/internal/type/union.rbs @@ -30,6 +30,8 @@ module Hanzoai def ==: (top other) -> bool + def hash: -> Integer + def coerce: ( top value, state: Hanzoai::Internal::Type::Converter::coerce_state diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 6d8e57ac..99ba6aa4 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -647,14 +647,17 @@ def test_equality [U0.new(String, Float), U0.new(String, Integer)] => false, [U1, U2] => true, [M1, M2] => false, - [M1, M3] => true + [M1, M3] => true, + [M1.new(a: 1), M1.new(a: 1)] => true } cases.each do if _2 assert_equal(*_1) + assert_equal(*_1.map(&:hash)) else refute_equal(*_1) + refute_equal(*_1.map(&:hash)) end end end From b432ce7a9963963df9a2dc04f5d377f69ba1587a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 03:35:20 +0000 Subject: [PATCH 041/139] chore: update README with recommended editor plugins --- CONTRIBUTING.md | 21 +++++++-------------- README.md | 20 +++++++++----------- 2 files changed, 16 insertions(+), 25 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b2d1adba..19906445 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -96,20 +96,17 @@ $ bundle exec rake format ## Editor Support -### Solargraph +### Ruby LSP -This library includes [Solargraph](https://solargraph.org) support for both auto-completion and go to definition. +[Ruby LSP](https://github.com/Shopify/ruby-lsp) has quite good support for go to definition, but not auto-completion. -```ruby -gem "solargraph", group: :development -``` +This can be installed along side Solargraph. + +### Solargraph -Note: if you had installed the gem locally using `git: "..."` or `path: "..."`, you must update your [`.solargraph.yml`](https://solargraph.org/guides/configuration) to include the path to where the gem is located: +[Solargraph](https://solargraph.org) has quite good support for auto-completion, but not go to definition. -```yaml -include: - - '/lib/**/*.rb' -``` +This can be installed along side Ruby LSP. ### Sorbet @@ -119,10 +116,6 @@ include: 2. For each generic type in `*.rbi` files, a spurious "Duplicate type member" error is present. -### Ruby LSP - -The Ruby LSP has [best effort support](https://shopify.github.io/ruby-lsp/#guessed-types) for inferring type information from Ruby code, and as such it may not always be able to provide accurate type information. - ## Documentation Preview To preview the documentation, run: diff --git a/README.md b/README.md index 9bf5f6b1..b4bd1a2c 100644 --- a/README.md +++ b/README.md @@ -129,19 +129,11 @@ hanzo = Hanzoai::Client.new( hanzo.get_home(request_options: {timeout: 5}) ``` -## Editor support - -Some editor language services like [Solargraph](https://github.com/castwide/solargraph?tab=readme-ov-file#gem-support) or [Sorbet](https://sorbet.org/docs/rbi#the-hidden-definitions-rbi) require a manually triggered indexing step before functionalities like auto-completion and go to definition can operate. - -Please refer to their respective documentation for details. This library also includes a [short guide](https://github.com/hanzoai/ruby-sdk/tree/main/CONTRIBUTING.md#editor-support) on how to set up various editor services for internal development. - -## Advanced Concepts - -### Model DSL +## Model DSL -This library uses a Model DSL to represent request parameters and response shapes in `lib/hanzoai/models`. +This library uses a simple DSL to represent request parameters and response shapes in `lib/hanzoai/models`. -The model classes service as anchor points for both toolchain readable documentation, and language service assisted navigation links. This information also allows the SDK's internals to perform translation between plain and rich data types; e.g., conversion between a `Time` instance and an ISO8601 `String`, and vice versa. +With the right [editor plugins](https://shopify.github.io/ruby-lsp), you can ctrl-click on elements of the DSL to navigate around and explore the library. In all places where a `BaseModel` type is specified, vanilla Ruby `Hash` can also be used. For example, the following are interchangeable as arguments: @@ -155,6 +147,12 @@ params = { } ``` +## Editor support + +A combination of [Shopify LSP](https://shopify.github.io/ruby-lsp) and [Solargraph](https://solargraph.org/) is recommended for non-[Sorbet](https://sorbet.org) users. The former is especially good at go to definition, while the latter has much better auto-completion support. + +## Advanced concepts + ### Making custom/undocumented requests #### Undocumented request params From da30dffa00a5bfa87117045df80e20acdbcc748d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 03:52:19 +0000 Subject: [PATCH 042/139] chore: explicitly mark apis public under `Internal` module --- .yardopts | 1 + lib/hanzoai/client.rb | 8 ++++---- lib/hanzoai/internal.rb | 1 - lib/hanzoai/internal/type/array_of.rb | 6 ++++++ lib/hanzoai/internal/type/base_model.rb | 18 +++++++++++++++++- lib/hanzoai/internal/type/base_page.rb | 8 ++++++++ lib/hanzoai/internal/type/boolean.rb | 4 ++++ lib/hanzoai/internal/type/enum.rb | 6 ++++++ lib/hanzoai/internal/type/hash_of.rb | 6 ++++++ lib/hanzoai/internal/type/io_like.rb | 4 ++++ lib/hanzoai/internal/type/union.rb | 6 ++++++ lib/hanzoai/internal/type/unknown.rb | 4 ++++ rbi/lib/hanzoai/client.rbi | 8 ++++---- rbi/lib/hanzoai/internal.rbi | 1 - rbi/lib/hanzoai/internal/type/base_model.rbi | 1 - rbi/lib/hanzoai/internal/type/base_page.rbi | 2 ++ 16 files changed, 72 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/hanzoai/client.rb b/lib/hanzoai/client.rb index 2116a458..e0ee58f4 100644 --- a/lib/hanzoai/client.rb +++ b/lib/hanzoai/client.rb @@ -219,10 +219,10 @@ def initialize( api_key: ENV["HANZO_API_KEY"], environment: nil, base_url: ENV["HANZO_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: Hanzoai::Client::DEFAULT_MAX_RETRIES, + timeout: Hanzoai::Client::DEFAULT_TIMEOUT_IN_SECONDS, + initial_retry_delay: Hanzoai::Client::DEFAULT_INITIAL_RETRY_DELAY, + max_retry_delay: Hanzoai::Client::DEFAULT_MAX_RETRY_DELAY ) base_url ||= Hanzoai::Client::ENVIRONMENTS.fetch(environment&.to_sym || :production) do message = "environment must be one of #{Hanzoai::Client::ENVIRONMENTS.keys}, got #{environment}" diff --git a/lib/hanzoai/internal.rb b/lib/hanzoai/internal.rb index 7e7c6918..8bc6d541 100644 --- a/lib/hanzoai/internal.rb +++ b/lib/hanzoai/internal.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true module Hanzoai - # @api private module Internal OMIT = Object.new.tap do diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index f88743f0..07f38fc1 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/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/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 58d837d9..c40ad9ee 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -166,6 +166,8 @@ def optional(name_sym, type_info, spec = {}) @mode = nil end + # @api public + # # @param other [Object] # # @return [Boolean] @@ -173,15 +175,21 @@ def ==(other) other.is_a?(Class) && other <= Hanzoai::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 @@ -298,6 +306,8 @@ def dump(value, state:) end end + # @api public + # # Returns the raw value associated with the given key, if found. Otherwise, nil is # returned. # @@ -316,6 +326,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 @@ -368,11 +380,15 @@ def walk(model) end end + # @api public + # # @param a [Object] # # @return [String] def to_json(*a) = Hanzoai::Internal::Type::Converter.dump(self.class, self).to_json(*a) + # @api public + # # @param a [Object] # # @return [String] @@ -414,7 +430,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/hanzoai/internal/type/base_page.rb b/lib/hanzoai/internal/type/base_page.rb index ae954d10..12a5ec64 100644 --- a/lib/hanzoai/internal/type/base_page.rb +++ b/lib/hanzoai/internal/type/base_page.rb @@ -3,19 +3,27 @@ module Hanzoai 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 [Hanzoai::Errors::APIError] # @return [Hanzoai::Internal::Type::BasePage] def next_page = (raise NotImplementedError) + # @api public + # # @param blk [Proc] # # @yieldparam [generic] diff --git a/lib/hanzoai/internal/type/boolean.rb b/lib/hanzoai/internal/type/boolean.rb index 1bfea8d6..a879823d 100644 --- a/lib/hanzoai/internal/type/boolean.rb +++ b/lib/hanzoai/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/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index ed264fe9..7822030b 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -23,11 +23,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] @@ -37,6 +41,8 @@ def ==(other) # rubocop:enable Style/CaseEquality end + # @api public + # # @return [Integer] def hash = values.to_set.hash diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index 94a733f3..9853bb45 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/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/hanzoai/internal/type/io_like.rb b/lib/hanzoai/internal/type/io_like.rb index b2024d9f..5ec9086e 100644 --- a/lib/hanzoai/internal/type/io_like.rb +++ b/lib/hanzoai/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/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 93045a59..5fe5a6a0 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -87,6 +87,8 @@ def variants = derefed_variants.map(&:last) # rubocop:disable Style/HashEachMethods # rubocop:disable Style/CaseEquality + # @api public + # # @param other [Object] # # @return [Boolean] @@ -96,6 +98,8 @@ def ===(other) end end + # @api public + # # @param other [Object] # # @return [Boolean] @@ -103,6 +107,8 @@ def ==(other) Hanzoai::Internal::Type::Union === other && other.derefed_variants == derefed_variants end + # @api public + # # @return [Integer] def hash = variants.hash diff --git a/lib/hanzoai/internal/type/unknown.rb b/lib/hanzoai/internal/type/unknown.rb index dc9cffb0..bed19c6e 100644 --- a/lib/hanzoai/internal/type/unknown.rb +++ b/lib/hanzoai/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/rbi/lib/hanzoai/client.rbi b/rbi/lib/hanzoai/client.rbi index 4778d782..313934a2 100644 --- a/rbi/lib/hanzoai/client.rbi +++ b/rbi/lib/hanzoai/client.rbi @@ -203,10 +203,10 @@ module Hanzoai # `"https://api.example.com/v2/"`. Defaults to `ENV["HANZO_BASE_URL"]` base_url: ENV["HANZO_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: Hanzoai::Client::DEFAULT_MAX_RETRIES, + timeout: Hanzoai::Client::DEFAULT_TIMEOUT_IN_SECONDS, + initial_retry_delay: Hanzoai::Client::DEFAULT_INITIAL_RETRY_DELAY, + max_retry_delay: Hanzoai::Client::DEFAULT_MAX_RETRY_DELAY ); end end end diff --git a/rbi/lib/hanzoai/internal.rbi b/rbi/lib/hanzoai/internal.rbi index 390fd218..a766b2ae 100644 --- a/rbi/lib/hanzoai/internal.rbi +++ b/rbi/lib/hanzoai/internal.rbi @@ -1,7 +1,6 @@ # typed: strong module Hanzoai - # @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/hanzoai/internal/type/base_model.rbi b/rbi/lib/hanzoai/internal/type/base_model.rbi index fb2e2289..5b38f552 100644 --- a/rbi/lib/hanzoai/internal/type/base_model.rbi +++ b/rbi/lib/hanzoai/internal/type/base_model.rbi @@ -203,7 +203,6 @@ module Hanzoai def inspect(depth: 0); end end - # @api private sig { returns(String) } def to_s; end diff --git a/rbi/lib/hanzoai/internal/type/base_page.rbi b/rbi/lib/hanzoai/internal/type/base_page.rbi index b208ca7d..b00be108 100644 --- a/rbi/lib/hanzoai/internal/type/base_page.rbi +++ b/rbi/lib/hanzoai/internal/type/base_page.rbi @@ -3,6 +3,8 @@ module Hanzoai module Internal module Type + # @api private + # # This module provides a base implementation for paginated responses in the SDK. module BasePage Elem = type_member(:out) From aae606e68f712f9d1a2f729de0ab41a1cd48e3c9 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 22 Apr 2025 02:40:26 +0000 Subject: [PATCH 043/139] chore(internal): minor type annotation improvements --- Steepfile | 2 +- lib/hanzoai/internal/transport/base_client.rb | 8 ++++---- lib/hanzoai/internal/type/array_of.rb | 2 ++ lib/hanzoai/internal/type/base_model.rb | 2 +- lib/hanzoai/internal/type/base_page.rb | 2 +- lib/hanzoai/internal/type/hash_of.rb | 2 ++ 6 files changed, 11 insertions(+), 7 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/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 0a28a889..660ebecc 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/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 [Hanzoai::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 [Hanzoai::Internal::Type::Converter, Class, nil] # diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index 07f38fc1..3c46c429 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -28,6 +28,8 @@ class ArrayOf # @option spec [Proc] :union # # @option spec [Boolean] :"nil?" + # + # @return [Hanzoai::Internal::Type::ArrayOf] def self.[](...) = new(...) # @api public diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index c40ad9ee..c68bcee5 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -396,7 +396,7 @@ def to_yaml(*a) = Hanzoai::Internal::Type::Converter.dump(self.class, self).to_y # Create a new instance of a model. # - # @param data [Hash{Symbol=>Object}, Hanzoai::Internal::Type::BaseModel] + # @param data [Hash{Symbol=>Object}, self] def initialize(data = {}) case Hanzoai::Internal::Util.coerce_hash(data) in Hash => coerced diff --git a/lib/hanzoai/internal/type/base_page.rb b/lib/hanzoai/internal/type/base_page.rb index 12a5ec64..73e6c236 100644 --- a/lib/hanzoai/internal/type/base_page.rb +++ b/lib/hanzoai/internal/type/base_page.rb @@ -19,7 +19,7 @@ def next_page? = (raise NotImplementedError) # @api public # # @raise [Hanzoai::Errors::APIError] - # @return [Hanzoai::Internal::Type::BasePage] + # @return [self] def next_page = (raise NotImplementedError) # @api public diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index 9853bb45..e8999195 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -28,6 +28,8 @@ class HashOf # @option spec [Proc] :union # # @option spec [Boolean] :"nil?" + # + # @return [Hanzoai::Internal::Type::HashOf] def self.[](...) = new(...) # @api public From c6653dbf25320da466c3bbcdb7f7b8ff5585c8da Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 23 Apr 2025 04:24:18 +0000 Subject: [PATCH 044/139] 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 bee0a0806004968a06b195e3b92a12145cdf8e11 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 02:52:08 +0000 Subject: [PATCH 045/139] chore(internal): codegen related update --- .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 77478991..65f0ecce 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -11,7 +11,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 ab0cde1a..24bafb1b 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 if: github.repository == 'hanzoai/ruby-sdk' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next') steps: From ef3471d81069321589c43f4f17cf386b953819c0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 02:53:22 +0000 Subject: [PATCH 046/139] 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..bdfd9387 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/hanzo-ai-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/hanzo-ai-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 65f0ecce..77478991 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -11,7 +11,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 24bafb1b..ab0cde1a 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 if: github.repository == 'hanzoai/ruby-sdk' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next') steps: From 451aae2023a76c9099a5b05c1df445013accc437 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 03:11:01 +0000 Subject: [PATCH 047/139] chore: broadly detect json family of content-type headers --- lib/hanzoai/internal/util.rb | 13 +++++++++---- rbi/lib/hanzoai/internal/util.rbi | 3 +++ sig/hanzoai/internal/util.rbs | 3 +++ test/hanzoai/internal/util_test.rb | 16 ++++++++++++++++ 4 files changed, 31 insertions(+), 4 deletions(-) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 5001fa4b..0043f653 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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?(Hanzoai::Internal::Util::SerializationAdapter) case [content_type, body] - in [%r{^application/(?:vnd\.api\+)?json}, Hash | Array | -> { primitive?(_1) }] + in [Hanzoai::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 [Hanzoai::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 Hanzoai::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 Hanzoai::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/hanzoai/internal/util.rbi b/rbi/lib/hanzoai/internal/util.rbi index bceb6d5d..b1527d14 100644 --- a/rbi/lib/hanzoai/internal/util.rbi +++ b/rbi/lib/hanzoai/internal/util.rbi @@ -192,6 +192,9 @@ module Hanzoai 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/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index cd6b04a4..5d304198 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -103,6 +103,9 @@ module Hanzoai (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/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index a0cd40ff..ff80405c 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -157,6 +157,22 @@ def test_joining_queries end end +class Hanzoai::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 + Hanzoai::Internal::Util::JSON_CONTENT.match?(header) => verdict + end + end + end +end + class Hanzoai::Test::UtilFormDataEncodingTest < Minitest::Test class FakeCGI < CGI def initialize(headers, io) From 44909cf28d569b2e7d3735123cd425c520549dad Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 25 Apr 2025 03:09:29 +0000 Subject: [PATCH 048/139] feat: support webmock for testing --- Gemfile | 1 + Gemfile.lock | 13 + Rakefile | 2 +- lib/hanzoai/internal/transport/base_client.rb | 2 +- .../transport/pooled_net_requester.rb | 2 +- .../internal/transport/base_client.rbi | 2 +- .../internal/transport/base_client.rbs | 2 +- test/hanzoai/client_test.rb | 270 ++++++++++-------- test/hanzoai/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 d84d9346..fcf5292d 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 92ec1ea6..2a5df77d 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/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 660ebecc..5fc354d2 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -153,7 +153,7 @@ def reap_connection!(status, stream:) # @api private # @return [Hanzoai::Internal::Transport::PooledNetRequester] - attr_accessor :requester + attr_reader :requester # @api private # diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 4f843783..146dfabd 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/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/hanzoai/internal/transport/base_client.rbi b/rbi/lib/hanzoai/internal/transport/base_client.rbi index 9b7d4aef..16cc9c02 100644 --- a/rbi/lib/hanzoai/internal/transport/base_client.rbi +++ b/rbi/lib/hanzoai/internal/transport/base_client.rbi @@ -90,7 +90,7 @@ module Hanzoai # @api private sig { returns(Hanzoai::Internal::Transport::PooledNetRequester) } - attr_accessor :requester + attr_reader :requester # @api private sig do diff --git a/sig/hanzoai/internal/transport/base_client.rbs b/sig/hanzoai/internal/transport/base_client.rbs index 2c77e6a4..c5a0f0d0 100644 --- a/sig/hanzoai/internal/transport/base_client.rbs +++ b/sig/hanzoai/internal/transport/base_client.rbs @@ -53,7 +53,7 @@ module Hanzoai ) -> void # @api private - attr_accessor requester: Hanzoai::Internal::Transport::PooledNetRequester + attr_reader requester: Hanzoai::Internal::Transport::PooledNetRequester def initialize: ( base_url: String, diff --git a/test/hanzoai/client_test.rb b/test/hanzoai/client_test.rb index 1326afaa..67cce8a9 100644 --- a/test/hanzoai/client_test.rb +++ b/test/hanzoai/client_test.rb @@ -3,12 +3,33 @@ require_relative "test_helper" class HanzoaiTest < 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_unknown_environment @@ -25,103 +46,79 @@ 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 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 500, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home end - assert_equal(3, requester.attempts.length) + assert_requested(:any, /./, times: 3) end def test_client_given_request_default_retry_attempts - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key", max_retries: 3) - requester = MockRequester.new(500, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 500, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key", max_retries: 3) assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home end - assert_equal(4, requester.attempts.length) + assert_requested(:any, /./, times: 4) end def test_client_default_request_given_retry_attempts - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 500, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home(request_options: {max_retries: 3}) end - assert_equal(4, requester.attempts.length) + assert_requested(:any, /./, times: 4) end def test_client_given_request_given_retry_attempts - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key", max_retries: 3) - requester = MockRequester.new(500, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 500, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key", max_retries: 3) assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home(request_options: {max_retries: 4}) end - assert_equal(5, requester.attempts.length) + assert_requested(:any, /./, times: 5) end def test_client_retry_after_seconds - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key", max_retries: 1) - requester = MockRequester.new(500, {"retry-after" => "1.3"}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json( + status: 500, + headers: {"retry-after" => "1.3"}, + body: {} + ) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key", max_retries: 1) assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home 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 - hanzo = Hanzoai::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}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json( + status: 500, + headers: {"retry-after" => (Time.now + 10).httpdate}, + body: {} + ) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key", max_retries: 1) assert_raises(Hanzoai::Errors::InternalServerError) do Thread.current.thread_variable_set(:time_now, Time.now) @@ -129,139 +126,180 @@ 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 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key", max_retries: 1) - requester = MockRequester.new(500, {"retry-after-ms" => "1300"}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json( + status: 500, + headers: {"retry-after-ms" => "1300"}, + body: {} + ) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key", max_retries: 1) assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home 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 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 500, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home end - retry_count_headers = requester.attempts.map do - _1.fetch(:headers).fetch("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 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 500, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home(request_options: {extra_headers: {"x-stainless-retry-count" => nil}}) end - retry_count_headers = requester.attempts.map do - _1.fetch(:headers).fetch("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 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 500, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::InternalServerError) do hanzo.get_home(request_options: {extra_headers: {"x-stainless-retry-count" => "42"}}) end - retry_count_headers = requester.attempts.map do - _1.fetch(:headers).fetch("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 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(307, {"location" => "/redirected"}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json( + status: 307, + headers: {"location" => "/redirected"}, + body: {} + ) + stub_request(:any, "http://localhost/redirected").to_return( + status: 307, + headers: {"location" => "/redirected"} + ) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::APIConnectionError) do hanzo.get_home(request_options: {extra_headers: {}}) 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: Hanzoai::Client::MAX_REDIRECTS) do + assert_equal(recorded.method, _1.method) + assert_equal(recorded.body, _1.body) + assert_equal( + recorded.headers.transform_keys(&:downcase).fetch("content-type"), + _1.headers.transform_keys(&:downcase).fetch("content-type") + ) + end end def test_client_redirect_303 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(303, {"location" => "/redirected"}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json( + status: 303, + headers: {"location" => "/redirected"}, + body: {} + ) + stub_request(:get, "http://localhost/redirected").to_return( + status: 303, + headers: {"location" => "/redirected"} + ) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::APIConnectionError) do hanzo.get_home(request_options: {extra_headers: {}}) 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: Hanzoai::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 - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(307, {"location" => "/redirected"}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json( + status: 307, + headers: {"location" => "/redirected"}, + body: {} + ) + stub_request(:any, "http://localhost/redirected").to_return( + status: 307, + headers: {"location" => "/redirected"} + ) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::APIConnectionError) do hanzo.get_home(request_options: {extra_headers: {"authorization" => "Bearer xyz"}}) 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("authorization") + + assert_equal("Bearer xyz", auth_header) + assert_requested(:any, "http://localhost/redirected", times: Hanzoai::Client::MAX_REDIRECTS) do + auth_header = _1.headers.transform_keys(&:downcase).fetch("authorization") + assert_equal("Bearer xyz", auth_header) + end end def test_client_redirect_auth_strip_cross_origin - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(307, {"location" => "https://example.com/redirected"}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").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"} + ) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") assert_raises(Hanzoai::Errors::APIConnectionError) do hanzo.get_home(request_options: {extra_headers: {"authorization" => "Bearer xyz"}}) end - assert_nil(requester.attempts.last.fetch(:headers)["authorization"]) + assert_requested(:any, "https://example.com/redirected", times: Hanzoai::Client::MAX_REDIRECTS) do + headers = _1.headers.keys.map(&:downcase) + refute_includes(headers, "authorization") + end end def test_default_headers - hanzo = Hanzoai::Client.new(base_url: "http://localhost:4010", api_key: "My API Key") - requester = MockRequester.new(200, {}, {}) - hanzo.requester = requester + stub_request(:get, "http://localhost/").to_return_json(status: 200, body: {}) + + hanzo = Hanzoai::Client.new(base_url: "http://localhost", api_key: "My API Key") + hanzo.get_home - 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/hanzoai/test_helper.rb b/test/hanzoai/test_helper.rb index 8dd8a603..a6890914 100644 --- a/test/hanzoai/test_helper.rb +++ b/test/hanzoai/test_helper.rb @@ -15,6 +15,7 @@ require "minitest/hooks/test" require "minitest/proveit" require "minitest/rg" +require "webmock" require_relative "../../lib/hanzoai" require_relative "resource_namespaces" @@ -44,8 +45,10 @@ def self.now = Thread.current.thread_variable_get(:time_now) || _now class Hanzoai::Test::SingletonClient < Hanzoai::Client include Singleton + TEST_API_BASE_URL = ENV.fetch("TEST_API_BASE_URL", "http://localhost:4010") + def initialize - super(base_url: ENV.fetch("TEST_API_BASE_URL", "http://localhost:4010"), api_key: "My API Key") + super(base_url: Hanzoai::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 98119aef82585723e4fd950d78866f9ef7783b86 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 25 Apr 2025 03:10:40 +0000 Subject: [PATCH 049/139] chore: show truncated parameter docs in yard --- lib/hanzoai/models/budget_new.rb | 27 +- .../config/pass_through_generic_endpoint.rb | 12 +- lib/hanzoai/models/customer_create_params.rb | 31 +- lib/hanzoai/models/customer_list_response.rb | 8 +- .../models/customer_retrieve_info_params.rb | 3 +- .../models/customer_retrieve_info_response.rb | 8 +- .../models/global/spend_list_tags_params.rb | 9 +- .../global/spend_retrieve_report_params.rb | 25 +- lib/hanzoai/models/guardrail_list_response.rb | 4 +- lib/hanzoai/models/health_check_all_params.rb | 3 +- .../models/health_check_services_params.rb | 3 +- lib/hanzoai/models/key_block_params.rb | 7 +- lib/hanzoai/models/key_delete_params.rb | 9 +- lib/hanzoai/models/key_generate_params.rb | 34 +- lib/hanzoai/models/key_list_params.rb | 24 +- lib/hanzoai/models/key_list_response.rb | 59 +++- .../models/key_regenerate_by_key_params.rb | 7 +- .../models/key_retrieve_info_params.rb | 3 +- lib/hanzoai/models/key_unblock_params.rb | 7 +- lib/hanzoai/models/key_update_params.rb | 34 +- lib/hanzoai/models/model_create_params.rb | 5 +- .../organization/info_retrieve_response.rb | 24 +- .../organization_add_member_response.rb | 20 +- .../models/organization_delete_response.rb | 24 +- .../models/organization_list_response.rb | 24 +- .../organization_update_member_params.rb | 10 +- .../organization_update_member_response.rb | 10 +- .../models/organization_update_response.rb | 24 +- lib/hanzoai/models/spend_list_logs_params.rb | 19 +- lib/hanzoai/models/spend_list_tags_params.rb | 6 +- .../models/team/callback_add_params.rb | 10 +- .../models/team_add_member_response.rb | 15 +- lib/hanzoai/models/team_create_params.rb | 23 +- lib/hanzoai/models/team_delete_params.rb | 8 +- lib/hanzoai/models/team_list_params.rb | 4 +- .../models/team_retrieve_info_params.rb | 3 +- lib/hanzoai/models/team_update_params.rb | 20 +- lib/hanzoai/models/user_delete_params.rb | 8 +- lib/hanzoai/models/user_list_params.rb | 12 +- .../models/user_retrieve_info_params.rb | 3 +- lib/hanzoai/resources/batches.rb | 8 +- lib/hanzoai/resources/budget.rb | 56 ++- .../resources/config/pass_through_endpoint.rb | 13 +- lib/hanzoai/resources/customer.rb | 34 +- lib/hanzoai/resources/global/spend.rb | 34 +- lib/hanzoai/resources/health.rb | 6 +- lib/hanzoai/resources/key.rb | 330 ++++++++++++------ lib/hanzoai/resources/model.rb | 5 +- lib/hanzoai/resources/organization.rb | 10 +- lib/hanzoai/resources/spend.rb | 25 +- lib/hanzoai/resources/team.rb | 118 +++++-- lib/hanzoai/resources/team/callback.rb | 19 +- lib/hanzoai/resources/user.rb | 25 +- rbi/lib/hanzoai/models/budget_new.rbi | 9 + .../config/pass_through_generic_endpoint.rbi | 11 +- .../hanzoai/models/customer_create_params.rbi | 8 + .../hanzoai/models/customer_list_response.rbi | 1 + .../models/customer_retrieve_info_params.rbi | 7 +- .../customer_retrieve_info_response.rbi | 1 + .../models/global/spend_list_tags_params.rbi | 11 +- .../global/spend_retrieve_report_params.rbi | 8 + .../models/guardrail_list_response.rbi | 8 +- .../models/health_check_all_params.rbi | 7 +- .../models/health_check_services_params.rbi | 7 +- rbi/lib/hanzoai/models/key_block_params.rbi | 8 +- rbi/lib/hanzoai/models/key_delete_params.rbi | 10 +- .../hanzoai/models/key_generate_params.rbi | 2 + rbi/lib/hanzoai/models/key_list_params.rbi | 8 + rbi/lib/hanzoai/models/key_list_response.rbi | 11 + .../models/key_regenerate_by_key_params.rbi | 8 +- .../models/key_retrieve_info_params.rbi | 7 +- rbi/lib/hanzoai/models/key_unblock_params.rbi | 8 +- rbi/lib/hanzoai/models/key_update_params.rbi | 2 + .../hanzoai/models/model_create_params.rbi | 9 +- .../organization/info_retrieve_response.rbi | 2 + .../organization_add_member_response.rbi | 2 + .../models/organization_delete_response.rbi | 2 + .../models/organization_list_response.rbi | 2 + .../organization_update_member_params.rbi | 11 + .../organization_update_member_response.rbi | 1 + .../models/organization_update_response.rbi | 2 + .../hanzoai/models/spend_list_logs_params.rbi | 10 +- .../hanzoai/models/spend_list_tags_params.rbi | 9 +- .../models/team/callback_add_params.rbi | 6 +- .../models/team_add_member_response.rbi | 10 +- rbi/lib/hanzoai/models/team_create_params.rbi | 2 + rbi/lib/hanzoai/models/team_delete_params.rbi | 9 +- rbi/lib/hanzoai/models/team_list_params.rbi | 8 +- .../models/team_retrieve_info_params.rbi | 7 +- rbi/lib/hanzoai/models/team_update_params.rbi | 2 + rbi/lib/hanzoai/models/user_delete_params.rbi | 9 +- rbi/lib/hanzoai/models/user_list_params.rbi | 13 +- .../models/user_retrieve_info_params.rbi | 7 +- 93 files changed, 1208 insertions(+), 329 deletions(-) diff --git a/lib/hanzoai/models/budget_new.rb b/lib/hanzoai/models/budget_new.rb index b4a75904..73b5c3ac 100644 --- a/lib/hanzoai/models/budget_new.rb +++ b/lib/hanzoai/models/budget_new.rb @@ -55,14 +55,25 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel optional :tpm_limit, Integer, nil?: true # @!method initialize(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # @param budget_duration [String, nil] - # @param budget_id [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::BudgetNew} for more details. + # + # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') + # + # @param budget_id [String, nil] The unique budget id. + # + # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. + # + # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. + # + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # ... + # + # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. + # + # @param soft_budget [Float, nil] Requests will NOT fail if this is exceeded. Will fire alerting though. + # + # @param tpm_limit [Integer, nil] Max tokens per minute, allowed for this budget id. class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel # @!attribute budget_duration diff --git a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb index 0ad00ba3..a9aafeee 100644 --- a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb +++ b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb @@ -24,9 +24,15 @@ class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel required :target, String # @!method initialize(headers:, path:, target:) - # @param headers [Object] - # @param path [String] - # @param target [String] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Config::PassThroughGenericEndpoint} for more details. + # + # @param headers [Object] Key-value pairs of headers to be forwarded with the request. You can set any key + # ... + # + # @param path [String] The route to be added to the LLM Proxy Server. + # + # @param target [String] The URL to which requests for this path should be forwarded. end end end diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index e932ad03..02e2218a 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -85,19 +85,36 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel optional :tpm_limit, Integer, nil?: true # @!method initialize(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::CustomerCreateParams} for more details. + # # @param user_id [String] + # # @param alias_ [String, nil] + # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] + # # @param blocked [Boolean] - # @param budget_duration [String, nil] + # + # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') + # # @param budget_id [String, nil] + # # @param default_model [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] + # + # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. + # + # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. + # + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # ... + # + # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. + # + # @param soft_budget [Float, nil] Requests will NOT fail if this is exceeded. Will fire alerting though. + # + # @param tpm_limit [Integer, nil] Max tokens per minute, allowed for this budget id. + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module AllowedModelRegion diff --git a/lib/hanzoai/models/customer_list_response.rb b/lib/hanzoai/models/customer_list_response.rb index 5efeea46..ff5dd1a2 100644 --- a/lib/hanzoai/models/customer_list_response.rb +++ b/lib/hanzoai/models/customer_list_response.rb @@ -43,11 +43,17 @@ class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) # @param blocked [Boolean] + # # @param user_id [String] + # # @param alias_ [String, nil] + # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion, nil] + # # @param default_model [String, nil] - # @param llm_budget_table [Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] # @see Hanzoai::Models::CustomerListResponseItem#allowed_model_region diff --git a/lib/hanzoai/models/customer_retrieve_info_params.rb b/lib/hanzoai/models/customer_retrieve_info_params.rb index 3f9a0b82..68fb628f 100644 --- a/lib/hanzoai/models/customer_retrieve_info_params.rb +++ b/lib/hanzoai/models/customer_retrieve_info_params.rb @@ -14,7 +14,8 @@ class CustomerRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel required :end_user_id, String # @!method initialize(end_user_id:, request_options: {}) - # @param end_user_id [String] + # @param end_user_id [String] End User ID in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/customer_retrieve_info_response.rb b/lib/hanzoai/models/customer_retrieve_info_response.rb index 71677314..aba7f069 100644 --- a/lib/hanzoai/models/customer_retrieve_info_response.rb +++ b/lib/hanzoai/models/customer_retrieve_info_response.rb @@ -46,11 +46,17 @@ class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) # @param blocked [Boolean] + # # @param user_id [String] + # # @param alias_ [String, nil] + # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion, nil] + # # @param default_model [String, nil] - # @param llm_budget_table [Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] # @see Hanzoai::Models::CustomerRetrieveInfoResponse#allowed_model_region diff --git a/lib/hanzoai/models/global/spend_list_tags_params.rb b/lib/hanzoai/models/global/spend_list_tags_params.rb index 73449d03..c1ac987e 100644 --- a/lib/hanzoai/models/global/spend_list_tags_params.rb +++ b/lib/hanzoai/models/global/spend_list_tags_params.rb @@ -27,9 +27,12 @@ class SpendListTagsParams < Hanzoai::Internal::Type::BaseModel optional :tags, String, nil?: true # @!method initialize(end_date: nil, start_date: nil, tags: nil, request_options: {}) - # @param end_date [String, nil] - # @param start_date [String, nil] - # @param tags [String, nil] + # @param end_date [String, nil] Time till which to view key spend + # + # @param start_date [String, nil] Time from which to start viewing key spend + # + # @param tags [String, nil] comman separated tags to filter on + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/global/spend_retrieve_report_params.rb b/lib/hanzoai/models/global/spend_retrieve_report_params.rb index 7a3fa11e..878d94db 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_params.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_params.rb @@ -52,13 +52,24 @@ class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel optional :team_id, String, nil?: true # @!method initialize(api_key: nil, customer_id: nil, end_date: nil, group_by: nil, internal_user_id: nil, start_date: nil, team_id: nil, request_options: {}) - # @param api_key [String, nil] - # @param customer_id [String, nil] - # @param end_date [String, nil] - # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] - # @param internal_user_id [String, nil] - # @param start_date [String, nil] - # @param team_id [String, nil] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Global::SpendRetrieveReportParams} for more details. + # + # @param api_key [String, nil] View spend for a specific api_key. Example api_key='sk-1234 + # + # @param customer_id [String, nil] View spend for a specific customer_id. Example customer_id='1234. Can be used in + # ... + # + # @param end_date [String, nil] Time till which to view spend + # + # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key + # + # @param internal_user_id [String, nil] View spend for a specific internal_user_id. Example internal_user_id='1234 + # + # @param start_date [String, nil] Time from which to start viewing spend + # + # @param team_id [String, nil] View spend for a specific team_id. Example team_id='1234 + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # Group spend by internal team or customer or api_key diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index 2fe61606..0199bef4 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -32,8 +32,10 @@ class Guardrail < Hanzoai::Internal::Type::BaseModel # @!method initialize(guardrail_info:, guardrail_name:, llm_params:) # @param guardrail_info [Object, nil] + # # @param guardrail_name [String] - # @param llm_params [Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams] + # + # @param llm_params [Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams] The returned LLM Params object for /guardrails/list # @see Hanzoai::Models::GuardrailListResponse::Guardrail#llm_params class LlmParams < Hanzoai::Internal::Type::BaseModel diff --git a/lib/hanzoai/models/health_check_all_params.rb b/lib/hanzoai/models/health_check_all_params.rb index d4fe1b98..03eb5878 100644 --- a/lib/hanzoai/models/health_check_all_params.rb +++ b/lib/hanzoai/models/health_check_all_params.rb @@ -14,7 +14,8 @@ class HealthCheckAllParams < Hanzoai::Internal::Type::BaseModel optional :model, String, nil?: true # @!method initialize(model: nil, request_options: {}) - # @param model [String, nil] + # @param model [String, nil] Specify the model name (optional) + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/health_check_services_params.rb b/lib/hanzoai/models/health_check_services_params.rb index 35fccfac..d39db119 100644 --- a/lib/hanzoai/models/health_check_services_params.rb +++ b/lib/hanzoai/models/health_check_services_params.rb @@ -14,7 +14,8 @@ class HealthCheckServicesParams < Hanzoai::Internal::Type::BaseModel required :service, union: -> { Hanzoai::Models::HealthCheckServicesParams::Service } # @!method initialize(service:, request_options: {}) - # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] + # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] Specify the service being hit. + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # Specify the service being hit. diff --git a/lib/hanzoai/models/key_block_params.rb b/lib/hanzoai/models/key_block_params.rb index 6bedc7e2..5700b1b6 100644 --- a/lib/hanzoai/models/key_block_params.rb +++ b/lib/hanzoai/models/key_block_params.rb @@ -15,7 +15,12 @@ class KeyBlockParams < Hanzoai::Models::BlockKeyRequest optional :llm_changed_by, String # @!method initialize(llm_changed_by: nil, request_options: {}) - # @param llm_changed_by [String] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyBlockParams} for more details. + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key_delete_params.rb b/lib/hanzoai/models/key_delete_params.rb index e60319f1..f0310a0f 100644 --- a/lib/hanzoai/models/key_delete_params.rb +++ b/lib/hanzoai/models/key_delete_params.rb @@ -25,9 +25,16 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyDeleteParams} for more details. + # # @param key_aliases [Array, nil] + # # @param keys [Array, nil] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index 987b3590..8cb02cb9 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -152,34 +152,66 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyGenerateParams} for more details. + # # @param aliases [Object, nil] + # # @param allowed_cache_controls [Array, nil] + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param budget_id [String, nil] + # # @param config [Object, nil] + # # @param duration [String, nil] + # # @param enforced_params [Array, nil] + # # @param guardrails [Array, nil] + # # @param key [String, nil] + # # @param key_alias [String, nil] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] + # # @param metadata [Object, nil] + # # @param model_max_budget [Object, nil] + # # @param model_rpm_limit [Object, nil] + # # @param model_tpm_limit [Object, nil] + # # @param models [Array, nil] + # # @param permissions [Object, nil] + # # @param rpm_limit [Integer, nil] + # # @param send_invite_email [Boolean, nil] + # # @param soft_budget [Float, nil] + # # @param spend [Float, nil] + # # @param tags [Array, nil] + # # @param team_id [String, nil] + # # @param tpm_limit [Integer, nil] + # # @param user_id [String, nil] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key_list_params.rb b/lib/hanzoai/models/key_list_params.rb index 46badb1a..5b114a54 100644 --- a/lib/hanzoai/models/key_list_params.rb +++ b/lib/hanzoai/models/key_list_params.rb @@ -56,14 +56,22 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(include_team_keys: nil, key_alias: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, team_id: nil, user_id: nil, request_options: {}) - # @param include_team_keys [Boolean] - # @param key_alias [String, nil] - # @param organization_id [String, nil] - # @param page [Integer] - # @param return_full_object [Boolean] - # @param size [Integer] - # @param team_id [String, nil] - # @param user_id [String, nil] + # @param include_team_keys [Boolean] Include all keys for teams that user is an admin of. + # + # @param key_alias [String, nil] Filter keys by key alias + # + # @param organization_id [String, nil] Filter keys by organization ID + # + # @param page [Integer] Page number + # + # @param return_full_object [Boolean] Return full key object + # + # @param size [Integer] Page size + # + # @param team_id [String, nil] Filter keys by team ID + # + # @param user_id [String, nil] Filter keys by user ID + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index 86a1eb32..e78c3b15 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -335,62 +335,119 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel optional :user_tpm_limit, Integer, nil?: true # @!method initialize(token: nil, aliases: nil, allowed_cache_controls: nil, allowed_model_region: nil, api_key: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, end_user_id: nil, end_user_max_budget: nil, end_user_rpm_limit: nil, end_user_tpm_limit: nil, expires: nil, key_alias: nil, key_name: nil, last_refreshed_at: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, org_id: nil, parent_otel_span: nil, permissions: nil, rpm_limit: nil, rpm_limit_per_model: nil, soft_budget: nil, soft_budget_cooldown: nil, spend: nil, team_alias: nil, team_blocked: nil, team_id: nil, team_max_budget: nil, team_member: nil, team_member_spend: nil, team_metadata: nil, team_model_aliases: nil, team_models: nil, team_rpm_limit: nil, team_spend: nil, team_tpm_limit: nil, tpm_limit: nil, tpm_limit_per_model: nil, updated_at: nil, updated_by: nil, user_email: nil, user_id: nil, user_role: nil, user_rpm_limit: nil, user_tpm_limit: nil) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth} for more details. + # # Return the row in the db # # @param token [String, nil] + # # @param aliases [Object] + # # @param allowed_cache_controls [Array, nil] + # # @param allowed_model_region [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion, nil] + # # @param api_key [String, nil] + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param budget_reset_at [Time, nil] + # # @param config [Object] + # # @param created_at [Time, nil] + # # @param created_by [String, nil] + # # @param end_user_id [String, nil] + # # @param end_user_max_budget [Float, nil] + # # @param end_user_rpm_limit [Integer, nil] + # # @param end_user_tpm_limit [Integer, nil] + # # @param expires [String, Time, nil] + # # @param key_alias [String, nil] + # # @param key_name [String, nil] + # # @param last_refreshed_at [Float, nil] + # # @param llm_budget_table [Object, nil] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] + # # @param metadata [Object] + # # @param model_max_budget [Object] + # # @param model_spend [Object] + # # @param models [Array] + # # @param org_id [String, nil] + # # @param parent_otel_span [Object] + # # @param permissions [Object] + # # @param rpm_limit [Integer, nil] + # # @param rpm_limit_per_model [Hash{Symbol=>Integer}, nil] + # # @param soft_budget [Float, nil] + # # @param soft_budget_cooldown [Boolean] + # # @param spend [Float] + # # @param team_alias [String, nil] + # # @param team_blocked [Boolean] + # # @param team_id [String, nil] + # # @param team_max_budget [Float, nil] + # # @param team_member [Hanzoai::Models::Member, nil] + # # @param team_member_spend [Float, nil] + # # @param team_metadata [Object, nil] + # # @param team_model_aliases [Object, nil] + # # @param team_models [Array] + # # @param team_rpm_limit [Integer, nil] + # # @param team_spend [Float, nil] + # # @param team_tpm_limit [Integer, nil] + # # @param tpm_limit [Integer, nil] + # # @param tpm_limit_per_model [Hash{Symbol=>Integer}, nil] + # # @param updated_at [Time, nil] + # # @param updated_by [String, nil] + # # @param user_email [String, nil] + # # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] + # + # @param user_role [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] Admin Roles: ... + # # @param user_rpm_limit [Integer, nil] + # # @param user_tpm_limit [Integer, nil] # @see Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth#allowed_model_region diff --git a/lib/hanzoai/models/key_regenerate_by_key_params.rb b/lib/hanzoai/models/key_regenerate_by_key_params.rb index b36061af..59e28d6c 100644 --- a/lib/hanzoai/models/key_regenerate_by_key_params.rb +++ b/lib/hanzoai/models/key_regenerate_by_key_params.rb @@ -15,7 +15,12 @@ class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest optional :llm_changed_by, String # @!method initialize(llm_changed_by: nil, request_options: {}) - # @param llm_changed_by [String] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyRegenerateByKeyParams} for more details. + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key_retrieve_info_params.rb b/lib/hanzoai/models/key_retrieve_info_params.rb index 66eb5cc0..ae75a160 100644 --- a/lib/hanzoai/models/key_retrieve_info_params.rb +++ b/lib/hanzoai/models/key_retrieve_info_params.rb @@ -14,7 +14,8 @@ class KeyRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel optional :key, String, nil?: true # @!method initialize(key: nil, request_options: {}) - # @param key [String, nil] + # @param key [String, nil] Key in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key_unblock_params.rb b/lib/hanzoai/models/key_unblock_params.rb index 6f65021b..583e6162 100644 --- a/lib/hanzoai/models/key_unblock_params.rb +++ b/lib/hanzoai/models/key_unblock_params.rb @@ -15,7 +15,12 @@ class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest optional :llm_changed_by, String # @!method initialize(llm_changed_by: nil, request_options: {}) - # @param llm_changed_by [String] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyUnblockParams} for more details. + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index f2a6f2ee..f90866c0 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -152,34 +152,66 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(key:, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyUpdateParams} for more details. + # # @param key [String] + # # @param aliases [Object, nil] + # # @param allowed_cache_controls [Array, nil] + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param budget_id [String, nil] + # # @param config [Object, nil] + # # @param duration [String, nil] + # # @param enforced_params [Array, nil] + # # @param guardrails [Array, nil] + # # @param key_alias [String, nil] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] + # # @param metadata [Object, nil] + # # @param model_max_budget [Object, nil] + # # @param model_rpm_limit [Object, nil] + # # @param model_tpm_limit [Object, nil] + # # @param models [Array, nil] + # # @param permissions [Object, nil] + # # @param rpm_limit [Integer, nil] + # # @param spend [Float, nil] + # # @param tags [Array, nil] + # # @param team_id [String, nil] + # # @param temp_budget_expiry [Time, nil] + # # @param temp_budget_increase [Float, nil] + # # @param tpm_limit [Integer, nil] + # # @param user_id [String, nil] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index 74b2e0d6..48d7575d 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -24,9 +24,12 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel required :model_name, String # @!method initialize(llm_params:, model_info:, model_name:, request_options: {}) - # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] + # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # # @param model_info [Hanzoai::Models::ModelInfo] + # # @param model_name [String] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] class LlmParams < Hanzoai::Internal::Type::BaseModel diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index a6821047..4ac9b89c 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -79,17 +79,29 @@ class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel # Returned by the /organization/info endpoint and /organization/list endpoint # # @param budget_id [String] + # # @param created_at [Time] + # # @param created_by [String] + # # @param models [Array] + # # @param updated_at [Time] + # # @param updated_by [String] - # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param members [Array] + # # @param metadata [Object, nil] + # # @param organization_alias [String, nil] + # # @param organization_id [String, nil] + # # @param spend [Float] + # # @param teams [Array] # @see Hanzoai::Models::Organization::InfoRetrieveResponse#llm_budget_table @@ -195,13 +207,21 @@ class Member < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::Organization::InfoRetrieveResponse::Member#llm_budget_table diff --git a/lib/hanzoai/models/organization_add_member_response.rb b/lib/hanzoai/models/organization_add_member_response.rb index 9aa15901..2b6202d7 100644 --- a/lib/hanzoai/models/organization_add_member_response.rb +++ b/lib/hanzoai/models/organization_add_member_response.rb @@ -80,13 +80,21 @@ class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership#llm_budget_table @@ -294,13 +302,21 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership#llm_budget_table diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index 318095fb..ea74ffca 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -77,17 +77,29 @@ class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel # Returned by the /organization/info endpoint and /organization/list endpoint # # @param budget_id [String] + # # @param created_at [Time] + # # @param created_by [String] + # # @param models [Array] + # # @param updated_at [Time] + # # @param updated_by [String] - # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param members [Array] + # # @param metadata [Object, nil] + # # @param organization_alias [String, nil] + # # @param organization_id [String, nil] + # # @param spend [Float] + # # @param teams [Array] # @see Hanzoai::Models::OrganizationDeleteResponseItem#llm_budget_table @@ -193,13 +205,21 @@ class Member < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationDeleteResponseItem::Member#llm_budget_table diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index 426da6a0..40d17696 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -77,17 +77,29 @@ class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel # Returned by the /organization/info endpoint and /organization/list endpoint # # @param budget_id [String] + # # @param created_at [Time] + # # @param created_by [String] + # # @param models [Array] + # # @param updated_at [Time] + # # @param updated_by [String] - # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param members [Array] + # # @param metadata [Object, nil] + # # @param organization_alias [String, nil] + # # @param organization_id [String, nil] + # # @param spend [Float] + # # @param teams [Array] # @see Hanzoai::Models::OrganizationListResponseItem#llm_budget_table @@ -193,13 +205,21 @@ class Member < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationListResponseItem::Member#llm_budget_table diff --git a/lib/hanzoai/models/organization_update_member_params.rb b/lib/hanzoai/models/organization_update_member_params.rb index 4e57c9d1..ac545ac6 100644 --- a/lib/hanzoai/models/organization_update_member_params.rb +++ b/lib/hanzoai/models/organization_update_member_params.rb @@ -44,11 +44,19 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(organization_id:, max_budget_in_organization: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::OrganizationUpdateMemberParams} for more details. + # # @param organization_id [String] + # # @param max_budget_in_organization [Float, nil] - # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] + # + # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: ... + # # @param user_email [String, nil] + # # @param user_id [String, nil] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can diff --git a/lib/hanzoai/models/organization_update_member_response.rb b/lib/hanzoai/models/organization_update_member_response.rb index 7d7fa07d..1eff85fb 100644 --- a/lib/hanzoai/models/organization_update_member_response.rb +++ b/lib/hanzoai/models/organization_update_member_response.rb @@ -57,13 +57,21 @@ class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationUpdateMemberResponse#llm_budget_table diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index 35f89ce1..9e6de3e6 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -76,17 +76,29 @@ class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel # Returned by the /organization/info endpoint and /organization/list endpoint # # @param budget_id [String] + # # @param created_at [Time] + # # @param created_by [String] + # # @param models [Array] + # # @param updated_at [Time] + # # @param updated_by [String] - # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param members [Array] + # # @param metadata [Object, nil] + # # @param organization_alias [String, nil] + # # @param organization_id [String, nil] + # # @param spend [Float] + # # @param teams [Array] # @see Hanzoai::Models::OrganizationUpdateResponse#llm_budget_table @@ -192,13 +204,21 @@ class Member < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::OrganizationUpdateResponse::Member#llm_budget_table diff --git a/lib/hanzoai/models/spend_list_logs_params.rb b/lib/hanzoai/models/spend_list_logs_params.rb index 2160758f..08599b70 100644 --- a/lib/hanzoai/models/spend_list_logs_params.rb +++ b/lib/hanzoai/models/spend_list_logs_params.rb @@ -39,11 +39,20 @@ class SpendListLogsParams < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(api_key: nil, end_date: nil, request_id: nil, start_date: nil, user_id: nil, request_options: {}) - # @param api_key [String, nil] - # @param end_date [String, nil] - # @param request_id [String, nil] - # @param start_date [String, nil] - # @param user_id [String, nil] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::SpendListLogsParams} for more details. + # + # @param api_key [String, nil] Get spend logs based on api key + # + # @param end_date [String, nil] Time till which to view key spend + # + # @param request_id [String, nil] request_id to get spend logs for specific request_id. If none passed then pass s + # ... + # + # @param start_date [String, nil] Time from which to start viewing key spend + # + # @param user_id [String, nil] Get spend logs based on user_id + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/spend_list_tags_params.rb b/lib/hanzoai/models/spend_list_tags_params.rb index 424dc8ca..741d658e 100644 --- a/lib/hanzoai/models/spend_list_tags_params.rb +++ b/lib/hanzoai/models/spend_list_tags_params.rb @@ -20,8 +20,10 @@ class SpendListTagsParams < Hanzoai::Internal::Type::BaseModel optional :start_date, String, nil?: true # @!method initialize(end_date: nil, start_date: nil, request_options: {}) - # @param end_date [String, nil] - # @param start_date [String, nil] + # @param end_date [String, nil] Time till which to view key spend + # + # @param start_date [String, nil] Time from which to start viewing key spend + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index 95d55110..679e0a66 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -31,10 +31,18 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Team::CallbackAddParams} for more details. + # # @param callback_name [String] + # # @param callback_vars [Hash{Symbol=>String}] + # # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CallbackType diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index c97389d8..fa1d9c42 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -160,8 +160,11 @@ class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel # @!method initialize(budget_id:, llm_budget_table:, team_id:, user_id:) # @param budget_id [String] - # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param team_id [String] + # # @param user_id [String] # @see Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership#llm_budget_table @@ -369,13 +372,21 @@ class OrganizationMembership < Hanzoai::Internal::Type::BaseModel # spend within the organization # # @param created_at [Time] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param user_id [String] + # # @param budget_id [String, nil] - # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] + # + # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # # @param spend [Float] + # # @param user [Object] + # # @param user_role [String, nil] # @see Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership#llm_budget_table diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index a969df06..ecfd719c 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -95,23 +95,44 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(admins: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, team_id: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamCreateParams} for more details. + # # @param admins [Array] + # # @param blocked [Boolean] + # # @param budget_duration [String, nil] + # # @param guardrails [Array, nil] + # # @param max_budget [Float, nil] + # # @param members [Array] + # # @param members_with_roles [Array] + # # @param metadata [Object, nil] + # # @param model_aliases [Object, nil] + # # @param models [Array] + # # @param organization_id [String, nil] + # # @param rpm_limit [Integer, nil] + # # @param tags [Array, nil] + # # @param team_alias [String, nil] + # # @param team_id [String, nil] + # # @param tpm_limit [Integer, nil] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/team_delete_params.rb b/lib/hanzoai/models/team_delete_params.rb index b8fd49d8..9845adeb 100644 --- a/lib/hanzoai/models/team_delete_params.rb +++ b/lib/hanzoai/models/team_delete_params.rb @@ -20,8 +20,14 @@ class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(team_ids:, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamDeleteParams} for more details. + # # @param team_ids [Array] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/team_list_params.rb b/lib/hanzoai/models/team_list_params.rb index 3a545cdb..fe4b4b45 100644 --- a/lib/hanzoai/models/team_list_params.rb +++ b/lib/hanzoai/models/team_list_params.rb @@ -20,7 +20,9 @@ class TeamListParams < Hanzoai::Internal::Type::BaseModel # @!method initialize(organization_id: nil, user_id: nil, request_options: {}) # @param organization_id [String, nil] - # @param user_id [String, nil] + # + # @param user_id [String, nil] Only return teams which this 'user_id' belongs to + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/team_retrieve_info_params.rb b/lib/hanzoai/models/team_retrieve_info_params.rb index 17e4b5b0..0c7b8fb2 100644 --- a/lib/hanzoai/models/team_retrieve_info_params.rb +++ b/lib/hanzoai/models/team_retrieve_info_params.rb @@ -14,7 +14,8 @@ class TeamRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel optional :team_id, String # @!method initialize(team_id: nil, request_options: {}) - # @param team_id [String] + # @param team_id [String] Team ID in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index de6ff7f1..f3f64106 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -80,20 +80,38 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(team_id:, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamUpdateParams} for more details. + # # @param team_id [String] + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param guardrails [Array, nil] + # # @param max_budget [Float, nil] + # # @param metadata [Object, nil] + # # @param model_aliases [Object, nil] + # # @param models [Array, nil] + # # @param organization_id [String, nil] + # # @param rpm_limit [Integer, nil] + # # @param tags [Array, nil] + # # @param team_alias [String, nil] + # # @param tpm_limit [Integer, nil] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/user_delete_params.rb b/lib/hanzoai/models/user_delete_params.rb index b66e2e16..8e4c40af 100644 --- a/lib/hanzoai/models/user_delete_params.rb +++ b/lib/hanzoai/models/user_delete_params.rb @@ -20,8 +20,14 @@ class UserDeleteParams < Hanzoai::Internal::Type::BaseModel optional :llm_changed_by, String # @!method initialize(user_ids:, llm_changed_by: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::UserDeleteParams} for more details. + # # @param user_ids [Array] - # @param llm_changed_by [String] + # + # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/user_list_params.rb b/lib/hanzoai/models/user_list_params.rb index 2c37a4fc..d24f0ea5 100644 --- a/lib/hanzoai/models/user_list_params.rb +++ b/lib/hanzoai/models/user_list_params.rb @@ -32,10 +32,14 @@ class UserListParams < Hanzoai::Internal::Type::BaseModel optional :user_ids, String, nil?: true # @!method initialize(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}) - # @param page [Integer] - # @param page_size [Integer] - # @param role [String, nil] - # @param user_ids [String, nil] + # @param page [Integer] Page number + # + # @param page_size [Integer] Number of items per page + # + # @param role [String, nil] Filter users by role + # + # @param user_ids [String, nil] Get list of users by user_ids + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/user_retrieve_info_params.rb b/lib/hanzoai/models/user_retrieve_info_params.rb index 1fc77937..15f7dc0a 100644 --- a/lib/hanzoai/models/user_retrieve_info_params.rb +++ b/lib/hanzoai/models/user_retrieve_info_params.rb @@ -14,7 +14,8 @@ class UserRetrieveInfoParams < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(user_id: nil, request_options: {}) - # @param user_id [String, nil] + # @param user_id [String, nil] User ID in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/resources/batches.rb b/lib/hanzoai/resources/batches.rb index a4ab1db1..195e0b0b 100644 --- a/lib/hanzoai/resources/batches.rb +++ b/lib/hanzoai/resources/batches.rb @@ -51,8 +51,10 @@ def create(params = {}) # # @overload retrieve(batch_id, provider: nil, request_options: {}) # - # @param batch_id [String] + # @param batch_id [String] The ID of the batch to retrieve + # # @param provider [String, nil] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -208,8 +210,10 @@ def list_with_provider(provider, params = {}) # # @overload retrieve_with_provider(batch_id, provider:, request_options: {}) # - # @param batch_id [String] + # @param batch_id [String] The ID of the batch to retrieve + # # @param provider [String] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/budget.rb b/lib/hanzoai/resources/budget.rb index c49012c6..fae0c1ad 100644 --- a/lib/hanzoai/resources/budget.rb +++ b/lib/hanzoai/resources/budget.rb @@ -3,6 +3,9 @@ module Hanzoai module Resources class Budget + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::BudgetCreateParams} for more details. + # # Create a new budget object. Can apply this to teams, orgs, end-users, keys. # # Parameters: @@ -22,14 +25,23 @@ class Budget # # @overload create(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # - # @param budget_duration [String, nil] - # @param budget_id [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] + # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') + # + # @param budget_id [String, nil] The unique budget id. + # + # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. + # + # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. + # + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # ... + # + # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. + # + # @param soft_budget [Float, nil] Requests will NOT fail if this is exceeded. Will fire alerting though. + # + # @param tpm_limit [Integer, nil] Max tokens per minute, allowed for this budget id. + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -46,6 +58,9 @@ def create(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::BudgetUpdateParams} for more details. + # # Update an existing budget object. # # Parameters: @@ -65,14 +80,23 @@ def create(params = {}) # # @overload update(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # - # @param budget_duration [String, nil] - # @param budget_id [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] + # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') + # + # @param budget_id [String, nil] The unique budget id. + # + # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. + # + # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. + # + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # ... + # + # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. + # + # @param soft_budget [Float, nil] Requests will NOT fail if this is exceeded. Will fire alerting though. + # + # @param tpm_limit [Integer, nil] Max tokens per minute, allowed for this budget id. + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/config/pass_through_endpoint.rb b/lib/hanzoai/resources/config/pass_through_endpoint.rb index 353c9a50..e366f8eb 100644 --- a/lib/hanzoai/resources/config/pass_through_endpoint.rb +++ b/lib/hanzoai/resources/config/pass_through_endpoint.rb @@ -4,13 +4,20 @@ module Hanzoai module Resources class Config class PassThroughEndpoint + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Config::PassThroughEndpointCreateParams} for more details. + # # Create new pass-through endpoint # # @overload create(headers:, path:, target:, request_options: {}) # - # @param headers [Object] - # @param path [String] - # @param target [String] + # @param headers [Object] Key-value pairs of headers to be forwarded with the request. You can set any key + # ... + # + # @param path [String] The route to be added to the LLM Proxy Server. + # + # @param target [String] The URL to which requests for this path should be forwarded. + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/customer.rb b/lib/hanzoai/resources/customer.rb index 22da3103..2d61193e 100644 --- a/lib/hanzoai/resources/customer.rb +++ b/lib/hanzoai/resources/customer.rb @@ -3,6 +3,9 @@ module Hanzoai module Resources class Customer + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::CustomerCreateParams} for more details. + # # Allow creating a new Customer # # Parameters: @@ -58,18 +61,32 @@ class Customer # @overload create(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # # @param user_id [String] + # # @param alias_ [String, nil] + # # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] + # # @param blocked [Boolean] - # @param budget_duration [String, nil] + # + # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') + # # @param budget_id [String, nil] + # # @param default_model [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] + # + # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. + # + # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. + # + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # ... + # + # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. + # + # @param soft_budget [Float, nil] Requests will NOT fail if this is exceeded. Will fire alerting though. + # + # @param tpm_limit [Integer, nil] Max tokens per minute, allowed for this budget id. + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -246,7 +263,8 @@ def block(params) # # @overload retrieve_info(end_user_id:, request_options: {}) # - # @param end_user_id [String] + # @param end_user_id [String] End User ID in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::CustomerRetrieveInfoResponse] diff --git a/lib/hanzoai/resources/global/spend.rb b/lib/hanzoai/resources/global/spend.rb index 4b92291a..7d366203 100644 --- a/lib/hanzoai/resources/global/spend.rb +++ b/lib/hanzoai/resources/global/spend.rb @@ -20,9 +20,12 @@ class Spend # # @overload list_tags(end_date: nil, start_date: nil, tags: nil, request_options: {}) # - # @param end_date [String, nil] - # @param start_date [String, nil] - # @param tags [String, nil] + # @param end_date [String, nil] Time till which to view key spend + # + # @param start_date [String, nil] Time from which to start viewing key spend + # + # @param tags [String, nil] comman separated tags to filter on + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Array] @@ -64,6 +67,9 @@ def reset(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Global::SpendRetrieveReportParams} for more details. + # # Get Daily Spend per Team, based on specific startTime and endTime. Per team, # view usage by each key, model [ { "group-by-day": "2024-05-10", "teams": [ { # "team_name": "team-1" "spend": 10, "keys": [ "key": "1213", "usage": { @@ -73,13 +79,21 @@ def reset(params = {}) # # @overload retrieve_report(api_key: nil, customer_id: nil, end_date: nil, group_by: nil, internal_user_id: nil, start_date: nil, team_id: nil, request_options: {}) # - # @param api_key [String, nil] - # @param customer_id [String, nil] - # @param end_date [String, nil] - # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] - # @param internal_user_id [String, nil] - # @param start_date [String, nil] - # @param team_id [String, nil] + # @param api_key [String, nil] View spend for a specific api_key. Example api_key='sk-1234 + # + # @param customer_id [String, nil] View spend for a specific customer_id. Example customer_id='1234. Can be used in + # ... + # + # @param end_date [String, nil] Time till which to view spend + # + # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key + # + # @param internal_user_id [String, nil] View spend for a specific internal_user_id. Example internal_user_id='1234 + # + # @param start_date [String, nil] Time from which to start viewing spend + # + # @param team_id [String, nil] View spend for a specific team_id. Example team_id='1234 + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Array] diff --git a/lib/hanzoai/resources/health.rb b/lib/hanzoai/resources/health.rb index 61153346..910378dc 100644 --- a/lib/hanzoai/resources/health.rb +++ b/lib/hanzoai/resources/health.rb @@ -21,7 +21,8 @@ class Health # # @overload check_all(model: nil, request_options: {}) # - # @param model [String, nil] + # @param model [String, nil] Specify the model name (optional) + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -102,7 +103,8 @@ def check_readiness(params = {}) # # @overload check_services(service:, request_options: {}) # - # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] + # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] Specify the service being hit. + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/key.rb b/lib/hanzoai/resources/key.rb index c145ed7e..f7944c35 100644 --- a/lib/hanzoai/resources/key.rb +++ b/lib/hanzoai/resources/key.rb @@ -6,6 +6,9 @@ class Key # @return [Hanzoai::Resources::Key::Regenerate] attr_reader :regenerate + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyUpdateParams} for more details. + # # Update an existing API key's parameters. # # Parameters: @@ -66,34 +69,63 @@ class Key # # @overload update(key:, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # - # @param key [String] - # @param aliases [Object, nil] - # @param allowed_cache_controls [Array, nil] - # @param blocked [Boolean, nil] - # @param budget_duration [String, nil] - # @param budget_id [String, nil] - # @param config [Object, nil] - # @param duration [String, nil] - # @param enforced_params [Array, nil] - # @param guardrails [Array, nil] - # @param key_alias [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] - # @param models [Array, nil] - # @param permissions [Object, nil] - # @param rpm_limit [Integer, nil] - # @param spend [Float, nil] - # @param tags [Array, nil] - # @param team_id [String, nil] - # @param temp_budget_expiry [Time, nil] - # @param temp_budget_increase [Float, nil] - # @param tpm_limit [Integer, nil] - # @param user_id [String, nil] - # @param llm_changed_by [String] + # @param key [String] Body param: + # + # @param aliases [Object, nil] Body param: + # + # @param allowed_cache_controls [Array, nil] Body param: + # + # @param blocked [Boolean, nil] Body param: + # + # @param budget_duration [String, nil] Body param: + # + # @param budget_id [String, nil] Body param: + # + # @param config [Object, nil] Body param: + # + # @param duration [String, nil] Body param: + # + # @param enforced_params [Array, nil] Body param: + # + # @param guardrails [Array, nil] Body param: + # + # @param key_alias [String, nil] Body param: + # + # @param max_budget [Float, nil] Body param: + # + # @param max_parallel_requests [Integer, nil] Body param: + # + # @param metadata [Object, nil] Body param: + # + # @param model_max_budget [Object, nil] Body param: + # + # @param model_rpm_limit [Object, nil] Body param: + # + # @param model_tpm_limit [Object, nil] Body param: + # + # @param models [Array, nil] Body param: + # + # @param permissions [Object, nil] Body param: + # + # @param rpm_limit [Integer, nil] Body param: + # + # @param spend [Float, nil] Body param: + # + # @param tags [Array, nil] Body param: + # + # @param team_id [String, nil] Body param: + # + # @param temp_budget_expiry [Time, nil] Body param: + # + # @param temp_budget_increase [Float, nil] Body param: + # + # @param tpm_limit [Integer, nil] Body param: + # + # @param user_id [String, nil] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -119,14 +151,22 @@ def update(params) # # @overload list(include_team_keys: nil, key_alias: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, team_id: nil, user_id: nil, request_options: {}) # - # @param include_team_keys [Boolean] - # @param key_alias [String, nil] - # @param organization_id [String, nil] - # @param page [Integer] - # @param return_full_object [Boolean] - # @param size [Integer] - # @param team_id [String, nil] - # @param user_id [String, nil] + # @param include_team_keys [Boolean] Include all keys for teams that user is an admin of. + # + # @param key_alias [String, nil] Filter keys by key alias + # + # @param organization_id [String, nil] Filter keys by organization ID + # + # @param page [Integer] Page number + # + # @param return_full_object [Boolean] Return full key object + # + # @param size [Integer] Page size + # + # @param team_id [String, nil] Filter keys by team ID + # + # @param user_id [String, nil] Filter keys by user ID + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::KeyListResponse] @@ -143,6 +183,9 @@ def list(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyDeleteParams} for more details. + # # Delete a key from the key management system. # # Parameters:: @@ -171,9 +214,13 @@ def list(params = {}) # # @overload delete(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) # - # @param key_aliases [Array, nil] - # @param keys [Array, nil] - # @param llm_changed_by [String] + # @param key_aliases [Array, nil] Body param: + # + # @param keys [Array, nil] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -192,6 +239,9 @@ def delete(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyBlockParams} for more details. + # # Block an Virtual key from making any requests. # # Parameters: @@ -211,8 +261,11 @@ def delete(params = {}) # # @overload block(key:, llm_changed_by: nil, request_options: {}) # - # @param key [String] - # @param llm_changed_by [String] + # @param key [String] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::KeyBlockResponse, nil] @@ -287,6 +340,9 @@ def check_health(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyGenerateParams} for more details. + # # Generate an API key based on the provided data. # # Docs: https://docs.hanzo.ai/docs/proxy/virtual_keys @@ -373,34 +429,63 @@ def check_health(params = {}) # # @overload generate(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # - # @param aliases [Object, nil] - # @param allowed_cache_controls [Array, nil] - # @param blocked [Boolean, nil] - # @param budget_duration [String, nil] - # @param budget_id [String, nil] - # @param config [Object, nil] - # @param duration [String, nil] - # @param enforced_params [Array, nil] - # @param guardrails [Array, nil] - # @param key [String, nil] - # @param key_alias [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] - # @param models [Array, nil] - # @param permissions [Object, nil] - # @param rpm_limit [Integer, nil] - # @param send_invite_email [Boolean, nil] - # @param soft_budget [Float, nil] - # @param spend [Float, nil] - # @param tags [Array, nil] - # @param team_id [String, nil] - # @param tpm_limit [Integer, nil] - # @param user_id [String, nil] - # @param llm_changed_by [String] + # @param aliases [Object, nil] Body param: + # + # @param allowed_cache_controls [Array, nil] Body param: + # + # @param blocked [Boolean, nil] Body param: + # + # @param budget_duration [String, nil] Body param: + # + # @param budget_id [String, nil] Body param: + # + # @param config [Object, nil] Body param: + # + # @param duration [String, nil] Body param: + # + # @param enforced_params [Array, nil] Body param: + # + # @param guardrails [Array, nil] Body param: + # + # @param key [String, nil] Body param: + # + # @param key_alias [String, nil] Body param: + # + # @param max_budget [Float, nil] Body param: + # + # @param max_parallel_requests [Integer, nil] Body param: + # + # @param metadata [Object, nil] Body param: + # + # @param model_max_budget [Object, nil] Body param: + # + # @param model_rpm_limit [Object, nil] Body param: + # + # @param model_tpm_limit [Object, nil] Body param: + # + # @param models [Array, nil] Body param: + # + # @param permissions [Object, nil] Body param: + # + # @param rpm_limit [Integer, nil] Body param: + # + # @param send_invite_email [Boolean, nil] Body param: + # + # @param soft_budget [Float, nil] Body param: + # + # @param spend [Float, nil] Body param: + # + # @param tags [Array, nil] Body param: + # + # @param team_id [String, nil] Body param: + # + # @param tpm_limit [Integer, nil] Body param: + # + # @param user_id [String, nil] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::GenerateKeyResponse] @@ -419,6 +504,9 @@ def generate(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyRegenerateByKeyParams} for more details. + # # Regenerate an existing API key while optionally updating its parameters. # # Parameters: @@ -472,36 +560,67 @@ def generate(params = {}) # # @overload regenerate_by_key(path_key, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, body_key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, new_master_key: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) # - # @param path_key [String] - # @param aliases [Object, nil] - # @param allowed_cache_controls [Array, nil] - # @param blocked [Boolean, nil] - # @param budget_duration [String, nil] - # @param budget_id [String, nil] - # @param config [Object, nil] - # @param duration [String, nil] - # @param enforced_params [Array, nil] - # @param guardrails [Array, nil] - # @param body_key [String, nil] - # @param key_alias [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] - # @param models [Array, nil] - # @param new_master_key [String, nil] - # @param permissions [Object, nil] - # @param rpm_limit [Integer, nil] - # @param send_invite_email [Boolean, nil] - # @param soft_budget [Float, nil] - # @param spend [Float, nil] - # @param tags [Array, nil] - # @param team_id [String, nil] - # @param tpm_limit [Integer, nil] - # @param user_id [String, nil] - # @param llm_changed_by [String] + # @param path_key [String] Path param: + # + # @param aliases [Object, nil] Body param: + # + # @param allowed_cache_controls [Array, nil] Body param: + # + # @param blocked [Boolean, nil] Body param: + # + # @param budget_duration [String, nil] Body param: + # + # @param budget_id [String, nil] Body param: + # + # @param config [Object, nil] Body param: + # + # @param duration [String, nil] Body param: + # + # @param enforced_params [Array, nil] Body param: + # + # @param guardrails [Array, nil] Body param: + # + # @param body_key [String, nil] Body param: + # + # @param key_alias [String, nil] Body param: + # + # @param max_budget [Float, nil] Body param: + # + # @param max_parallel_requests [Integer, nil] Body param: + # + # @param metadata [Object, nil] Body param: + # + # @param model_max_budget [Object, nil] Body param: + # + # @param model_rpm_limit [Object, nil] Body param: + # + # @param model_tpm_limit [Object, nil] Body param: + # + # @param models [Array, nil] Body param: + # + # @param new_master_key [String, nil] Body param: + # + # @param permissions [Object, nil] Body param: + # + # @param rpm_limit [Integer, nil] Body param: + # + # @param send_invite_email [Boolean, nil] Body param: + # + # @param soft_budget [Float, nil] Body param: + # + # @param spend [Float, nil] Body param: + # + # @param tags [Array, nil] Body param: + # + # @param team_id [String, nil] Body param: + # + # @param tpm_limit [Integer, nil] Body param: + # + # @param user_id [String, nil] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::GenerateKeyResponse, nil] @@ -540,7 +659,8 @@ def regenerate_by_key(path_key, params = {}) # # @overload retrieve_info(key: nil, request_options: {}) # - # @param key [String, nil] + # @param key [String, nil] Key in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -557,6 +677,9 @@ def retrieve_info(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::KeyUnblockParams} for more details. + # # Unblock a Virtual key to allow it to make requests again. # # Parameters: @@ -576,8 +699,11 @@ def retrieve_info(params = {}) # # @overload unblock(key:, llm_changed_by: nil, request_options: {}) # - # @param key [String] - # @param llm_changed_by [String] + # @param key [String] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/model.rb b/lib/hanzoai/resources/model.rb index 18c15c48..eb8f5435 100644 --- a/lib/hanzoai/resources/model.rb +++ b/lib/hanzoai/resources/model.rb @@ -13,9 +13,12 @@ class Model # # @overload create(llm_params:, model_info:, model_name:, request_options: {}) # - # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] + # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # # @param model_info [Hanzoai::Models::ModelInfo] + # # @param model_name [String] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/organization.rb b/lib/hanzoai/resources/organization.rb index 0e887e15..5d8c632f 100644 --- a/lib/hanzoai/resources/organization.rb +++ b/lib/hanzoai/resources/organization.rb @@ -255,15 +255,23 @@ def delete_member(params) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::OrganizationUpdateMemberParams} for more details. + # # Update a member's role in an organization # # @overload update_member(organization_id:, max_budget_in_organization: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) # # @param organization_id [String] + # # @param max_budget_in_organization [Float, nil] - # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] + # + # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: ... + # # @param user_email [String, nil] + # # @param user_id [String, nil] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::OrganizationUpdateMemberResponse] diff --git a/lib/hanzoai/resources/spend.rb b/lib/hanzoai/resources/spend.rb index 1d8aa6d8..70b1bff0 100644 --- a/lib/hanzoai/resources/spend.rb +++ b/lib/hanzoai/resources/spend.rb @@ -72,6 +72,9 @@ def calculate_spend(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::SpendListLogsParams} for more details. + # # View all spend logs, if request_id is provided, only logs for that request_id # will be returned # @@ -101,11 +104,17 @@ def calculate_spend(params = {}) # # @overload list_logs(api_key: nil, end_date: nil, request_id: nil, start_date: nil, user_id: nil, request_options: {}) # - # @param api_key [String, nil] - # @param end_date [String, nil] - # @param request_id [String, nil] - # @param start_date [String, nil] - # @param user_id [String, nil] + # @param api_key [String, nil] Get spend logs based on api key + # + # @param end_date [String, nil] Time till which to view key spend + # + # @param request_id [String, nil] request_id to get spend logs for specific request_id. If none passed then pass s + # ... + # + # @param start_date [String, nil] Time from which to start viewing key spend + # + # @param user_id [String, nil] Get spend logs based on user_id + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Array] @@ -138,8 +147,10 @@ def list_logs(params = {}) # # @overload list_tags(end_date: nil, start_date: nil, request_options: {}) # - # @param end_date [String, nil] - # @param start_date [String, nil] + # @param end_date [String, nil] Time till which to view key spend + # + # @param start_date [String, nil] Time from which to start viewing key spend + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Array] diff --git a/lib/hanzoai/resources/team.rb b/lib/hanzoai/resources/team.rb index db75afda..36be7c2b 100644 --- a/lib/hanzoai/resources/team.rb +++ b/lib/hanzoai/resources/team.rb @@ -9,6 +9,9 @@ class Team # @return [Hanzoai::Resources::Team::Callback] attr_reader :callback + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamCreateParams} for more details. + # # Allow users to create a new team. Apply user permissions to their team. # # 👉 @@ -78,23 +81,41 @@ class Team # # @overload create(admins: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, team_id: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) # - # @param admins [Array] - # @param blocked [Boolean] - # @param budget_duration [String, nil] - # @param guardrails [Array, nil] - # @param max_budget [Float, nil] - # @param members [Array] - # @param members_with_roles [Array] - # @param metadata [Object, nil] - # @param model_aliases [Object, nil] - # @param models [Array] - # @param organization_id [String, nil] - # @param rpm_limit [Integer, nil] - # @param tags [Array, nil] - # @param team_alias [String, nil] - # @param team_id [String, nil] - # @param tpm_limit [Integer, nil] - # @param llm_changed_by [String] + # @param admins [Array] Body param: + # + # @param blocked [Boolean] Body param: + # + # @param budget_duration [String, nil] Body param: + # + # @param guardrails [Array, nil] Body param: + # + # @param max_budget [Float, nil] Body param: + # + # @param members [Array] Body param: + # + # @param members_with_roles [Array] Body param: + # + # @param metadata [Object, nil] Body param: + # + # @param model_aliases [Object, nil] Body param: + # + # @param models [Array] Body param: + # + # @param organization_id [String, nil] Body param: + # + # @param rpm_limit [Integer, nil] Body param: + # + # @param tags [Array, nil] Body param: + # + # @param team_alias [String, nil] Body param: + # + # @param team_id [String, nil] Body param: + # + # @param tpm_limit [Integer, nil] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::TeamCreateResponse] @@ -113,6 +134,9 @@ def create(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamUpdateParams} for more details. + # # Use `/team/member_add` AND `/team/member/delete` to add/remove new team members # # You can now update team budget / rate limits via /team/update @@ -167,20 +191,35 @@ def create(params = {}) # # @overload update(team_id:, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) # - # @param team_id [String] - # @param blocked [Boolean, nil] - # @param budget_duration [String, nil] - # @param guardrails [Array, nil] - # @param max_budget [Float, nil] - # @param metadata [Object, nil] - # @param model_aliases [Object, nil] - # @param models [Array, nil] - # @param organization_id [String, nil] - # @param rpm_limit [Integer, nil] - # @param tags [Array, nil] - # @param team_alias [String, nil] - # @param tpm_limit [Integer, nil] - # @param llm_changed_by [String] + # @param team_id [String] Body param: + # + # @param blocked [Boolean, nil] Body param: + # + # @param budget_duration [String, nil] Body param: + # + # @param guardrails [Array, nil] Body param: + # + # @param max_budget [Float, nil] Body param: + # + # @param metadata [Object, nil] Body param: + # + # @param model_aliases [Object, nil] Body param: + # + # @param models [Array, nil] Body param: + # + # @param organization_id [String, nil] Body param: + # + # @param rpm_limit [Integer, nil] Body param: + # + # @param tags [Array, nil] Body param: + # + # @param team_alias [String, nil] Body param: + # + # @param tpm_limit [Integer, nil] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -214,7 +253,9 @@ def update(params) # @overload list(organization_id: nil, user_id: nil, request_options: {}) # # @param organization_id [String, nil] - # @param user_id [String, nil] + # + # @param user_id [String, nil] Only return teams which this 'user_id' belongs to + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -231,6 +272,9 @@ def list(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamDeleteParams} for more details. + # # delete team and associated team keys # # Parameters: @@ -246,8 +290,11 @@ def list(params = {}) # # @overload delete(team_ids:, llm_changed_by: nil, request_options: {}) # - # @param team_ids [Array] - # @param llm_changed_by [String] + # @param team_ids [Array] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -437,7 +484,8 @@ def remove_member(params) # # @overload retrieve_info(team_id: nil, request_options: {}) # - # @param team_id [String] + # @param team_id [String] Team ID in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/team/callback.rb b/lib/hanzoai/resources/team/callback.rb index 3f44cc05..1aa723d3 100644 --- a/lib/hanzoai/resources/team/callback.rb +++ b/lib/hanzoai/resources/team/callback.rb @@ -41,6 +41,9 @@ def retrieve(team_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Team::CallbackAddParams} for more details. + # # Add a success/failure callback to a team # # Use this if if you want different teams to have different success/failure @@ -84,11 +87,17 @@ def retrieve(team_id, params = {}) # # @overload add(team_id, callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}) # - # @param team_id [String] - # @param callback_name [String] - # @param callback_vars [Hash{Symbol=>String}] - # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] - # @param llm_changed_by [String] + # @param team_id [String] Path param: + # + # @param callback_name [String] Body param: + # + # @param callback_vars [Hash{Symbol=>String}] Body param: + # + # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/user.rb b/lib/hanzoai/resources/user.rb index 7852d0ba..169480df 100644 --- a/lib/hanzoai/resources/user.rb +++ b/lib/hanzoai/resources/user.rb @@ -250,10 +250,14 @@ def update(params = {}) # # @overload list(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}) # - # @param page [Integer] - # @param page_size [Integer] - # @param role [String, nil] - # @param user_ids [String, nil] + # @param page [Integer] Page number + # + # @param page_size [Integer] Number of items per page + # + # @param role [String, nil] Filter users by role + # + # @param user_ids [String, nil] Get list of users by user_ids + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -270,6 +274,9 @@ def list(params = {}) ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::UserDeleteParams} for more details. + # # delete user and associated user keys # # ``` @@ -287,8 +294,11 @@ def list(params = {}) # # @overload delete(user_ids:, llm_changed_by: nil, request_options: {}) # - # @param user_ids [Array] - # @param llm_changed_by [String] + # @param user_ids [Array] Body param: + # + # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # ... + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -319,7 +329,8 @@ def delete(params) # # @overload retrieve_info(user_id: nil, request_options: {}) # - # @param user_id [String, nil] + # @param user_id [String, nil] User ID in the request parameters + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/rbi/lib/hanzoai/models/budget_new.rbi b/rbi/lib/hanzoai/models/budget_new.rbi index 19fe6895..9af14564 100644 --- a/rbi/lib/hanzoai/models/budget_new.rbi +++ b/rbi/lib/hanzoai/models/budget_new.rbi @@ -50,13 +50,22 @@ module Hanzoai .returns(T.attached_class) end def self.new( + # Max duration budget should be set for (e.g. '1hr', '1d', '28d') budget_duration: nil, + # The unique budget id. budget_id: nil, + # Requests will fail if this budget (in USD) is exceeded. max_budget: nil, + # Max concurrent requests allowed for this budget id. max_parallel_requests: nil, + # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) model_max_budget: nil, + # Max requests per minute, allowed for this budget id. rpm_limit: nil, + # Requests will NOT fail if this is exceeded. Will fire alerting though. soft_budget: nil, + # Max tokens per minute, allowed for this budget id. tpm_limit: nil ); end sig do diff --git a/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi b/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi index 4e947a49..dce13d47 100644 --- a/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi +++ b/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi @@ -18,8 +18,15 @@ module Hanzoai attr_accessor :target sig { params(headers: T.anything, path: String, target: String).returns(T.attached_class) } - def self.new(headers:, path:, target:); end - + def self.new( + # Key-value pairs of headers to be forwarded with the request. You can set any key + # value pair here and it will be forwarded to your target endpoint + headers:, + # The route to be added to the LLM Proxy Server. + path:, + # The URL to which requests for this path should be forwarded. + target: + ); end sig { override.returns({headers: T.anything, path: String, target: String}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/customer_create_params.rbi b/rbi/lib/hanzoai/models/customer_create_params.rbi index 93c0ae31..5e5678a7 100644 --- a/rbi/lib/hanzoai/models/customer_create_params.rbi +++ b/rbi/lib/hanzoai/models/customer_create_params.rbi @@ -82,14 +82,22 @@ module Hanzoai alias_: nil, allowed_model_region: nil, blocked: nil, + # Max duration budget should be set for (e.g. '1hr', '1d', '28d') budget_duration: nil, budget_id: nil, default_model: nil, + # Requests will fail if this budget (in USD) is exceeded. max_budget: nil, + # Max concurrent requests allowed for this budget id. max_parallel_requests: nil, + # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', + # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) model_max_budget: nil, + # Max requests per minute, allowed for this budget id. rpm_limit: nil, + # Requests will NOT fail if this is exceeded. Will fire alerting though. soft_budget: nil, + # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/models/customer_list_response.rbi b/rbi/lib/hanzoai/models/customer_list_response.rbi index 2c4dd937..4b3f11c1 100644 --- a/rbi/lib/hanzoai/models/customer_list_response.rbi +++ b/rbi/lib/hanzoai/models/customer_list_response.rbi @@ -54,6 +54,7 @@ module Hanzoai alias_: nil, allowed_model_region: nil, default_model: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil ); end diff --git a/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi index 16fd6d5e..52417036 100644 --- a/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi @@ -17,8 +17,11 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(end_user_id:, request_options: {}); end - + def self.new( + # End User ID in the request parameters + end_user_id:, + request_options: {} + ); end sig { override.returns({end_user_id: String, request_options: Hanzoai::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi b/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi index c65fedc8..c4e38a4e 100644 --- a/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi +++ b/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi @@ -58,6 +58,7 @@ module Hanzoai alias_: nil, allowed_model_region: nil, default_model: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil ); end diff --git a/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi b/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi index fc945327..449108bb 100644 --- a/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi +++ b/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi @@ -28,8 +28,15 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(end_date: nil, start_date: nil, tags: nil, request_options: {}); end - + def self.new( + # Time till which to view key spend + end_date: nil, + # Time from which to start viewing key spend + start_date: nil, + # comman separated tags to filter on + tags: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi index df2dd652..deef5e5a 100644 --- a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi +++ b/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi @@ -50,12 +50,20 @@ module Hanzoai .returns(T.attached_class) end def self.new( + # View spend for a specific api_key. Example api_key='sk-1234 api_key: nil, + # View spend for a specific customer_id. Example customer_id='1234. Can be used in + # conjunction with team_id as well. customer_id: nil, + # Time till which to view spend end_date: nil, + # Group spend by internal team or customer or api_key group_by: nil, + # View spend for a specific internal_user_id. Example internal_user_id='1234 internal_user_id: nil, + # Time from which to start viewing spend start_date: nil, + # View spend for a specific team_id. Example team_id='1234 team_id: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/models/guardrail_list_response.rbi b/rbi/lib/hanzoai/models/guardrail_list_response.rbi index ef09d769..ba61ca44 100644 --- a/rbi/lib/hanzoai/models/guardrail_list_response.rbi +++ b/rbi/lib/hanzoai/models/guardrail_list_response.rbi @@ -44,8 +44,12 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(guardrail_info:, guardrail_name:, llm_params:); end - + def self.new( + guardrail_info:, + guardrail_name:, + # The returned LLM Params object for /guardrails/list + llm_params: + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/health_check_all_params.rbi b/rbi/lib/hanzoai/models/health_check_all_params.rbi index caca8af2..b62a1fd1 100644 --- a/rbi/lib/hanzoai/models/health_check_all_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_all_params.rbi @@ -17,8 +17,11 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(model: nil, request_options: {}); end - + def self.new( + # Specify the model name (optional) + model: nil, + request_options: {} + ); end sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/health_check_services_params.rbi b/rbi/lib/hanzoai/models/health_check_services_params.rbi index 215ea06e..2ced26b8 100644 --- a/rbi/lib/hanzoai/models/health_check_services_params.rbi +++ b/rbi/lib/hanzoai/models/health_check_services_params.rbi @@ -17,8 +17,11 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(service:, request_options: {}); end - + def self.new( + # Specify the service being hit. + service:, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/key_block_params.rbi b/rbi/lib/hanzoai/models/key_block_params.rbi index 4f5391c9..967bf2d2 100644 --- a/rbi/lib/hanzoai/models/key_block_params.rbi +++ b/rbi/lib/hanzoai/models/key_block_params.rbi @@ -21,8 +21,12 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_changed_by: nil, request_options: {}); end - + def self.new( + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability + llm_changed_by: nil, + request_options: {} + ); end sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/key_delete_params.rbi b/rbi/lib/hanzoai/models/key_delete_params.rbi index 993e393e..cd11ebbd 100644 --- a/rbi/lib/hanzoai/models/key_delete_params.rbi +++ b/rbi/lib/hanzoai/models/key_delete_params.rbi @@ -29,8 +29,14 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}); end - + def self.new( + key_aliases: nil, + keys: nil, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability + llm_changed_by: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/key_generate_params.rbi b/rbi/lib/hanzoai/models/key_generate_params.rbi index 81707bcf..55a975f6 100644 --- a/rbi/lib/hanzoai/models/key_generate_params.rbi +++ b/rbi/lib/hanzoai/models/key_generate_params.rbi @@ -157,6 +157,8 @@ module Hanzoai team_id: nil, tpm_limit: nil, user_id: nil, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/models/key_list_params.rbi b/rbi/lib/hanzoai/models/key_list_params.rbi index 8288d5f6..f198a1cb 100644 --- a/rbi/lib/hanzoai/models/key_list_params.rbi +++ b/rbi/lib/hanzoai/models/key_list_params.rbi @@ -65,13 +65,21 @@ module Hanzoai .returns(T.attached_class) end def self.new( + # Include all keys for teams that user is an admin of. include_team_keys: nil, + # Filter keys by key alias key_alias: nil, + # Filter keys by organization ID organization_id: nil, + # Page number page: nil, + # Return full key object return_full_object: nil, + # Page size size: nil, + # Filter keys by team ID team_id: nil, + # Filter keys by user ID user_id: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/models/key_list_response.rbi b/rbi/lib/hanzoai/models/key_list_response.rbi index ded894b7..91a0dd6f 100644 --- a/rbi/lib/hanzoai/models/key_list_response.rbi +++ b/rbi/lib/hanzoai/models/key_list_response.rbi @@ -385,6 +385,17 @@ module Hanzoai updated_by: nil, user_email: nil, user_id: nil, + # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization + # + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend + # + # Team Roles: TEAM: used for JWT auth + # + # Customer Roles: CUSTOMER: External users -> these are customers user_role: nil, user_rpm_limit: nil, user_tpm_limit: nil diff --git a/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi b/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi index 34088317..0b26a97c 100644 --- a/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi +++ b/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi @@ -21,8 +21,12 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_changed_by: nil, request_options: {}); end - + def self.new( + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability + llm_changed_by: nil, + request_options: {} + ); end sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi index c668cbec..754cf9dd 100644 --- a/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi @@ -17,8 +17,11 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(key: nil, request_options: {}); end - + def self.new( + # Key in the request parameters + key: nil, + request_options: {} + ); end sig { override.returns({key: T.nilable(String), request_options: Hanzoai::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/key_unblock_params.rbi b/rbi/lib/hanzoai/models/key_unblock_params.rbi index 970e9d34..1a857e10 100644 --- a/rbi/lib/hanzoai/models/key_unblock_params.rbi +++ b/rbi/lib/hanzoai/models/key_unblock_params.rbi @@ -21,8 +21,12 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_changed_by: nil, request_options: {}); end - + def self.new( + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability + llm_changed_by: nil, + request_options: {} + ); end sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/key_update_params.rbi b/rbi/lib/hanzoai/models/key_update_params.rbi index ed24c8f2..81c6c76b 100644 --- a/rbi/lib/hanzoai/models/key_update_params.rbi +++ b/rbi/lib/hanzoai/models/key_update_params.rbi @@ -157,6 +157,8 @@ module Hanzoai temp_budget_increase: nil, tpm_limit: nil, user_id: nil, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/models/model_create_params.rbi b/rbi/lib/hanzoai/models/model_create_params.rbi index f450b57e..e9ab5295 100644 --- a/rbi/lib/hanzoai/models/model_create_params.rbi +++ b/rbi/lib/hanzoai/models/model_create_params.rbi @@ -31,8 +31,13 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(llm_params:, model_info:, model_name:, request_options: {}); end - + def self.new( + # LLM Params with 'model' requirement - used for completions + llm_params:, + model_info:, + model_name:, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi index 37a80716..bc9943f2 100644 --- a/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi +++ b/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi @@ -101,6 +101,7 @@ module Hanzoai models:, updated_at:, updated_by:, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, members: nil, metadata: nil, @@ -267,6 +268,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, diff --git a/rbi/lib/hanzoai/models/organization_add_member_response.rbi b/rbi/lib/hanzoai/models/organization_add_member_response.rbi index abdb318f..01eff159 100644 --- a/rbi/lib/hanzoai/models/organization_add_member_response.rbi +++ b/rbi/lib/hanzoai/models/organization_add_member_response.rbi @@ -118,6 +118,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, @@ -417,6 +418,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, diff --git a/rbi/lib/hanzoai/models/organization_delete_response.rbi b/rbi/lib/hanzoai/models/organization_delete_response.rbi index f1d49f25..a9f65a24 100644 --- a/rbi/lib/hanzoai/models/organization_delete_response.rbi +++ b/rbi/lib/hanzoai/models/organization_delete_response.rbi @@ -100,6 +100,7 @@ module Hanzoai models:, updated_at:, updated_by:, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, members: nil, metadata: nil, @@ -260,6 +261,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, diff --git a/rbi/lib/hanzoai/models/organization_list_response.rbi b/rbi/lib/hanzoai/models/organization_list_response.rbi index a744fe67..5a81ab49 100644 --- a/rbi/lib/hanzoai/models/organization_list_response.rbi +++ b/rbi/lib/hanzoai/models/organization_list_response.rbi @@ -100,6 +100,7 @@ module Hanzoai models:, updated_at:, updated_by:, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, members: nil, metadata: nil, @@ -260,6 +261,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, diff --git a/rbi/lib/hanzoai/models/organization_update_member_params.rbi b/rbi/lib/hanzoai/models/organization_update_member_params.rbi index 5bf8ba3b..44d3d988 100644 --- a/rbi/lib/hanzoai/models/organization_update_member_params.rbi +++ b/rbi/lib/hanzoai/models/organization_update_member_params.rbi @@ -46,6 +46,17 @@ module Hanzoai def self.new( organization_id:, max_budget_in_organization: nil, + # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization + # + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend + # + # Team Roles: TEAM: used for JWT auth + # + # Customer Roles: CUSTOMER: External users -> these are customers role: nil, user_email: nil, user_id: nil, diff --git a/rbi/lib/hanzoai/models/organization_update_member_response.rbi b/rbi/lib/hanzoai/models/organization_update_member_response.rbi index 9f0fd1db..8e590f2b 100644 --- a/rbi/lib/hanzoai/models/organization_update_member_response.rbi +++ b/rbi/lib/hanzoai/models/organization_update_member_response.rbi @@ -71,6 +71,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, diff --git a/rbi/lib/hanzoai/models/organization_update_response.rbi b/rbi/lib/hanzoai/models/organization_update_response.rbi index ebf8df05..52e0bbea 100644 --- a/rbi/lib/hanzoai/models/organization_update_response.rbi +++ b/rbi/lib/hanzoai/models/organization_update_response.rbi @@ -96,6 +96,7 @@ module Hanzoai models:, updated_at:, updated_by:, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, members: nil, metadata: nil, @@ -256,6 +257,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, diff --git a/rbi/lib/hanzoai/models/spend_list_logs_params.rbi b/rbi/lib/hanzoai/models/spend_list_logs_params.rbi index 3560a3ed..eb67d326 100644 --- a/rbi/lib/hanzoai/models/spend_list_logs_params.rbi +++ b/rbi/lib/hanzoai/models/spend_list_logs_params.rbi @@ -39,15 +39,19 @@ module Hanzoai .returns(T.attached_class) end def self.new( + # Get spend logs based on api key api_key: nil, + # Time till which to view key spend end_date: nil, + # request_id to get spend logs for specific request_id. If none passed then pass + # spend logs for all requests request_id: nil, + # Time from which to start viewing key spend start_date: nil, + # Get spend logs based on user_id user_id: nil, request_options: {} - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/spend_list_tags_params.rbi b/rbi/lib/hanzoai/models/spend_list_tags_params.rbi index 3819e38d..e147d525 100644 --- a/rbi/lib/hanzoai/models/spend_list_tags_params.rbi +++ b/rbi/lib/hanzoai/models/spend_list_tags_params.rbi @@ -22,8 +22,13 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(end_date: nil, start_date: nil, request_options: {}); end - + def self.new( + # Time till which to view key spend + end_date: nil, + # Time from which to start viewing key spend + start_date: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/team/callback_add_params.rbi b/rbi/lib/hanzoai/models/team/callback_add_params.rbi index b65f496f..fb5c3d56 100644 --- a/rbi/lib/hanzoai/models/team/callback_add_params.rbi +++ b/rbi/lib/hanzoai/models/team/callback_add_params.rbi @@ -38,11 +38,11 @@ module Hanzoai callback_name:, callback_vars:, callback_type: nil, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/team_add_member_response.rbi b/rbi/lib/hanzoai/models/team_add_member_response.rbi index b091ac16..a957e053 100644 --- a/rbi/lib/hanzoai/models/team_add_member_response.rbi +++ b/rbi/lib/hanzoai/models/team_add_member_response.rbi @@ -209,8 +209,13 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(budget_id:, llm_budget_table:, team_id:, user_id:); end - + def self.new( + budget_id:, + # Represents user-controllable params for a LLM_BudgetTable record + llm_budget_table:, + team_id:, + user_id: + ); end sig do override .returns( @@ -494,6 +499,7 @@ module Hanzoai updated_at:, user_id:, budget_id: nil, + # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil, user: nil, diff --git a/rbi/lib/hanzoai/models/team_create_params.rbi b/rbi/lib/hanzoai/models/team_create_params.rbi index b096c3b1..05960ce8 100644 --- a/rbi/lib/hanzoai/models/team_create_params.rbi +++ b/rbi/lib/hanzoai/models/team_create_params.rbi @@ -117,6 +117,8 @@ module Hanzoai team_alias: nil, team_id: nil, tpm_limit: nil, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/models/team_delete_params.rbi b/rbi/lib/hanzoai/models/team_delete_params.rbi index a5f5f6e7..c768946f 100644 --- a/rbi/lib/hanzoai/models/team_delete_params.rbi +++ b/rbi/lib/hanzoai/models/team_delete_params.rbi @@ -25,8 +25,13 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(team_ids:, llm_changed_by: nil, request_options: {}); end - + def self.new( + team_ids:, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability + llm_changed_by: nil, + request_options: {} + ); end sig do override .returns({ diff --git a/rbi/lib/hanzoai/models/team_list_params.rbi b/rbi/lib/hanzoai/models/team_list_params.rbi index 309ca325..257e4205 100644 --- a/rbi/lib/hanzoai/models/team_list_params.rbi +++ b/rbi/lib/hanzoai/models/team_list_params.rbi @@ -21,8 +21,12 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(organization_id: nil, user_id: nil, request_options: {}); end - + def self.new( + organization_id: nil, + # Only return teams which this 'user_id' belongs to + user_id: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi index e32477dd..d66002d1 100644 --- a/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi @@ -17,8 +17,11 @@ module Hanzoai params(team_id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) .returns(T.attached_class) end - def self.new(team_id: nil, request_options: {}); end - + def self.new( + # Team ID in the request parameters + team_id: nil, + request_options: {} + ); end sig { override.returns({team_id: String, request_options: Hanzoai::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/hanzoai/models/team_update_params.rbi b/rbi/lib/hanzoai/models/team_update_params.rbi index 5f24a9b2..8a96ba74 100644 --- a/rbi/lib/hanzoai/models/team_update_params.rbi +++ b/rbi/lib/hanzoai/models/team_update_params.rbi @@ -87,6 +87,8 @@ module Hanzoai tags: nil, team_alias: nil, tpm_limit: nil, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} ); end diff --git a/rbi/lib/hanzoai/models/user_delete_params.rbi b/rbi/lib/hanzoai/models/user_delete_params.rbi index 6a933327..12750d9b 100644 --- a/rbi/lib/hanzoai/models/user_delete_params.rbi +++ b/rbi/lib/hanzoai/models/user_delete_params.rbi @@ -25,8 +25,13 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(user_ids:, llm_changed_by: nil, request_options: {}); end - + def self.new( + user_ids:, + # The llm-changed-by header enables tracking of actions performed by authorized + # users on behalf of other users, providing an audit trail for accountability + llm_changed_by: nil, + request_options: {} + ); end sig do override .returns({ diff --git a/rbi/lib/hanzoai/models/user_list_params.rbi b/rbi/lib/hanzoai/models/user_list_params.rbi index 14c10613..cf631563 100644 --- a/rbi/lib/hanzoai/models/user_list_params.rbi +++ b/rbi/lib/hanzoai/models/user_list_params.rbi @@ -38,8 +38,17 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}); end - + def self.new( + # Page number + page: nil, + # Number of items per page + page_size: nil, + # Filter users by role + role: nil, + # Get list of users by user_ids + user_ids: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi b/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi index b3848a84..1a665246 100644 --- a/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi +++ b/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi @@ -17,8 +17,11 @@ module Hanzoai ) .returns(T.attached_class) end - def self.new(user_id: nil, request_options: {}); end - + def self.new( + # User ID in the request parameters + user_id: nil, + request_options: {} + ); end sig { override.returns({user_id: T.nilable(String), request_options: Hanzoai::RequestOptions}) } def to_hash; end end From 291d3165cad525a6ac63c93802a509c04460d1fd Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 25 Apr 2025 03:12:02 +0000 Subject: [PATCH 050/139] feat: support specifying content-type with FilePart class --- lib/hanzoai.rb | 3 +- lib/hanzoai/file_part.rb | 55 +++++++++++ lib/hanzoai/internal/type/converter.rb | 2 +- .../type/{io_like.rb => file_input.rb} | 12 ++- lib/hanzoai/internal/util.rb | 96 ++++++++++--------- .../audio/transcription_create_params.rb | 6 +- lib/hanzoai/models/file_create_params.rb | 6 +- lib/hanzoai/resources/audio/transcriptions.rb | 2 +- lib/hanzoai/resources/files.rb | 2 +- rbi/lib/hanzoai/file_part.rbi | 34 +++++++ .../type/{io_like.rbi => file_input.rbi} | 8 +- rbi/lib/hanzoai/internal/util.rbi | 28 +++--- .../audio/transcription_create_params.rbi | 14 ++- rbi/lib/hanzoai/models/file_create_params.rbi | 6 +- .../resources/audio/transcriptions.rbi | 2 +- rbi/lib/hanzoai/resources/files.rbi | 2 +- sig/hanzoai/file_part.rbs | 21 ++++ .../type/{io_like.rbs => file_input.rbs} | 2 +- sig/hanzoai/internal/util.rbs | 17 ++-- .../audio/transcription_create_params.rbs | 6 +- sig/hanzoai/models/file_create_params.rbs | 6 +- .../resources/audio/transcriptions.rbs | 2 +- sig/hanzoai/resources/files.rbs | 2 +- test/hanzoai/internal/type/base_model_test.rb | 2 +- test/hanzoai/internal/util_test.rb | 14 ++- 25 files changed, 241 insertions(+), 109 deletions(-) create mode 100644 lib/hanzoai/file_part.rb rename lib/hanzoai/internal/type/{io_like.rb => file_input.rb} (84%) create mode 100644 rbi/lib/hanzoai/file_part.rbi rename rbi/lib/hanzoai/internal/type/{io_like.rbi => file_input.rbi} (83%) create mode 100644 sig/hanzoai/file_part.rbs rename sig/hanzoai/internal/type/{io_like.rbs => file_input.rbs} (96%) diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index ae0b747e..6a258093 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -31,7 +31,7 @@ require_relative "hanzoai/internal/type/converter" require_relative "hanzoai/internal/type/unknown" require_relative "hanzoai/internal/type/boolean" -require_relative "hanzoai/internal/type/io_like" +require_relative "hanzoai/internal/type/file_input" require_relative "hanzoai/internal/type/enum" require_relative "hanzoai/internal/type/union" require_relative "hanzoai/internal/type/array_of" @@ -41,6 +41,7 @@ require_relative "hanzoai/internal/type/request_parameters" require_relative "hanzoai/internal" require_relative "hanzoai/request_options" +require_relative "hanzoai/file_part" require_relative "hanzoai/errors" require_relative "hanzoai/internal/transport/base_client" require_relative "hanzoai/internal/transport/pooled_net_requester" diff --git a/lib/hanzoai/file_part.rb b/lib/hanzoai/file_part.rb new file mode 100644 index 00000000..e8dd9f87 --- /dev/null +++ b/lib/hanzoai/file_part.rb @@ -0,0 +1,55 @@ +# frozen_string_literal: true + +module Hanzoai + 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/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index 0b41c884..931f44d1 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/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) - Hanzoai::Internal::Util::SerializationAdapter.new(value) + Hanzoai::FilePart.new(value) else value end diff --git a/lib/hanzoai/internal/type/io_like.rb b/lib/hanzoai/internal/type/file_input.rb similarity index 84% rename from lib/hanzoai/internal/type/io_like.rb rename to lib/hanzoai/internal/type/file_input.rb index 5ec9086e..5aec54f1 100644 --- a/lib/hanzoai/internal/type/io_like.rb +++ b/lib/hanzoai/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 + # `Hanzoai::Internal::Type::FileInput`. + # + # Note: when `IO` is used, all retries are disabled, since many IO` streams are + # not rewindable. + class FileInput extend Hanzoai::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 | Hanzoai::FilePart true else false @@ -32,7 +36,7 @@ def self.===(other) # @param other [Object] # # @return [Boolean] - def self.==(other) = other.is_a?(Class) && other <= Hanzoai::Internal::Type::IOLike + def self.==(other) = other.is_a?(Class) && other <= Hanzoai::Internal::Type::FileInput class << self # @api private diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 0043f653..3252b0bd 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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?(Hanzoai::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 Hanzoai::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 Hanzoai::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?(Hanzoai::Internal::Util::SerializationAdapter) - case [content_type, body] in [Hanzoai::Internal::Util::JSON_CONTENT, Hash | Array | -> { primitive?(_1) }] [headers, JSON.fast_generate(body)] - in [Hanzoai::Internal::Util::JSONL_CONTENT, Enumerable] unless body.is_a?(StringIO) || body.is_a?(IO) + in [Hanzoai::Internal::Util::JSONL_CONTENT, Enumerable] unless body.is_a?(Hanzoai::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 | Hanzoai::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 [_, Hanzoai::FilePart] + [headers, body.content] else [headers, body] end diff --git a/lib/hanzoai/models/audio/transcription_create_params.rb b/lib/hanzoai/models/audio/transcription_create_params.rb index 70ca3d76..0c48eb36 100644 --- a/lib/hanzoai/models/audio/transcription_create_params.rb +++ b/lib/hanzoai/models/audio/transcription_create_params.rb @@ -10,11 +10,11 @@ class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute file # - # @return [Pathname, StringIO] - required :file, Hanzoai::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, Hanzoai::FilePart] + required :file, Hanzoai::Internal::Type::FileInput # @!method initialize(file:, request_options: {}) - # @param file [Pathname, StringIO] + # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/file_create_params.rb b/lib/hanzoai/models/file_create_params.rb index 7f251ac8..240845c1 100644 --- a/lib/hanzoai/models/file_create_params.rb +++ b/lib/hanzoai/models/file_create_params.rb @@ -9,8 +9,8 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute file # - # @return [Pathname, StringIO] - required :file, Hanzoai::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, Hanzoai::FilePart] + required :file, Hanzoai::Internal::Type::FileInput # @!attribute purpose # @@ -23,7 +23,7 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel optional :custom_llm_provider, String # @!method initialize(file:, purpose:, custom_llm_provider: nil, request_options: {}) - # @param file [Pathname, StringIO] + # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] # @param purpose [String] # @param custom_llm_provider [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/resources/audio/transcriptions.rb b/lib/hanzoai/resources/audio/transcriptions.rb index e7f14fca..eee20163 100644 --- a/lib/hanzoai/resources/audio/transcriptions.rb +++ b/lib/hanzoai/resources/audio/transcriptions.rb @@ -10,7 +10,7 @@ class Transcriptions # # @overload create(file:, request_options: {}) # - # @param file [Pathname, StringIO] + # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/files.rb b/lib/hanzoai/resources/files.rb index eb674fa6..2d617ddc 100644 --- a/lib/hanzoai/resources/files.rb +++ b/lib/hanzoai/resources/files.rb @@ -22,7 +22,7 @@ class Files # @overload create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}) # # @param provider [String] - # @param file [Pathname, StringIO] + # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] # @param purpose [String] # @param custom_llm_provider [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/rbi/lib/hanzoai/file_part.rbi b/rbi/lib/hanzoai/file_part.rbi new file mode 100644 index 00000000..247ea5e3 --- /dev/null +++ b/rbi/lib/hanzoai/file_part.rbi @@ -0,0 +1,34 @@ +# typed: strong + +module Hanzoai + 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/hanzoai/internal/type/io_like.rbi b/rbi/lib/hanzoai/internal/type/file_input.rbi similarity index 83% rename from rbi/lib/hanzoai/internal/type/io_like.rbi rename to rbi/lib/hanzoai/internal/type/file_input.rbi index eea90565..3abc84ff 100644 --- a/rbi/lib/hanzoai/internal/type/io_like.rbi +++ b/rbi/lib/hanzoai/internal/type/file_input.rbi @@ -5,8 +5,12 @@ module Hanzoai module Type # @api private # - # Either `Pathname` or `StringIO`. - class IOLike + # Either `Pathname` or `StringIO`, or `IO`, or + # `Hanzoai::Internal::Type::FileInput`. + # + # Note: when `IO` is used, all retries are disabled, since many IO` streams are + # not rewindable. + class FileInput extend Hanzoai::Internal::Type::Converter abstract! diff --git a/rbi/lib/hanzoai/internal/util.rbi b/rbi/lib/hanzoai/internal/util.rbi index b1527d14..3393987c 100644 --- a/rbi/lib/hanzoai/internal/util.rbi +++ b/rbi/lib/hanzoai/internal/util.rbi @@ -140,22 +140,6 @@ module Hanzoai 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 Hanzoai 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/hanzoai/models/audio/transcription_create_params.rbi b/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi index f214b345..578faa8a 100644 --- a/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi +++ b/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi @@ -7,19 +7,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(T.any(Pathname, StringIO)) } + sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } attr_accessor :file sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) ) .returns(T.attached_class) end def self.new(file:, request_options: {}); end - sig { override.returns({file: T.any(Pathname, StringIO), request_options: Hanzoai::RequestOptions}) } + sig do + override + .returns( + { + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + request_options: Hanzoai::RequestOptions + } + ) + end def to_hash; end end end diff --git a/rbi/lib/hanzoai/models/file_create_params.rbi b/rbi/lib/hanzoai/models/file_create_params.rbi index 525d83e4..440e8f9d 100644 --- a/rbi/lib/hanzoai/models/file_create_params.rbi +++ b/rbi/lib/hanzoai/models/file_create_params.rbi @@ -6,7 +6,7 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(T.any(Pathname, StringIO)) } + sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } attr_accessor :file sig { returns(String) } @@ -20,7 +20,7 @@ module Hanzoai sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), purpose: String, custom_llm_provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) @@ -33,7 +33,7 @@ module Hanzoai override .returns( { - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), purpose: String, custom_llm_provider: String, request_options: Hanzoai::RequestOptions diff --git a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi index e5936136..d823c005 100644 --- a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi +++ b/rbi/lib/hanzoai/resources/audio/transcriptions.rbi @@ -9,7 +9,7 @@ module Hanzoai # https://platform.openai.com/docs/api-reference/audio/createTranscription?lang=curl sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) ) .returns(T.anything) diff --git a/rbi/lib/hanzoai/resources/files.rbi b/rbi/lib/hanzoai/resources/files.rbi index 16973a1a..9fcaae23 100644 --- a/rbi/lib/hanzoai/resources/files.rbi +++ b/rbi/lib/hanzoai/resources/files.rbi @@ -21,7 +21,7 @@ module Hanzoai sig do params( provider: String, - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), purpose: String, custom_llm_provider: String, request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) diff --git a/sig/hanzoai/file_part.rbs b/sig/hanzoai/file_part.rbs new file mode 100644 index 00000000..27a592a4 --- /dev/null +++ b/sig/hanzoai/file_part.rbs @@ -0,0 +1,21 @@ +module Hanzoai + 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/hanzoai/internal/type/io_like.rbs b/sig/hanzoai/internal/type/file_input.rbs similarity index 96% rename from sig/hanzoai/internal/type/io_like.rbs rename to sig/hanzoai/internal/type/file_input.rbs index dc6204e8..c87ab2d5 100644 --- a/sig/hanzoai/internal/type/io_like.rbs +++ b/sig/hanzoai/internal/type/file_input.rbs @@ -1,7 +1,7 @@ module Hanzoai module Internal module Type - class IOLike + class FileInput extend Hanzoai::Internal::Type::Converter def self.===: (top other) -> bool diff --git a/sig/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index 5d304198..1aa7a44f 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -73,16 +73,6 @@ module Hanzoai | ::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 Hanzoai 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/hanzoai/models/audio/transcription_create_params.rbs b/sig/hanzoai/models/audio/transcription_create_params.rbs index ba0f0a84..b61a11d2 100644 --- a/sig/hanzoai/models/audio/transcription_create_params.rbs +++ b/sig/hanzoai/models/audio/transcription_create_params.rbs @@ -2,17 +2,17 @@ module Hanzoai module Models module Audio type transcription_create_params = - { file: (Pathname | StringIO) } + { file: (Pathname | StringIO | IO | Hanzoai::FilePart) } & Hanzoai::Internal::Type::request_parameters class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor file: Pathname | StringIO + attr_accessor file: Pathname | StringIO | IO | Hanzoai::FilePart def initialize: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | Hanzoai::FilePart, ?request_options: Hanzoai::request_opts ) -> void diff --git a/sig/hanzoai/models/file_create_params.rbs b/sig/hanzoai/models/file_create_params.rbs index b9f77329..4d52d579 100644 --- a/sig/hanzoai/models/file_create_params.rbs +++ b/sig/hanzoai/models/file_create_params.rbs @@ -2,7 +2,7 @@ module Hanzoai module Models type file_create_params = { - file: (Pathname | StringIO), + file: (Pathname | StringIO | IO | Hanzoai::FilePart), purpose: String, custom_llm_provider: String } @@ -12,7 +12,7 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor file: Pathname | StringIO + attr_accessor file: Pathname | StringIO | IO | Hanzoai::FilePart attr_accessor purpose: String @@ -21,7 +21,7 @@ module Hanzoai def custom_llm_provider=: (String) -> String def initialize: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | Hanzoai::FilePart, purpose: String, ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts diff --git a/sig/hanzoai/resources/audio/transcriptions.rbs b/sig/hanzoai/resources/audio/transcriptions.rbs index 0405171b..817e15a9 100644 --- a/sig/hanzoai/resources/audio/transcriptions.rbs +++ b/sig/hanzoai/resources/audio/transcriptions.rbs @@ -3,7 +3,7 @@ module Hanzoai class Audio class Transcriptions def create: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | Hanzoai::FilePart, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/files.rbs b/sig/hanzoai/resources/files.rbs index bb897cfd..1bd039c2 100644 --- a/sig/hanzoai/resources/files.rbs +++ b/sig/hanzoai/resources/files.rbs @@ -5,7 +5,7 @@ module Hanzoai def create: ( String provider, - file: Pathname | StringIO, + file: Pathname | StringIO | IO | Hanzoai::FilePart, purpose: String, ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 99ba6aa4..3fec3e18 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/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__)] => Hanzoai::Internal::Util::SerializationAdapter + [String, Pathname(__FILE__)] => Hanzoai::FilePart } cases.each do diff --git a/test/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index ff80405c..419aed80 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/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 Hanzoai/ + Hanzoai::FilePart.new("abc") => "abc", + Hanzoai::FilePart.new(StringIO.new("abc")) => "abc", + file => /^class Hanzoai/, + Hanzoai::FilePart.new(file) => /^class Hanzoai/ } cases.each do |body, val| encoded = Hanzoai::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 Hanzoai/ }} + {strio: Hanzoai::FilePart.new("a")} => {"strio" => "a"}, + {pathname: Pathname(__FILE__)} => {"pathname" => -> { _1.read in /^class Hanzoai/ }}, + {pathname: Hanzoai::FilePart.new(Pathname(__FILE__))} => { + "pathname" => -> { + _1.read in /^class Hanzoai/ + } + } } cases.each do |body, testcase| encoded = Hanzoai::Internal::Util.encode_content(headers, body) From fdfbf9334650dc00c1ac073297152cfbc461ee81 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 25 Apr 2025 03:18:06 +0000 Subject: [PATCH 051/139] chore(internal): improve response envelope unwrap functionality --- lib/hanzoai/internal/transport/base_client.rb | 4 ++-- lib/hanzoai/internal/util.rb | 23 ++++++++++--------- .../internal/transport/base_client.rbi | 18 +++++++++++++-- rbi/lib/hanzoai/internal/util.rbi | 12 +++++++--- .../internal/transport/base_client.rbs | 10 ++++++-- sig/hanzoai/internal/util.rbs | 6 +++-- test/hanzoai/internal/util_test.rb | 7 +++--- 7 files changed, 55 insertions(+), 25 deletions(-) diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 5fc354d2..9cc5403e 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/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/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 3252b0bd..700e1906 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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/hanzoai/internal/transport/base_client.rbi b/rbi/lib/hanzoai/internal/transport/base_client.rbi index 16cc9c02..bec66f19 100644 --- a/rbi/lib/hanzoai/internal/transport/base_client.rbi +++ b/rbi/lib/hanzoai/internal/transport/base_client.rbi @@ -24,7 +24,14 @@ module Hanzoai )] ), 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[Hanzoai::Internal::Type::BasePage[Hanzoai::Internal::Type::BaseModel]]), stream: T.nilable(T::Class[T.anything]), model: T.nilable(Hanzoai::Internal::Type::Converter::Input), @@ -170,7 +177,14 @@ module Hanzoai )] ), 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[Hanzoai::Internal::Type::BasePage[Hanzoai::Internal::Type::BaseModel]]), stream: T.nilable(T::Class[T.anything]), model: T.nilable(Hanzoai::Internal::Type::Converter::Input), diff --git a/rbi/lib/hanzoai/internal/util.rbi b/rbi/lib/hanzoai/internal/util.rbi index 3393987c..69e01c7f 100644 --- a/rbi/lib/hanzoai/internal/util.rbi +++ b/rbi/lib/hanzoai/internal/util.rbi @@ -68,13 +68,19 @@ module Hanzoai sig do params( data: T.any(Hanzoai::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/hanzoai/internal/transport/base_client.rbs b/sig/hanzoai/internal/transport/base_client.rbs index c5a0f0d0..d0c724fb 100644 --- a/sig/hanzoai/internal/transport/base_client.rbs +++ b/sig/hanzoai/internal/transport/base_client.rbs @@ -11,7 +11,10 @@ module Hanzoai | Integer | ::Array[(String | Integer)?])?]?, body: top?, - unwrap: Symbol?, + unwrap: (Symbol + | Integer + | ::Array[(Symbol | Integer)] + | (^(top arg0) -> top))?, page: Class?, stream: Class?, model: Hanzoai::Internal::Type::Converter::input?, @@ -96,7 +99,10 @@ module Hanzoai | Integer | ::Array[(String | Integer)?])?]?, ?body: top?, - ?unwrap: Symbol?, + ?unwrap: (Symbol + | Integer + | ::Array[(Symbol | Integer)] + | (^(top arg0) -> top))?, ?page: Class?, ?stream: Class?, ?model: Hanzoai::Internal::Type::Converter::input?, diff --git a/sig/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index 1aa7a44f..4ec54f02 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -29,8 +29,10 @@ module Hanzoai 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/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index 419aed80..1b364b1c 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -87,8 +87,9 @@ def test_dig Hanzoai::Internal::Util.dig([], 1.0) => nil Hanzoai::Internal::Util.dig(Object, 1) => nil - Hanzoai::Internal::Util.dig([], 1.0, 2) => 2 Hanzoai::Internal::Util.dig([], 1.0) { 2 } => 2 + Hanzoai::Internal::Util.dig([], ->(_) { 2 }) => 2 + Hanzoai::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 - Hanzoai::Internal::Util::JSON_CONTENT.match?(header) => verdict + Hanzoai::Internal::Util::JSON_CONTENT.match?(header) => ^verdict end end end From 25efbf7d7b475d99c2688c2863e059f364c3ead8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 26 Apr 2025 02:52:00 +0000 Subject: [PATCH 052/139] fix: ensure gem release is unaffected by renaming --- Rakefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index 2a5df77d..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["hanzoai-*.gem"]) + sh(*%w[gem push], *FileList["*.gem"]) end From 40576793f67ab7a5481d81366c43a8d9e1e94cbb Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 26 Apr 2025 02:55:43 +0000 Subject: [PATCH 053/139] fix: make a typo for `FilePart.content` --- lib/hanzoai/file_part.rb | 10 ++++---- lib/hanzoai/internal/type/converter.rb | 3 +++ lib/hanzoai/internal/type/file_input.rb | 33 ++++++++++++++++--------- test/hanzoai/file_part_test.rb | 12 +++++++++ 4 files changed, 42 insertions(+), 16 deletions(-) create mode 100644 test/hanzoai/file_part_test.rb diff --git a/lib/hanzoai/file_part.rb b/lib/hanzoai/file_part.rb index e8dd9f87..38139b91 100644 --- a/lib/hanzoai/file_part.rb +++ b/lib/hanzoai/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/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index 931f44d1..1fb31ab8 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -44,6 +44,9 @@ def dump(value, state:) in Pathname | IO state[:can_retry] = false if value.is_a?(IO) Hanzoai::FilePart.new(value) + in Hanzoai::FilePart + state[:can_retry] = false if value.content.is_a?(IO) + value else value end diff --git a/lib/hanzoai/internal/type/file_input.rb b/lib/hanzoai/internal/type/file_input.rb index 5aec54f1..2ba1192a 100644 --- a/lib/hanzoai/internal/type/file_input.rb +++ b/lib/hanzoai/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 Hanzoai::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/hanzoai/file_part_test.rb b/test/hanzoai/file_part_test.rb new file mode 100644 index 00000000..47ef0bbe --- /dev/null +++ b/test/hanzoai/file_part_test.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +require_relative "test_helper" + +class Hanzoai::Test::FilePartTest < Minitest::Test + def test_to_json + text = "gray" + filepart = Hanzoai::FilePart.new(StringIO.new(text)) + + assert_equal(text.to_json, filepart.to_json) + end +end From d39641ace1c1b44106b57e8aa72783fd2c47e25a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 29 Apr 2025 03:31:01 +0000 Subject: [PATCH 054/139] chore(internal): remove unnecessary `rbi/lib` folder --- rbi/{lib => }/hanzoai/client.rbi | 0 rbi/{lib => }/hanzoai/errors.rbi | 0 rbi/{lib => }/hanzoai/file_part.rbi | 0 rbi/{lib => }/hanzoai/internal.rbi | 0 rbi/{lib => }/hanzoai/internal/transport/base_client.rbi | 0 rbi/{lib => }/hanzoai/internal/transport/pooled_net_requester.rbi | 0 rbi/{lib => }/hanzoai/internal/type/array_of.rbi | 0 rbi/{lib => }/hanzoai/internal/type/base_model.rbi | 0 rbi/{lib => }/hanzoai/internal/type/base_page.rbi | 0 rbi/{lib => }/hanzoai/internal/type/boolean.rbi | 0 rbi/{lib => }/hanzoai/internal/type/converter.rbi | 0 rbi/{lib => }/hanzoai/internal/type/enum.rbi | 0 rbi/{lib => }/hanzoai/internal/type/file_input.rbi | 0 rbi/{lib => }/hanzoai/internal/type/hash_of.rbi | 0 rbi/{lib => }/hanzoai/internal/type/request_parameters.rbi | 0 rbi/{lib => }/hanzoai/internal/type/union.rbi | 0 rbi/{lib => }/hanzoai/internal/type/unknown.rbi | 0 rbi/{lib => }/hanzoai/internal/util.rbi | 0 rbi/{lib => }/hanzoai/models/active_list_callbacks_params.rbi | 0 rbi/{lib => }/hanzoai/models/add_add_allowed_ip_params.rbi | 0 rbi/{lib => }/hanzoai/models/anthropic_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/anthropic_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/anthropic_modify_params.rbi | 0 rbi/{lib => }/hanzoai/models/anthropic_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/anthropic_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/assemblyai_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/assemblyai_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/assemblyai_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/assemblyai_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/assemblyai_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/assistant_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/assistant_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/assistant_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/audio/speech_create_params.rbi | 0 .../hanzoai/models/audio/transcription_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/azure_call_params.rbi | 0 rbi/{lib => }/hanzoai/models/azure_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/azure_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/azure_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/azure_update_params.rbi | 0 .../hanzoai/models/batch_cancel_with_provider_params.rbi | 0 rbi/{lib => }/hanzoai/models/batch_create_params.rbi | 0 .../hanzoai/models/batch_create_with_provider_params.rbi | 0 rbi/{lib => }/hanzoai/models/batch_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/batch_list_with_provider_params.rbi | 0 rbi/{lib => }/hanzoai/models/batch_retrieve_params.rbi | 0 .../hanzoai/models/batch_retrieve_with_provider_params.rbi | 0 rbi/{lib => }/hanzoai/models/batches/cancel_cancel_params.rbi | 0 rbi/{lib => }/hanzoai/models/bedrock_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/bedrock_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/bedrock_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/bedrock_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/bedrock_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/block_key_request.rbi | 0 rbi/{lib => }/hanzoai/models/block_team_request.rbi | 0 rbi/{lib => }/hanzoai/models/block_users.rbi | 0 rbi/{lib => }/hanzoai/models/budget_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/budget_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/budget_info_params.rbi | 0 rbi/{lib => }/hanzoai/models/budget_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/budget_new.rbi | 0 rbi/{lib => }/hanzoai/models/budget_settings_params.rbi | 0 rbi/{lib => }/hanzoai/models/budget_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/cache/redi_retrieve_info_params.rbi | 0 rbi/{lib => }/hanzoai/models/cache_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/cache_flush_all_params.rbi | 0 rbi/{lib => }/hanzoai/models/cache_ping_params.rbi | 0 rbi/{lib => }/hanzoai/models/cache_ping_response.rbi | 0 rbi/{lib => }/hanzoai/models/chat/completion_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/client_get_home_params.rbi | 0 rbi/{lib => }/hanzoai/models/cohere_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/cohere_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/cohere_modify_params.rbi | 0 rbi/{lib => }/hanzoai/models/cohere_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/cohere_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/completion_create_params.rbi | 0 .../hanzoai/models/config/pass_through_endpoint_create_params.rbi | 0 .../hanzoai/models/config/pass_through_endpoint_delete_params.rbi | 0 .../hanzoai/models/config/pass_through_endpoint_list_params.rbi | 0 .../hanzoai/models/config/pass_through_endpoint_response.rbi | 0 .../hanzoai/models/config/pass_through_endpoint_update_params.rbi | 0 .../hanzoai/models/config/pass_through_generic_endpoint.rbi | 0 .../hanzoai/models/configurable_clientside_params_custom_auth.rbi | 0 rbi/{lib => }/hanzoai/models/credential_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/credential_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/credential_item.rbi | 0 rbi/{lib => }/hanzoai/models/credential_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/customer_block_params.rbi | 0 rbi/{lib => }/hanzoai/models/customer_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/customer_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/customer_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/customer_list_response.rbi | 0 rbi/{lib => }/hanzoai/models/customer_retrieve_info_params.rbi | 0 rbi/{lib => }/hanzoai/models/customer_retrieve_info_response.rbi | 0 rbi/{lib => }/hanzoai/models/customer_unblock_params.rbi | 0 rbi/{lib => }/hanzoai/models/customer_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/delete_create_allowed_ip_params.rbi | 0 rbi/{lib => }/hanzoai/models/embedding_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/engine_complete_params.rbi | 0 rbi/{lib => }/hanzoai/models/engine_embed_params.rbi | 0 rbi/{lib => }/hanzoai/models/engines/chat_complete_params.rbi | 0 rbi/{lib => }/hanzoai/models/eu_assemblyai_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/eu_assemblyai_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/eu_assemblyai_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/eu_assemblyai_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/eu_assemblyai_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/file_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/file_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/file_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/file_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/files/content_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/fine_tuning/job_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/fine_tuning/job_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/fine_tuning/job_retrieve_params.rbi | 0 .../hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/gemini_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/gemini_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/gemini_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/gemini_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/gemini_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/generate_key_response.rbi | 0 rbi/{lib => }/hanzoai/models/global/spend_list_tags_params.rbi | 0 rbi/{lib => }/hanzoai/models/global/spend_list_tags_response.rbi | 0 rbi/{lib => }/hanzoai/models/global/spend_reset_params.rbi | 0 .../hanzoai/models/global/spend_retrieve_report_params.rbi | 0 .../hanzoai/models/global/spend_retrieve_report_response.rbi | 0 rbi/{lib => }/hanzoai/models/guardrail_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/guardrail_list_response.rbi | 0 rbi/{lib => }/hanzoai/models/health_check_all_params.rbi | 0 rbi/{lib => }/hanzoai/models/health_check_liveliness_params.rbi | 0 rbi/{lib => }/hanzoai/models/health_check_liveness_params.rbi | 0 rbi/{lib => }/hanzoai/models/health_check_readiness_params.rbi | 0 rbi/{lib => }/hanzoai/models/health_check_services_params.rbi | 0 rbi/{lib => }/hanzoai/models/images/generation_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/ip_address.rbi | 0 rbi/{lib => }/hanzoai/models/key/regenerate_key_request.rbi | 0 rbi/{lib => }/hanzoai/models/key_block_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_block_response.rbi | 0 rbi/{lib => }/hanzoai/models/key_check_health_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_check_health_response.rbi | 0 rbi/{lib => }/hanzoai/models/key_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_generate_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_list_response.rbi | 0 rbi/{lib => }/hanzoai/models/key_regenerate_by_key_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_retrieve_info_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_unblock_params.rbi | 0 rbi/{lib => }/hanzoai/models/key_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/langfuse_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/langfuse_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/langfuse_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/langfuse_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/langfuse_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/member.rbi | 0 rbi/{lib => }/hanzoai/models/model/info_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/model/update_deployment.rbi | 0 rbi/{lib => }/hanzoai/models/model/update_full_params.rbi | 0 rbi/{lib => }/hanzoai/models/model/update_partial_params.rbi | 0 rbi/{lib => }/hanzoai/models/model_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/model_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/model_group_retrieve_info_params.rbi | 0 rbi/{lib => }/hanzoai/models/model_info.rbi | 0 rbi/{lib => }/hanzoai/models/model_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/moderation_create_params.rbi | 0 .../hanzoai/models/openai/deployment_complete_params.rbi | 0 rbi/{lib => }/hanzoai/models/openai/deployment_embed_params.rbi | 0 .../hanzoai/models/openai/deployments/chat_complete_params.rbi | 0 rbi/{lib => }/hanzoai/models/openai_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/openai_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/openai_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/openai_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/openai_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/org_member.rbi | 0 .../hanzoai/models/organization/info_deprecated_params.rbi | 0 .../hanzoai/models/organization/info_retrieve_params.rbi | 0 .../hanzoai/models/organization/info_retrieve_response.rbi | 0 rbi/{lib => }/hanzoai/models/organization_add_member_params.rbi | 0 rbi/{lib => }/hanzoai/models/organization_add_member_response.rbi | 0 rbi/{lib => }/hanzoai/models/organization_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/organization_create_response.rbi | 0 .../hanzoai/models/organization_delete_member_params.rbi | 0 rbi/{lib => }/hanzoai/models/organization_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/organization_delete_response.rbi | 0 rbi/{lib => }/hanzoai/models/organization_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/organization_list_response.rbi | 0 .../hanzoai/models/organization_update_member_params.rbi | 0 .../hanzoai/models/organization_update_member_response.rbi | 0 rbi/{lib => }/hanzoai/models/organization_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/organization_update_response.rbi | 0 rbi/{lib => }/hanzoai/models/provider_list_budgets_params.rbi | 0 rbi/{lib => }/hanzoai/models/provider_list_budgets_response.rbi | 0 rbi/{lib => }/hanzoai/models/rerank_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/rerank_create_v1_params.rbi | 0 rbi/{lib => }/hanzoai/models/rerank_create_v2_params.rbi | 0 rbi/{lib => }/hanzoai/models/response_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/response_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/response_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/responses/input_item_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/route_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/setting_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/spend_calculate_spend_params.rbi | 0 rbi/{lib => }/hanzoai/models/spend_list_logs_params.rbi | 0 rbi/{lib => }/hanzoai/models/spend_list_logs_response.rbi | 0 rbi/{lib => }/hanzoai/models/spend_list_tags_params.rbi | 0 rbi/{lib => }/hanzoai/models/spend_list_tags_response.rbi | 0 rbi/{lib => }/hanzoai/models/team/callback_add_params.rbi | 0 rbi/{lib => }/hanzoai/models/team/callback_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/team/model_add_params.rbi | 0 rbi/{lib => }/hanzoai/models/team/model_remove_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_add_member_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_add_member_response.rbi | 0 rbi/{lib => }/hanzoai/models/team_block_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_create_response.rbi | 0 rbi/{lib => }/hanzoai/models/team_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_disable_logging_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_list_available_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_remove_member_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_retrieve_info_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_unblock_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_update_member_params.rbi | 0 rbi/{lib => }/hanzoai/models/team_update_member_response.rbi | 0 rbi/{lib => }/hanzoai/models/team_update_params.rbi | 0 rbi/{lib => }/hanzoai/models/test_ping_params.rbi | 0 rbi/{lib => }/hanzoai/models/thread_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/thread_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/threads/message_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/threads/message_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/threads/run_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/user_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/user_create_response.rbi | 0 rbi/{lib => }/hanzoai/models/user_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/user_list_params.rbi | 0 rbi/{lib => }/hanzoai/models/user_retrieve_info_params.rbi | 0 rbi/{lib => }/hanzoai/models/user_update_params.rbi | 0 .../hanzoai/models/util_get_supported_openai_params_params.rbi | 0 rbi/{lib => }/hanzoai/models/util_token_counter_params.rbi | 0 rbi/{lib => }/hanzoai/models/util_token_counter_response.rbi | 0 rbi/{lib => }/hanzoai/models/util_transform_request_params.rbi | 0 rbi/{lib => }/hanzoai/models/util_transform_request_response.rbi | 0 rbi/{lib => }/hanzoai/models/vertex_ai_create_params.rbi | 0 rbi/{lib => }/hanzoai/models/vertex_ai_delete_params.rbi | 0 rbi/{lib => }/hanzoai/models/vertex_ai_patch_params.rbi | 0 rbi/{lib => }/hanzoai/models/vertex_ai_retrieve_params.rbi | 0 rbi/{lib => }/hanzoai/models/vertex_ai_update_params.rbi | 0 rbi/{lib => }/hanzoai/request_options.rbi | 0 rbi/{lib => }/hanzoai/resources/active.rbi | 0 rbi/{lib => }/hanzoai/resources/add.rbi | 0 rbi/{lib => }/hanzoai/resources/anthropic.rbi | 0 rbi/{lib => }/hanzoai/resources/assemblyai.rbi | 0 rbi/{lib => }/hanzoai/resources/assistants.rbi | 0 rbi/{lib => }/hanzoai/resources/audio.rbi | 0 rbi/{lib => }/hanzoai/resources/audio/speech.rbi | 0 rbi/{lib => }/hanzoai/resources/audio/transcriptions.rbi | 0 rbi/{lib => }/hanzoai/resources/azure.rbi | 0 rbi/{lib => }/hanzoai/resources/batches.rbi | 0 rbi/{lib => }/hanzoai/resources/batches/cancel.rbi | 0 rbi/{lib => }/hanzoai/resources/bedrock.rbi | 0 rbi/{lib => }/hanzoai/resources/budget.rbi | 0 rbi/{lib => }/hanzoai/resources/cache.rbi | 0 rbi/{lib => }/hanzoai/resources/cache/redis.rbi | 0 rbi/{lib => }/hanzoai/resources/chat.rbi | 0 rbi/{lib => }/hanzoai/resources/chat/completions.rbi | 0 rbi/{lib => }/hanzoai/resources/cohere.rbi | 0 rbi/{lib => }/hanzoai/resources/completions.rbi | 0 rbi/{lib => }/hanzoai/resources/config.rbi | 0 rbi/{lib => }/hanzoai/resources/config/pass_through_endpoint.rbi | 0 rbi/{lib => }/hanzoai/resources/credentials.rbi | 0 rbi/{lib => }/hanzoai/resources/customer.rbi | 0 rbi/{lib => }/hanzoai/resources/delete.rbi | 0 rbi/{lib => }/hanzoai/resources/embeddings.rbi | 0 rbi/{lib => }/hanzoai/resources/engines.rbi | 0 rbi/{lib => }/hanzoai/resources/engines/chat.rbi | 0 rbi/{lib => }/hanzoai/resources/eu_assemblyai.rbi | 0 rbi/{lib => }/hanzoai/resources/files.rbi | 0 rbi/{lib => }/hanzoai/resources/files/content.rbi | 0 rbi/{lib => }/hanzoai/resources/fine_tuning.rbi | 0 rbi/{lib => }/hanzoai/resources/fine_tuning/jobs.rbi | 0 rbi/{lib => }/hanzoai/resources/fine_tuning/jobs/cancel.rbi | 0 rbi/{lib => }/hanzoai/resources/gemini.rbi | 0 rbi/{lib => }/hanzoai/resources/global.rbi | 0 rbi/{lib => }/hanzoai/resources/global/spend.rbi | 0 rbi/{lib => }/hanzoai/resources/guardrails.rbi | 0 rbi/{lib => }/hanzoai/resources/health.rbi | 0 rbi/{lib => }/hanzoai/resources/images.rbi | 0 rbi/{lib => }/hanzoai/resources/images/generations.rbi | 0 rbi/{lib => }/hanzoai/resources/key.rbi | 0 rbi/{lib => }/hanzoai/resources/key/regenerate.rbi | 0 rbi/{lib => }/hanzoai/resources/langfuse.rbi | 0 rbi/{lib => }/hanzoai/resources/model.rbi | 0 rbi/{lib => }/hanzoai/resources/model/info.rbi | 0 rbi/{lib => }/hanzoai/resources/model/update.rbi | 0 rbi/{lib => }/hanzoai/resources/model_group.rbi | 0 rbi/{lib => }/hanzoai/resources/models.rbi | 0 rbi/{lib => }/hanzoai/resources/moderations.rbi | 0 rbi/{lib => }/hanzoai/resources/openai.rbi | 0 rbi/{lib => }/hanzoai/resources/openai/deployments.rbi | 0 rbi/{lib => }/hanzoai/resources/openai/deployments/chat.rbi | 0 rbi/{lib => }/hanzoai/resources/organization.rbi | 0 rbi/{lib => }/hanzoai/resources/organization/info.rbi | 0 rbi/{lib => }/hanzoai/resources/provider.rbi | 0 rbi/{lib => }/hanzoai/resources/rerank.rbi | 0 rbi/{lib => }/hanzoai/resources/responses.rbi | 0 rbi/{lib => }/hanzoai/resources/responses/input_items.rbi | 0 rbi/{lib => }/hanzoai/resources/routes.rbi | 0 rbi/{lib => }/hanzoai/resources/settings.rbi | 0 rbi/{lib => }/hanzoai/resources/spend.rbi | 0 rbi/{lib => }/hanzoai/resources/team.rbi | 0 rbi/{lib => }/hanzoai/resources/team/callback.rbi | 0 rbi/{lib => }/hanzoai/resources/team/model.rbi | 0 rbi/{lib => }/hanzoai/resources/test.rbi | 0 rbi/{lib => }/hanzoai/resources/threads.rbi | 0 rbi/{lib => }/hanzoai/resources/threads/messages.rbi | 0 rbi/{lib => }/hanzoai/resources/threads/runs.rbi | 0 rbi/{lib => }/hanzoai/resources/user.rbi | 0 rbi/{lib => }/hanzoai/resources/utils.rbi | 0 rbi/{lib => }/hanzoai/resources/vertex_ai.rbi | 0 rbi/{lib => }/hanzoai/version.rbi | 0 319 files changed, 0 insertions(+), 0 deletions(-) rename rbi/{lib => }/hanzoai/client.rbi (100%) rename rbi/{lib => }/hanzoai/errors.rbi (100%) rename rbi/{lib => }/hanzoai/file_part.rbi (100%) rename rbi/{lib => }/hanzoai/internal.rbi (100%) rename rbi/{lib => }/hanzoai/internal/transport/base_client.rbi (100%) rename rbi/{lib => }/hanzoai/internal/transport/pooled_net_requester.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/array_of.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/base_model.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/base_page.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/boolean.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/converter.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/enum.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/file_input.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/hash_of.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/request_parameters.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/union.rbi (100%) rename rbi/{lib => }/hanzoai/internal/type/unknown.rbi (100%) rename rbi/{lib => }/hanzoai/internal/util.rbi (100%) rename rbi/{lib => }/hanzoai/models/active_list_callbacks_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/add_add_allowed_ip_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/anthropic_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/anthropic_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/anthropic_modify_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/anthropic_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/anthropic_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assemblyai_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assemblyai_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assemblyai_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assemblyai_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assemblyai_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assistant_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assistant_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/assistant_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/audio/speech_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/audio/transcription_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/azure_call_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/azure_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/azure_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/azure_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/azure_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batch_cancel_with_provider_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batch_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batch_create_with_provider_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batch_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batch_list_with_provider_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batch_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batch_retrieve_with_provider_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/batches/cancel_cancel_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/bedrock_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/bedrock_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/bedrock_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/bedrock_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/bedrock_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/block_key_request.rbi (100%) rename rbi/{lib => }/hanzoai/models/block_team_request.rbi (100%) rename rbi/{lib => }/hanzoai/models/block_users.rbi (100%) rename rbi/{lib => }/hanzoai/models/budget_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/budget_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/budget_info_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/budget_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/budget_new.rbi (100%) rename rbi/{lib => }/hanzoai/models/budget_settings_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/budget_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cache/redi_retrieve_info_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cache_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cache_flush_all_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cache_ping_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cache_ping_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/chat/completion_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/client_get_home_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cohere_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cohere_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cohere_modify_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cohere_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/cohere_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/completion_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/config/pass_through_endpoint_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/config/pass_through_endpoint_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/config/pass_through_endpoint_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/config/pass_through_endpoint_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/config/pass_through_endpoint_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/config/pass_through_generic_endpoint.rbi (100%) rename rbi/{lib => }/hanzoai/models/configurable_clientside_params_custom_auth.rbi (100%) rename rbi/{lib => }/hanzoai/models/credential_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/credential_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/credential_item.rbi (100%) rename rbi/{lib => }/hanzoai/models/credential_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_block_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_list_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_retrieve_info_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_retrieve_info_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_unblock_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/customer_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/delete_create_allowed_ip_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/embedding_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/engine_complete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/engine_embed_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/engines/chat_complete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/eu_assemblyai_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/eu_assemblyai_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/eu_assemblyai_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/eu_assemblyai_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/eu_assemblyai_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/file_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/file_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/file_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/file_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/files/content_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/fine_tuning/job_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/fine_tuning/job_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/fine_tuning/job_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/gemini_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/gemini_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/gemini_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/gemini_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/gemini_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/generate_key_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/global/spend_list_tags_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/global/spend_list_tags_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/global/spend_reset_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/global/spend_retrieve_report_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/global/spend_retrieve_report_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/guardrail_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/guardrail_list_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/health_check_all_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/health_check_liveliness_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/health_check_liveness_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/health_check_readiness_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/health_check_services_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/images/generation_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/ip_address.rbi (100%) rename rbi/{lib => }/hanzoai/models/key/regenerate_key_request.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_block_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_block_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_check_health_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_check_health_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_generate_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_list_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_regenerate_by_key_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_retrieve_info_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_unblock_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/key_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/langfuse_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/langfuse_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/langfuse_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/langfuse_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/langfuse_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/member.rbi (100%) rename rbi/{lib => }/hanzoai/models/model/info_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/model/update_deployment.rbi (100%) rename rbi/{lib => }/hanzoai/models/model/update_full_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/model/update_partial_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/model_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/model_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/model_group_retrieve_info_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/model_info.rbi (100%) rename rbi/{lib => }/hanzoai/models/model_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/moderation_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai/deployment_complete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai/deployment_embed_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai/deployments/chat_complete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/openai_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/org_member.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization/info_deprecated_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization/info_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization/info_retrieve_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_add_member_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_add_member_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_create_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_delete_member_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_delete_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_list_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_update_member_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_update_member_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/organization_update_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/provider_list_budgets_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/provider_list_budgets_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/rerank_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/rerank_create_v1_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/rerank_create_v2_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/response_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/response_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/response_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/responses/input_item_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/route_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/setting_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/spend_calculate_spend_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/spend_list_logs_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/spend_list_logs_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/spend_list_tags_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/spend_list_tags_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/team/callback_add_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team/callback_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team/model_add_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team/model_remove_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_add_member_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_add_member_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_block_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_create_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_disable_logging_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_list_available_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_remove_member_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_retrieve_info_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_unblock_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_update_member_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_update_member_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/team_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/test_ping_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/thread_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/thread_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/threads/message_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/threads/message_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/threads/run_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/user_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/user_create_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/user_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/user_list_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/user_retrieve_info_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/user_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/util_get_supported_openai_params_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/util_token_counter_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/util_token_counter_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/util_transform_request_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/util_transform_request_response.rbi (100%) rename rbi/{lib => }/hanzoai/models/vertex_ai_create_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/vertex_ai_delete_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/vertex_ai_patch_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/vertex_ai_retrieve_params.rbi (100%) rename rbi/{lib => }/hanzoai/models/vertex_ai_update_params.rbi (100%) rename rbi/{lib => }/hanzoai/request_options.rbi (100%) rename rbi/{lib => }/hanzoai/resources/active.rbi (100%) rename rbi/{lib => }/hanzoai/resources/add.rbi (100%) rename rbi/{lib => }/hanzoai/resources/anthropic.rbi (100%) rename rbi/{lib => }/hanzoai/resources/assemblyai.rbi (100%) rename rbi/{lib => }/hanzoai/resources/assistants.rbi (100%) rename rbi/{lib => }/hanzoai/resources/audio.rbi (100%) rename rbi/{lib => }/hanzoai/resources/audio/speech.rbi (100%) rename rbi/{lib => }/hanzoai/resources/audio/transcriptions.rbi (100%) rename rbi/{lib => }/hanzoai/resources/azure.rbi (100%) rename rbi/{lib => }/hanzoai/resources/batches.rbi (100%) rename rbi/{lib => }/hanzoai/resources/batches/cancel.rbi (100%) rename rbi/{lib => }/hanzoai/resources/bedrock.rbi (100%) rename rbi/{lib => }/hanzoai/resources/budget.rbi (100%) rename rbi/{lib => }/hanzoai/resources/cache.rbi (100%) rename rbi/{lib => }/hanzoai/resources/cache/redis.rbi (100%) rename rbi/{lib => }/hanzoai/resources/chat.rbi (100%) rename rbi/{lib => }/hanzoai/resources/chat/completions.rbi (100%) rename rbi/{lib => }/hanzoai/resources/cohere.rbi (100%) rename rbi/{lib => }/hanzoai/resources/completions.rbi (100%) rename rbi/{lib => }/hanzoai/resources/config.rbi (100%) rename rbi/{lib => }/hanzoai/resources/config/pass_through_endpoint.rbi (100%) rename rbi/{lib => }/hanzoai/resources/credentials.rbi (100%) rename rbi/{lib => }/hanzoai/resources/customer.rbi (100%) rename rbi/{lib => }/hanzoai/resources/delete.rbi (100%) rename rbi/{lib => }/hanzoai/resources/embeddings.rbi (100%) rename rbi/{lib => }/hanzoai/resources/engines.rbi (100%) rename rbi/{lib => }/hanzoai/resources/engines/chat.rbi (100%) rename rbi/{lib => }/hanzoai/resources/eu_assemblyai.rbi (100%) rename rbi/{lib => }/hanzoai/resources/files.rbi (100%) rename rbi/{lib => }/hanzoai/resources/files/content.rbi (100%) rename rbi/{lib => }/hanzoai/resources/fine_tuning.rbi (100%) rename rbi/{lib => }/hanzoai/resources/fine_tuning/jobs.rbi (100%) rename rbi/{lib => }/hanzoai/resources/fine_tuning/jobs/cancel.rbi (100%) rename rbi/{lib => }/hanzoai/resources/gemini.rbi (100%) rename rbi/{lib => }/hanzoai/resources/global.rbi (100%) rename rbi/{lib => }/hanzoai/resources/global/spend.rbi (100%) rename rbi/{lib => }/hanzoai/resources/guardrails.rbi (100%) rename rbi/{lib => }/hanzoai/resources/health.rbi (100%) rename rbi/{lib => }/hanzoai/resources/images.rbi (100%) rename rbi/{lib => }/hanzoai/resources/images/generations.rbi (100%) rename rbi/{lib => }/hanzoai/resources/key.rbi (100%) rename rbi/{lib => }/hanzoai/resources/key/regenerate.rbi (100%) rename rbi/{lib => }/hanzoai/resources/langfuse.rbi (100%) rename rbi/{lib => }/hanzoai/resources/model.rbi (100%) rename rbi/{lib => }/hanzoai/resources/model/info.rbi (100%) rename rbi/{lib => }/hanzoai/resources/model/update.rbi (100%) rename rbi/{lib => }/hanzoai/resources/model_group.rbi (100%) rename rbi/{lib => }/hanzoai/resources/models.rbi (100%) rename rbi/{lib => }/hanzoai/resources/moderations.rbi (100%) rename rbi/{lib => }/hanzoai/resources/openai.rbi (100%) rename rbi/{lib => }/hanzoai/resources/openai/deployments.rbi (100%) rename rbi/{lib => }/hanzoai/resources/openai/deployments/chat.rbi (100%) rename rbi/{lib => }/hanzoai/resources/organization.rbi (100%) rename rbi/{lib => }/hanzoai/resources/organization/info.rbi (100%) rename rbi/{lib => }/hanzoai/resources/provider.rbi (100%) rename rbi/{lib => }/hanzoai/resources/rerank.rbi (100%) rename rbi/{lib => }/hanzoai/resources/responses.rbi (100%) rename rbi/{lib => }/hanzoai/resources/responses/input_items.rbi (100%) rename rbi/{lib => }/hanzoai/resources/routes.rbi (100%) rename rbi/{lib => }/hanzoai/resources/settings.rbi (100%) rename rbi/{lib => }/hanzoai/resources/spend.rbi (100%) rename rbi/{lib => }/hanzoai/resources/team.rbi (100%) rename rbi/{lib => }/hanzoai/resources/team/callback.rbi (100%) rename rbi/{lib => }/hanzoai/resources/team/model.rbi (100%) rename rbi/{lib => }/hanzoai/resources/test.rbi (100%) rename rbi/{lib => }/hanzoai/resources/threads.rbi (100%) rename rbi/{lib => }/hanzoai/resources/threads/messages.rbi (100%) rename rbi/{lib => }/hanzoai/resources/threads/runs.rbi (100%) rename rbi/{lib => }/hanzoai/resources/user.rbi (100%) rename rbi/{lib => }/hanzoai/resources/utils.rbi (100%) rename rbi/{lib => }/hanzoai/resources/vertex_ai.rbi (100%) rename rbi/{lib => }/hanzoai/version.rbi (100%) diff --git a/rbi/lib/hanzoai/client.rbi b/rbi/hanzoai/client.rbi similarity index 100% rename from rbi/lib/hanzoai/client.rbi rename to rbi/hanzoai/client.rbi diff --git a/rbi/lib/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi similarity index 100% rename from rbi/lib/hanzoai/errors.rbi rename to rbi/hanzoai/errors.rbi diff --git a/rbi/lib/hanzoai/file_part.rbi b/rbi/hanzoai/file_part.rbi similarity index 100% rename from rbi/lib/hanzoai/file_part.rbi rename to rbi/hanzoai/file_part.rbi diff --git a/rbi/lib/hanzoai/internal.rbi b/rbi/hanzoai/internal.rbi similarity index 100% rename from rbi/lib/hanzoai/internal.rbi rename to rbi/hanzoai/internal.rbi diff --git a/rbi/lib/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/transport/base_client.rbi rename to rbi/hanzoai/internal/transport/base_client.rbi diff --git a/rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/transport/pooled_net_requester.rbi rename to rbi/hanzoai/internal/transport/pooled_net_requester.rbi diff --git a/rbi/lib/hanzoai/internal/type/array_of.rbi b/rbi/hanzoai/internal/type/array_of.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/array_of.rbi rename to rbi/hanzoai/internal/type/array_of.rbi diff --git a/rbi/lib/hanzoai/internal/type/base_model.rbi b/rbi/hanzoai/internal/type/base_model.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/base_model.rbi rename to rbi/hanzoai/internal/type/base_model.rbi diff --git a/rbi/lib/hanzoai/internal/type/base_page.rbi b/rbi/hanzoai/internal/type/base_page.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/base_page.rbi rename to rbi/hanzoai/internal/type/base_page.rbi diff --git a/rbi/lib/hanzoai/internal/type/boolean.rbi b/rbi/hanzoai/internal/type/boolean.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/boolean.rbi rename to rbi/hanzoai/internal/type/boolean.rbi diff --git a/rbi/lib/hanzoai/internal/type/converter.rbi b/rbi/hanzoai/internal/type/converter.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/converter.rbi rename to rbi/hanzoai/internal/type/converter.rbi diff --git a/rbi/lib/hanzoai/internal/type/enum.rbi b/rbi/hanzoai/internal/type/enum.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/enum.rbi rename to rbi/hanzoai/internal/type/enum.rbi diff --git a/rbi/lib/hanzoai/internal/type/file_input.rbi b/rbi/hanzoai/internal/type/file_input.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/file_input.rbi rename to rbi/hanzoai/internal/type/file_input.rbi diff --git a/rbi/lib/hanzoai/internal/type/hash_of.rbi b/rbi/hanzoai/internal/type/hash_of.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/hash_of.rbi rename to rbi/hanzoai/internal/type/hash_of.rbi diff --git a/rbi/lib/hanzoai/internal/type/request_parameters.rbi b/rbi/hanzoai/internal/type/request_parameters.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/request_parameters.rbi rename to rbi/hanzoai/internal/type/request_parameters.rbi diff --git a/rbi/lib/hanzoai/internal/type/union.rbi b/rbi/hanzoai/internal/type/union.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/union.rbi rename to rbi/hanzoai/internal/type/union.rbi diff --git a/rbi/lib/hanzoai/internal/type/unknown.rbi b/rbi/hanzoai/internal/type/unknown.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/type/unknown.rbi rename to rbi/hanzoai/internal/type/unknown.rbi diff --git a/rbi/lib/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi similarity index 100% rename from rbi/lib/hanzoai/internal/util.rbi rename to rbi/hanzoai/internal/util.rbi diff --git a/rbi/lib/hanzoai/models/active_list_callbacks_params.rbi b/rbi/hanzoai/models/active_list_callbacks_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/active_list_callbacks_params.rbi rename to rbi/hanzoai/models/active_list_callbacks_params.rbi diff --git a/rbi/lib/hanzoai/models/add_add_allowed_ip_params.rbi b/rbi/hanzoai/models/add_add_allowed_ip_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/add_add_allowed_ip_params.rbi rename to rbi/hanzoai/models/add_add_allowed_ip_params.rbi diff --git a/rbi/lib/hanzoai/models/anthropic_create_params.rbi b/rbi/hanzoai/models/anthropic_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/anthropic_create_params.rbi rename to rbi/hanzoai/models/anthropic_create_params.rbi diff --git a/rbi/lib/hanzoai/models/anthropic_delete_params.rbi b/rbi/hanzoai/models/anthropic_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/anthropic_delete_params.rbi rename to rbi/hanzoai/models/anthropic_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/anthropic_modify_params.rbi b/rbi/hanzoai/models/anthropic_modify_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/anthropic_modify_params.rbi rename to rbi/hanzoai/models/anthropic_modify_params.rbi diff --git a/rbi/lib/hanzoai/models/anthropic_retrieve_params.rbi b/rbi/hanzoai/models/anthropic_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/anthropic_retrieve_params.rbi rename to rbi/hanzoai/models/anthropic_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/anthropic_update_params.rbi b/rbi/hanzoai/models/anthropic_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/anthropic_update_params.rbi rename to rbi/hanzoai/models/anthropic_update_params.rbi diff --git a/rbi/lib/hanzoai/models/assemblyai_create_params.rbi b/rbi/hanzoai/models/assemblyai_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assemblyai_create_params.rbi rename to rbi/hanzoai/models/assemblyai_create_params.rbi diff --git a/rbi/lib/hanzoai/models/assemblyai_delete_params.rbi b/rbi/hanzoai/models/assemblyai_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assemblyai_delete_params.rbi rename to rbi/hanzoai/models/assemblyai_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/assemblyai_patch_params.rbi b/rbi/hanzoai/models/assemblyai_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assemblyai_patch_params.rbi rename to rbi/hanzoai/models/assemblyai_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/assemblyai_retrieve_params.rbi b/rbi/hanzoai/models/assemblyai_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assemblyai_retrieve_params.rbi rename to rbi/hanzoai/models/assemblyai_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/assemblyai_update_params.rbi b/rbi/hanzoai/models/assemblyai_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assemblyai_update_params.rbi rename to rbi/hanzoai/models/assemblyai_update_params.rbi diff --git a/rbi/lib/hanzoai/models/assistant_create_params.rbi b/rbi/hanzoai/models/assistant_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assistant_create_params.rbi rename to rbi/hanzoai/models/assistant_create_params.rbi diff --git a/rbi/lib/hanzoai/models/assistant_delete_params.rbi b/rbi/hanzoai/models/assistant_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assistant_delete_params.rbi rename to rbi/hanzoai/models/assistant_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/assistant_list_params.rbi b/rbi/hanzoai/models/assistant_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/assistant_list_params.rbi rename to rbi/hanzoai/models/assistant_list_params.rbi diff --git a/rbi/lib/hanzoai/models/audio/speech_create_params.rbi b/rbi/hanzoai/models/audio/speech_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/audio/speech_create_params.rbi rename to rbi/hanzoai/models/audio/speech_create_params.rbi diff --git a/rbi/lib/hanzoai/models/audio/transcription_create_params.rbi b/rbi/hanzoai/models/audio/transcription_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/audio/transcription_create_params.rbi rename to rbi/hanzoai/models/audio/transcription_create_params.rbi diff --git a/rbi/lib/hanzoai/models/azure_call_params.rbi b/rbi/hanzoai/models/azure_call_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/azure_call_params.rbi rename to rbi/hanzoai/models/azure_call_params.rbi diff --git a/rbi/lib/hanzoai/models/azure_create_params.rbi b/rbi/hanzoai/models/azure_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/azure_create_params.rbi rename to rbi/hanzoai/models/azure_create_params.rbi diff --git a/rbi/lib/hanzoai/models/azure_delete_params.rbi b/rbi/hanzoai/models/azure_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/azure_delete_params.rbi rename to rbi/hanzoai/models/azure_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/azure_patch_params.rbi b/rbi/hanzoai/models/azure_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/azure_patch_params.rbi rename to rbi/hanzoai/models/azure_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/azure_update_params.rbi b/rbi/hanzoai/models/azure_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/azure_update_params.rbi rename to rbi/hanzoai/models/azure_update_params.rbi diff --git a/rbi/lib/hanzoai/models/batch_cancel_with_provider_params.rbi b/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batch_cancel_with_provider_params.rbi rename to rbi/hanzoai/models/batch_cancel_with_provider_params.rbi diff --git a/rbi/lib/hanzoai/models/batch_create_params.rbi b/rbi/hanzoai/models/batch_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batch_create_params.rbi rename to rbi/hanzoai/models/batch_create_params.rbi diff --git a/rbi/lib/hanzoai/models/batch_create_with_provider_params.rbi b/rbi/hanzoai/models/batch_create_with_provider_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batch_create_with_provider_params.rbi rename to rbi/hanzoai/models/batch_create_with_provider_params.rbi diff --git a/rbi/lib/hanzoai/models/batch_list_params.rbi b/rbi/hanzoai/models/batch_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batch_list_params.rbi rename to rbi/hanzoai/models/batch_list_params.rbi diff --git a/rbi/lib/hanzoai/models/batch_list_with_provider_params.rbi b/rbi/hanzoai/models/batch_list_with_provider_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batch_list_with_provider_params.rbi rename to rbi/hanzoai/models/batch_list_with_provider_params.rbi diff --git a/rbi/lib/hanzoai/models/batch_retrieve_params.rbi b/rbi/hanzoai/models/batch_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batch_retrieve_params.rbi rename to rbi/hanzoai/models/batch_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/batch_retrieve_with_provider_params.rbi b/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batch_retrieve_with_provider_params.rbi rename to rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi diff --git a/rbi/lib/hanzoai/models/batches/cancel_cancel_params.rbi b/rbi/hanzoai/models/batches/cancel_cancel_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/batches/cancel_cancel_params.rbi rename to rbi/hanzoai/models/batches/cancel_cancel_params.rbi diff --git a/rbi/lib/hanzoai/models/bedrock_create_params.rbi b/rbi/hanzoai/models/bedrock_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/bedrock_create_params.rbi rename to rbi/hanzoai/models/bedrock_create_params.rbi diff --git a/rbi/lib/hanzoai/models/bedrock_delete_params.rbi b/rbi/hanzoai/models/bedrock_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/bedrock_delete_params.rbi rename to rbi/hanzoai/models/bedrock_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/bedrock_patch_params.rbi b/rbi/hanzoai/models/bedrock_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/bedrock_patch_params.rbi rename to rbi/hanzoai/models/bedrock_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/bedrock_retrieve_params.rbi b/rbi/hanzoai/models/bedrock_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/bedrock_retrieve_params.rbi rename to rbi/hanzoai/models/bedrock_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/bedrock_update_params.rbi b/rbi/hanzoai/models/bedrock_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/bedrock_update_params.rbi rename to rbi/hanzoai/models/bedrock_update_params.rbi diff --git a/rbi/lib/hanzoai/models/block_key_request.rbi b/rbi/hanzoai/models/block_key_request.rbi similarity index 100% rename from rbi/lib/hanzoai/models/block_key_request.rbi rename to rbi/hanzoai/models/block_key_request.rbi diff --git a/rbi/lib/hanzoai/models/block_team_request.rbi b/rbi/hanzoai/models/block_team_request.rbi similarity index 100% rename from rbi/lib/hanzoai/models/block_team_request.rbi rename to rbi/hanzoai/models/block_team_request.rbi diff --git a/rbi/lib/hanzoai/models/block_users.rbi b/rbi/hanzoai/models/block_users.rbi similarity index 100% rename from rbi/lib/hanzoai/models/block_users.rbi rename to rbi/hanzoai/models/block_users.rbi diff --git a/rbi/lib/hanzoai/models/budget_create_params.rbi b/rbi/hanzoai/models/budget_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/budget_create_params.rbi rename to rbi/hanzoai/models/budget_create_params.rbi diff --git a/rbi/lib/hanzoai/models/budget_delete_params.rbi b/rbi/hanzoai/models/budget_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/budget_delete_params.rbi rename to rbi/hanzoai/models/budget_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/budget_info_params.rbi b/rbi/hanzoai/models/budget_info_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/budget_info_params.rbi rename to rbi/hanzoai/models/budget_info_params.rbi diff --git a/rbi/lib/hanzoai/models/budget_list_params.rbi b/rbi/hanzoai/models/budget_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/budget_list_params.rbi rename to rbi/hanzoai/models/budget_list_params.rbi diff --git a/rbi/lib/hanzoai/models/budget_new.rbi b/rbi/hanzoai/models/budget_new.rbi similarity index 100% rename from rbi/lib/hanzoai/models/budget_new.rbi rename to rbi/hanzoai/models/budget_new.rbi diff --git a/rbi/lib/hanzoai/models/budget_settings_params.rbi b/rbi/hanzoai/models/budget_settings_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/budget_settings_params.rbi rename to rbi/hanzoai/models/budget_settings_params.rbi diff --git a/rbi/lib/hanzoai/models/budget_update_params.rbi b/rbi/hanzoai/models/budget_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/budget_update_params.rbi rename to rbi/hanzoai/models/budget_update_params.rbi diff --git a/rbi/lib/hanzoai/models/cache/redi_retrieve_info_params.rbi b/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cache/redi_retrieve_info_params.rbi rename to rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi diff --git a/rbi/lib/hanzoai/models/cache_delete_params.rbi b/rbi/hanzoai/models/cache_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cache_delete_params.rbi rename to rbi/hanzoai/models/cache_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/cache_flush_all_params.rbi b/rbi/hanzoai/models/cache_flush_all_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cache_flush_all_params.rbi rename to rbi/hanzoai/models/cache_flush_all_params.rbi diff --git a/rbi/lib/hanzoai/models/cache_ping_params.rbi b/rbi/hanzoai/models/cache_ping_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cache_ping_params.rbi rename to rbi/hanzoai/models/cache_ping_params.rbi diff --git a/rbi/lib/hanzoai/models/cache_ping_response.rbi b/rbi/hanzoai/models/cache_ping_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cache_ping_response.rbi rename to rbi/hanzoai/models/cache_ping_response.rbi diff --git a/rbi/lib/hanzoai/models/chat/completion_create_params.rbi b/rbi/hanzoai/models/chat/completion_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/chat/completion_create_params.rbi rename to rbi/hanzoai/models/chat/completion_create_params.rbi diff --git a/rbi/lib/hanzoai/models/client_get_home_params.rbi b/rbi/hanzoai/models/client_get_home_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/client_get_home_params.rbi rename to rbi/hanzoai/models/client_get_home_params.rbi diff --git a/rbi/lib/hanzoai/models/cohere_create_params.rbi b/rbi/hanzoai/models/cohere_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cohere_create_params.rbi rename to rbi/hanzoai/models/cohere_create_params.rbi diff --git a/rbi/lib/hanzoai/models/cohere_delete_params.rbi b/rbi/hanzoai/models/cohere_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cohere_delete_params.rbi rename to rbi/hanzoai/models/cohere_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/cohere_modify_params.rbi b/rbi/hanzoai/models/cohere_modify_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cohere_modify_params.rbi rename to rbi/hanzoai/models/cohere_modify_params.rbi diff --git a/rbi/lib/hanzoai/models/cohere_retrieve_params.rbi b/rbi/hanzoai/models/cohere_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cohere_retrieve_params.rbi rename to rbi/hanzoai/models/cohere_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/cohere_update_params.rbi b/rbi/hanzoai/models/cohere_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/cohere_update_params.rbi rename to rbi/hanzoai/models/cohere_update_params.rbi diff --git a/rbi/lib/hanzoai/models/completion_create_params.rbi b/rbi/hanzoai/models/completion_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/completion_create_params.rbi rename to rbi/hanzoai/models/completion_create_params.rbi diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_create_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/config/pass_through_endpoint_create_params.rbi rename to rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/config/pass_through_endpoint_delete_params.rbi rename to rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_list_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/config/pass_through_endpoint_list_params.rbi rename to rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_response.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/config/pass_through_endpoint_response.rbi rename to rbi/hanzoai/models/config/pass_through_endpoint_response.rbi diff --git a/rbi/lib/hanzoai/models/config/pass_through_endpoint_update_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/config/pass_through_endpoint_update_params.rbi rename to rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi diff --git a/rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi b/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi similarity index 100% rename from rbi/lib/hanzoai/models/config/pass_through_generic_endpoint.rbi rename to rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi diff --git a/rbi/lib/hanzoai/models/configurable_clientside_params_custom_auth.rbi b/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi similarity index 100% rename from rbi/lib/hanzoai/models/configurable_clientside_params_custom_auth.rbi rename to rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi diff --git a/rbi/lib/hanzoai/models/credential_create_params.rbi b/rbi/hanzoai/models/credential_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/credential_create_params.rbi rename to rbi/hanzoai/models/credential_create_params.rbi diff --git a/rbi/lib/hanzoai/models/credential_delete_params.rbi b/rbi/hanzoai/models/credential_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/credential_delete_params.rbi rename to rbi/hanzoai/models/credential_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/credential_item.rbi b/rbi/hanzoai/models/credential_item.rbi similarity index 100% rename from rbi/lib/hanzoai/models/credential_item.rbi rename to rbi/hanzoai/models/credential_item.rbi diff --git a/rbi/lib/hanzoai/models/credential_list_params.rbi b/rbi/hanzoai/models/credential_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/credential_list_params.rbi rename to rbi/hanzoai/models/credential_list_params.rbi diff --git a/rbi/lib/hanzoai/models/customer_block_params.rbi b/rbi/hanzoai/models/customer_block_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_block_params.rbi rename to rbi/hanzoai/models/customer_block_params.rbi diff --git a/rbi/lib/hanzoai/models/customer_create_params.rbi b/rbi/hanzoai/models/customer_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_create_params.rbi rename to rbi/hanzoai/models/customer_create_params.rbi diff --git a/rbi/lib/hanzoai/models/customer_delete_params.rbi b/rbi/hanzoai/models/customer_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_delete_params.rbi rename to rbi/hanzoai/models/customer_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/customer_list_params.rbi b/rbi/hanzoai/models/customer_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_list_params.rbi rename to rbi/hanzoai/models/customer_list_params.rbi diff --git a/rbi/lib/hanzoai/models/customer_list_response.rbi b/rbi/hanzoai/models/customer_list_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_list_response.rbi rename to rbi/hanzoai/models/customer_list_response.rbi diff --git a/rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi b/rbi/hanzoai/models/customer_retrieve_info_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_retrieve_info_params.rbi rename to rbi/hanzoai/models/customer_retrieve_info_params.rbi diff --git a/rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi b/rbi/hanzoai/models/customer_retrieve_info_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_retrieve_info_response.rbi rename to rbi/hanzoai/models/customer_retrieve_info_response.rbi diff --git a/rbi/lib/hanzoai/models/customer_unblock_params.rbi b/rbi/hanzoai/models/customer_unblock_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_unblock_params.rbi rename to rbi/hanzoai/models/customer_unblock_params.rbi diff --git a/rbi/lib/hanzoai/models/customer_update_params.rbi b/rbi/hanzoai/models/customer_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/customer_update_params.rbi rename to rbi/hanzoai/models/customer_update_params.rbi diff --git a/rbi/lib/hanzoai/models/delete_create_allowed_ip_params.rbi b/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/delete_create_allowed_ip_params.rbi rename to rbi/hanzoai/models/delete_create_allowed_ip_params.rbi diff --git a/rbi/lib/hanzoai/models/embedding_create_params.rbi b/rbi/hanzoai/models/embedding_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/embedding_create_params.rbi rename to rbi/hanzoai/models/embedding_create_params.rbi diff --git a/rbi/lib/hanzoai/models/engine_complete_params.rbi b/rbi/hanzoai/models/engine_complete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/engine_complete_params.rbi rename to rbi/hanzoai/models/engine_complete_params.rbi diff --git a/rbi/lib/hanzoai/models/engine_embed_params.rbi b/rbi/hanzoai/models/engine_embed_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/engine_embed_params.rbi rename to rbi/hanzoai/models/engine_embed_params.rbi diff --git a/rbi/lib/hanzoai/models/engines/chat_complete_params.rbi b/rbi/hanzoai/models/engines/chat_complete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/engines/chat_complete_params.rbi rename to rbi/hanzoai/models/engines/chat_complete_params.rbi diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_create_params.rbi b/rbi/hanzoai/models/eu_assemblyai_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/eu_assemblyai_create_params.rbi rename to rbi/hanzoai/models/eu_assemblyai_create_params.rbi diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_delete_params.rbi b/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/eu_assemblyai_delete_params.rbi rename to rbi/hanzoai/models/eu_assemblyai_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_patch_params.rbi b/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/eu_assemblyai_patch_params.rbi rename to rbi/hanzoai/models/eu_assemblyai_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_retrieve_params.rbi b/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/eu_assemblyai_retrieve_params.rbi rename to rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/eu_assemblyai_update_params.rbi b/rbi/hanzoai/models/eu_assemblyai_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/eu_assemblyai_update_params.rbi rename to rbi/hanzoai/models/eu_assemblyai_update_params.rbi diff --git a/rbi/lib/hanzoai/models/file_create_params.rbi b/rbi/hanzoai/models/file_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/file_create_params.rbi rename to rbi/hanzoai/models/file_create_params.rbi diff --git a/rbi/lib/hanzoai/models/file_delete_params.rbi b/rbi/hanzoai/models/file_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/file_delete_params.rbi rename to rbi/hanzoai/models/file_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/file_list_params.rbi b/rbi/hanzoai/models/file_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/file_list_params.rbi rename to rbi/hanzoai/models/file_list_params.rbi diff --git a/rbi/lib/hanzoai/models/file_retrieve_params.rbi b/rbi/hanzoai/models/file_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/file_retrieve_params.rbi rename to rbi/hanzoai/models/file_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/files/content_retrieve_params.rbi b/rbi/hanzoai/models/files/content_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/files/content_retrieve_params.rbi rename to rbi/hanzoai/models/files/content_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/fine_tuning/job_create_params.rbi rename to rbi/hanzoai/models/fine_tuning/job_create_params.rbi diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi b/rbi/hanzoai/models/fine_tuning/job_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/fine_tuning/job_list_params.rbi rename to rbi/hanzoai/models/fine_tuning/job_list_params.rbi diff --git a/rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi b/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/fine_tuning/job_retrieve_params.rbi rename to rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi rename to rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi diff --git a/rbi/lib/hanzoai/models/gemini_create_params.rbi b/rbi/hanzoai/models/gemini_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/gemini_create_params.rbi rename to rbi/hanzoai/models/gemini_create_params.rbi diff --git a/rbi/lib/hanzoai/models/gemini_delete_params.rbi b/rbi/hanzoai/models/gemini_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/gemini_delete_params.rbi rename to rbi/hanzoai/models/gemini_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/gemini_patch_params.rbi b/rbi/hanzoai/models/gemini_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/gemini_patch_params.rbi rename to rbi/hanzoai/models/gemini_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/gemini_retrieve_params.rbi b/rbi/hanzoai/models/gemini_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/gemini_retrieve_params.rbi rename to rbi/hanzoai/models/gemini_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/gemini_update_params.rbi b/rbi/hanzoai/models/gemini_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/gemini_update_params.rbi rename to rbi/hanzoai/models/gemini_update_params.rbi diff --git a/rbi/lib/hanzoai/models/generate_key_response.rbi b/rbi/hanzoai/models/generate_key_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/generate_key_response.rbi rename to rbi/hanzoai/models/generate_key_response.rbi diff --git a/rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi b/rbi/hanzoai/models/global/spend_list_tags_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/global/spend_list_tags_params.rbi rename to rbi/hanzoai/models/global/spend_list_tags_params.rbi diff --git a/rbi/lib/hanzoai/models/global/spend_list_tags_response.rbi b/rbi/hanzoai/models/global/spend_list_tags_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/global/spend_list_tags_response.rbi rename to rbi/hanzoai/models/global/spend_list_tags_response.rbi diff --git a/rbi/lib/hanzoai/models/global/spend_reset_params.rbi b/rbi/hanzoai/models/global/spend_reset_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/global/spend_reset_params.rbi rename to rbi/hanzoai/models/global/spend_reset_params.rbi diff --git a/rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/global/spend_retrieve_report_params.rbi rename to rbi/hanzoai/models/global/spend_retrieve_report_params.rbi diff --git a/rbi/lib/hanzoai/models/global/spend_retrieve_report_response.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/global/spend_retrieve_report_response.rbi rename to rbi/hanzoai/models/global/spend_retrieve_report_response.rbi diff --git a/rbi/lib/hanzoai/models/guardrail_list_params.rbi b/rbi/hanzoai/models/guardrail_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/guardrail_list_params.rbi rename to rbi/hanzoai/models/guardrail_list_params.rbi diff --git a/rbi/lib/hanzoai/models/guardrail_list_response.rbi b/rbi/hanzoai/models/guardrail_list_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/guardrail_list_response.rbi rename to rbi/hanzoai/models/guardrail_list_response.rbi diff --git a/rbi/lib/hanzoai/models/health_check_all_params.rbi b/rbi/hanzoai/models/health_check_all_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/health_check_all_params.rbi rename to rbi/hanzoai/models/health_check_all_params.rbi diff --git a/rbi/lib/hanzoai/models/health_check_liveliness_params.rbi b/rbi/hanzoai/models/health_check_liveliness_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/health_check_liveliness_params.rbi rename to rbi/hanzoai/models/health_check_liveliness_params.rbi diff --git a/rbi/lib/hanzoai/models/health_check_liveness_params.rbi b/rbi/hanzoai/models/health_check_liveness_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/health_check_liveness_params.rbi rename to rbi/hanzoai/models/health_check_liveness_params.rbi diff --git a/rbi/lib/hanzoai/models/health_check_readiness_params.rbi b/rbi/hanzoai/models/health_check_readiness_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/health_check_readiness_params.rbi rename to rbi/hanzoai/models/health_check_readiness_params.rbi diff --git a/rbi/lib/hanzoai/models/health_check_services_params.rbi b/rbi/hanzoai/models/health_check_services_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/health_check_services_params.rbi rename to rbi/hanzoai/models/health_check_services_params.rbi diff --git a/rbi/lib/hanzoai/models/images/generation_create_params.rbi b/rbi/hanzoai/models/images/generation_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/images/generation_create_params.rbi rename to rbi/hanzoai/models/images/generation_create_params.rbi diff --git a/rbi/lib/hanzoai/models/ip_address.rbi b/rbi/hanzoai/models/ip_address.rbi similarity index 100% rename from rbi/lib/hanzoai/models/ip_address.rbi rename to rbi/hanzoai/models/ip_address.rbi diff --git a/rbi/lib/hanzoai/models/key/regenerate_key_request.rbi b/rbi/hanzoai/models/key/regenerate_key_request.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key/regenerate_key_request.rbi rename to rbi/hanzoai/models/key/regenerate_key_request.rbi diff --git a/rbi/lib/hanzoai/models/key_block_params.rbi b/rbi/hanzoai/models/key_block_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_block_params.rbi rename to rbi/hanzoai/models/key_block_params.rbi diff --git a/rbi/lib/hanzoai/models/key_block_response.rbi b/rbi/hanzoai/models/key_block_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_block_response.rbi rename to rbi/hanzoai/models/key_block_response.rbi diff --git a/rbi/lib/hanzoai/models/key_check_health_params.rbi b/rbi/hanzoai/models/key_check_health_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_check_health_params.rbi rename to rbi/hanzoai/models/key_check_health_params.rbi diff --git a/rbi/lib/hanzoai/models/key_check_health_response.rbi b/rbi/hanzoai/models/key_check_health_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_check_health_response.rbi rename to rbi/hanzoai/models/key_check_health_response.rbi diff --git a/rbi/lib/hanzoai/models/key_delete_params.rbi b/rbi/hanzoai/models/key_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_delete_params.rbi rename to rbi/hanzoai/models/key_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/key_generate_params.rbi b/rbi/hanzoai/models/key_generate_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_generate_params.rbi rename to rbi/hanzoai/models/key_generate_params.rbi diff --git a/rbi/lib/hanzoai/models/key_list_params.rbi b/rbi/hanzoai/models/key_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_list_params.rbi rename to rbi/hanzoai/models/key_list_params.rbi diff --git a/rbi/lib/hanzoai/models/key_list_response.rbi b/rbi/hanzoai/models/key_list_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_list_response.rbi rename to rbi/hanzoai/models/key_list_response.rbi diff --git a/rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi b/rbi/hanzoai/models/key_regenerate_by_key_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_regenerate_by_key_params.rbi rename to rbi/hanzoai/models/key_regenerate_by_key_params.rbi diff --git a/rbi/lib/hanzoai/models/key_retrieve_info_params.rbi b/rbi/hanzoai/models/key_retrieve_info_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_retrieve_info_params.rbi rename to rbi/hanzoai/models/key_retrieve_info_params.rbi diff --git a/rbi/lib/hanzoai/models/key_unblock_params.rbi b/rbi/hanzoai/models/key_unblock_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_unblock_params.rbi rename to rbi/hanzoai/models/key_unblock_params.rbi diff --git a/rbi/lib/hanzoai/models/key_update_params.rbi b/rbi/hanzoai/models/key_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/key_update_params.rbi rename to rbi/hanzoai/models/key_update_params.rbi diff --git a/rbi/lib/hanzoai/models/langfuse_create_params.rbi b/rbi/hanzoai/models/langfuse_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/langfuse_create_params.rbi rename to rbi/hanzoai/models/langfuse_create_params.rbi diff --git a/rbi/lib/hanzoai/models/langfuse_delete_params.rbi b/rbi/hanzoai/models/langfuse_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/langfuse_delete_params.rbi rename to rbi/hanzoai/models/langfuse_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/langfuse_patch_params.rbi b/rbi/hanzoai/models/langfuse_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/langfuse_patch_params.rbi rename to rbi/hanzoai/models/langfuse_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/langfuse_retrieve_params.rbi b/rbi/hanzoai/models/langfuse_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/langfuse_retrieve_params.rbi rename to rbi/hanzoai/models/langfuse_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/langfuse_update_params.rbi b/rbi/hanzoai/models/langfuse_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/langfuse_update_params.rbi rename to rbi/hanzoai/models/langfuse_update_params.rbi diff --git a/rbi/lib/hanzoai/models/member.rbi b/rbi/hanzoai/models/member.rbi similarity index 100% rename from rbi/lib/hanzoai/models/member.rbi rename to rbi/hanzoai/models/member.rbi diff --git a/rbi/lib/hanzoai/models/model/info_list_params.rbi b/rbi/hanzoai/models/model/info_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model/info_list_params.rbi rename to rbi/hanzoai/models/model/info_list_params.rbi diff --git a/rbi/lib/hanzoai/models/model/update_deployment.rbi b/rbi/hanzoai/models/model/update_deployment.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model/update_deployment.rbi rename to rbi/hanzoai/models/model/update_deployment.rbi diff --git a/rbi/lib/hanzoai/models/model/update_full_params.rbi b/rbi/hanzoai/models/model/update_full_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model/update_full_params.rbi rename to rbi/hanzoai/models/model/update_full_params.rbi diff --git a/rbi/lib/hanzoai/models/model/update_partial_params.rbi b/rbi/hanzoai/models/model/update_partial_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model/update_partial_params.rbi rename to rbi/hanzoai/models/model/update_partial_params.rbi diff --git a/rbi/lib/hanzoai/models/model_create_params.rbi b/rbi/hanzoai/models/model_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model_create_params.rbi rename to rbi/hanzoai/models/model_create_params.rbi diff --git a/rbi/lib/hanzoai/models/model_delete_params.rbi b/rbi/hanzoai/models/model_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model_delete_params.rbi rename to rbi/hanzoai/models/model_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/model_group_retrieve_info_params.rbi b/rbi/hanzoai/models/model_group_retrieve_info_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model_group_retrieve_info_params.rbi rename to rbi/hanzoai/models/model_group_retrieve_info_params.rbi diff --git a/rbi/lib/hanzoai/models/model_info.rbi b/rbi/hanzoai/models/model_info.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model_info.rbi rename to rbi/hanzoai/models/model_info.rbi diff --git a/rbi/lib/hanzoai/models/model_list_params.rbi b/rbi/hanzoai/models/model_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/model_list_params.rbi rename to rbi/hanzoai/models/model_list_params.rbi diff --git a/rbi/lib/hanzoai/models/moderation_create_params.rbi b/rbi/hanzoai/models/moderation_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/moderation_create_params.rbi rename to rbi/hanzoai/models/moderation_create_params.rbi diff --git a/rbi/lib/hanzoai/models/openai/deployment_complete_params.rbi b/rbi/hanzoai/models/openai/deployment_complete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai/deployment_complete_params.rbi rename to rbi/hanzoai/models/openai/deployment_complete_params.rbi diff --git a/rbi/lib/hanzoai/models/openai/deployment_embed_params.rbi b/rbi/hanzoai/models/openai/deployment_embed_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai/deployment_embed_params.rbi rename to rbi/hanzoai/models/openai/deployment_embed_params.rbi diff --git a/rbi/lib/hanzoai/models/openai/deployments/chat_complete_params.rbi b/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai/deployments/chat_complete_params.rbi rename to rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi diff --git a/rbi/lib/hanzoai/models/openai_create_params.rbi b/rbi/hanzoai/models/openai_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai_create_params.rbi rename to rbi/hanzoai/models/openai_create_params.rbi diff --git a/rbi/lib/hanzoai/models/openai_delete_params.rbi b/rbi/hanzoai/models/openai_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai_delete_params.rbi rename to rbi/hanzoai/models/openai_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/openai_patch_params.rbi b/rbi/hanzoai/models/openai_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai_patch_params.rbi rename to rbi/hanzoai/models/openai_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/openai_retrieve_params.rbi b/rbi/hanzoai/models/openai_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai_retrieve_params.rbi rename to rbi/hanzoai/models/openai_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/openai_update_params.rbi b/rbi/hanzoai/models/openai_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/openai_update_params.rbi rename to rbi/hanzoai/models/openai_update_params.rbi diff --git a/rbi/lib/hanzoai/models/org_member.rbi b/rbi/hanzoai/models/org_member.rbi similarity index 100% rename from rbi/lib/hanzoai/models/org_member.rbi rename to rbi/hanzoai/models/org_member.rbi diff --git a/rbi/lib/hanzoai/models/organization/info_deprecated_params.rbi b/rbi/hanzoai/models/organization/info_deprecated_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization/info_deprecated_params.rbi rename to rbi/hanzoai/models/organization/info_deprecated_params.rbi diff --git a/rbi/lib/hanzoai/models/organization/info_retrieve_params.rbi b/rbi/hanzoai/models/organization/info_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization/info_retrieve_params.rbi rename to rbi/hanzoai/models/organization/info_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/hanzoai/models/organization/info_retrieve_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization/info_retrieve_response.rbi rename to rbi/hanzoai/models/organization/info_retrieve_response.rbi diff --git a/rbi/lib/hanzoai/models/organization_add_member_params.rbi b/rbi/hanzoai/models/organization_add_member_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_add_member_params.rbi rename to rbi/hanzoai/models/organization_add_member_params.rbi diff --git a/rbi/lib/hanzoai/models/organization_add_member_response.rbi b/rbi/hanzoai/models/organization_add_member_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_add_member_response.rbi rename to rbi/hanzoai/models/organization_add_member_response.rbi diff --git a/rbi/lib/hanzoai/models/organization_create_params.rbi b/rbi/hanzoai/models/organization_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_create_params.rbi rename to rbi/hanzoai/models/organization_create_params.rbi diff --git a/rbi/lib/hanzoai/models/organization_create_response.rbi b/rbi/hanzoai/models/organization_create_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_create_response.rbi rename to rbi/hanzoai/models/organization_create_response.rbi diff --git a/rbi/lib/hanzoai/models/organization_delete_member_params.rbi b/rbi/hanzoai/models/organization_delete_member_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_delete_member_params.rbi rename to rbi/hanzoai/models/organization_delete_member_params.rbi diff --git a/rbi/lib/hanzoai/models/organization_delete_params.rbi b/rbi/hanzoai/models/organization_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_delete_params.rbi rename to rbi/hanzoai/models/organization_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/organization_delete_response.rbi b/rbi/hanzoai/models/organization_delete_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_delete_response.rbi rename to rbi/hanzoai/models/organization_delete_response.rbi diff --git a/rbi/lib/hanzoai/models/organization_list_params.rbi b/rbi/hanzoai/models/organization_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_list_params.rbi rename to rbi/hanzoai/models/organization_list_params.rbi diff --git a/rbi/lib/hanzoai/models/organization_list_response.rbi b/rbi/hanzoai/models/organization_list_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_list_response.rbi rename to rbi/hanzoai/models/organization_list_response.rbi diff --git a/rbi/lib/hanzoai/models/organization_update_member_params.rbi b/rbi/hanzoai/models/organization_update_member_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_update_member_params.rbi rename to rbi/hanzoai/models/organization_update_member_params.rbi diff --git a/rbi/lib/hanzoai/models/organization_update_member_response.rbi b/rbi/hanzoai/models/organization_update_member_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_update_member_response.rbi rename to rbi/hanzoai/models/organization_update_member_response.rbi diff --git a/rbi/lib/hanzoai/models/organization_update_params.rbi b/rbi/hanzoai/models/organization_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_update_params.rbi rename to rbi/hanzoai/models/organization_update_params.rbi diff --git a/rbi/lib/hanzoai/models/organization_update_response.rbi b/rbi/hanzoai/models/organization_update_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/organization_update_response.rbi rename to rbi/hanzoai/models/organization_update_response.rbi diff --git a/rbi/lib/hanzoai/models/provider_list_budgets_params.rbi b/rbi/hanzoai/models/provider_list_budgets_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/provider_list_budgets_params.rbi rename to rbi/hanzoai/models/provider_list_budgets_params.rbi diff --git a/rbi/lib/hanzoai/models/provider_list_budgets_response.rbi b/rbi/hanzoai/models/provider_list_budgets_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/provider_list_budgets_response.rbi rename to rbi/hanzoai/models/provider_list_budgets_response.rbi diff --git a/rbi/lib/hanzoai/models/rerank_create_params.rbi b/rbi/hanzoai/models/rerank_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/rerank_create_params.rbi rename to rbi/hanzoai/models/rerank_create_params.rbi diff --git a/rbi/lib/hanzoai/models/rerank_create_v1_params.rbi b/rbi/hanzoai/models/rerank_create_v1_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/rerank_create_v1_params.rbi rename to rbi/hanzoai/models/rerank_create_v1_params.rbi diff --git a/rbi/lib/hanzoai/models/rerank_create_v2_params.rbi b/rbi/hanzoai/models/rerank_create_v2_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/rerank_create_v2_params.rbi rename to rbi/hanzoai/models/rerank_create_v2_params.rbi diff --git a/rbi/lib/hanzoai/models/response_create_params.rbi b/rbi/hanzoai/models/response_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/response_create_params.rbi rename to rbi/hanzoai/models/response_create_params.rbi diff --git a/rbi/lib/hanzoai/models/response_delete_params.rbi b/rbi/hanzoai/models/response_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/response_delete_params.rbi rename to rbi/hanzoai/models/response_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/response_retrieve_params.rbi b/rbi/hanzoai/models/response_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/response_retrieve_params.rbi rename to rbi/hanzoai/models/response_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/responses/input_item_list_params.rbi b/rbi/hanzoai/models/responses/input_item_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/responses/input_item_list_params.rbi rename to rbi/hanzoai/models/responses/input_item_list_params.rbi diff --git a/rbi/lib/hanzoai/models/route_list_params.rbi b/rbi/hanzoai/models/route_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/route_list_params.rbi rename to rbi/hanzoai/models/route_list_params.rbi diff --git a/rbi/lib/hanzoai/models/setting_retrieve_params.rbi b/rbi/hanzoai/models/setting_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/setting_retrieve_params.rbi rename to rbi/hanzoai/models/setting_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/spend_calculate_spend_params.rbi b/rbi/hanzoai/models/spend_calculate_spend_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/spend_calculate_spend_params.rbi rename to rbi/hanzoai/models/spend_calculate_spend_params.rbi diff --git a/rbi/lib/hanzoai/models/spend_list_logs_params.rbi b/rbi/hanzoai/models/spend_list_logs_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/spend_list_logs_params.rbi rename to rbi/hanzoai/models/spend_list_logs_params.rbi diff --git a/rbi/lib/hanzoai/models/spend_list_logs_response.rbi b/rbi/hanzoai/models/spend_list_logs_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/spend_list_logs_response.rbi rename to rbi/hanzoai/models/spend_list_logs_response.rbi diff --git a/rbi/lib/hanzoai/models/spend_list_tags_params.rbi b/rbi/hanzoai/models/spend_list_tags_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/spend_list_tags_params.rbi rename to rbi/hanzoai/models/spend_list_tags_params.rbi diff --git a/rbi/lib/hanzoai/models/spend_list_tags_response.rbi b/rbi/hanzoai/models/spend_list_tags_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/spend_list_tags_response.rbi rename to rbi/hanzoai/models/spend_list_tags_response.rbi diff --git a/rbi/lib/hanzoai/models/team/callback_add_params.rbi b/rbi/hanzoai/models/team/callback_add_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team/callback_add_params.rbi rename to rbi/hanzoai/models/team/callback_add_params.rbi diff --git a/rbi/lib/hanzoai/models/team/callback_retrieve_params.rbi b/rbi/hanzoai/models/team/callback_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team/callback_retrieve_params.rbi rename to rbi/hanzoai/models/team/callback_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/team/model_add_params.rbi b/rbi/hanzoai/models/team/model_add_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team/model_add_params.rbi rename to rbi/hanzoai/models/team/model_add_params.rbi diff --git a/rbi/lib/hanzoai/models/team/model_remove_params.rbi b/rbi/hanzoai/models/team/model_remove_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team/model_remove_params.rbi rename to rbi/hanzoai/models/team/model_remove_params.rbi diff --git a/rbi/lib/hanzoai/models/team_add_member_params.rbi b/rbi/hanzoai/models/team_add_member_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_add_member_params.rbi rename to rbi/hanzoai/models/team_add_member_params.rbi diff --git a/rbi/lib/hanzoai/models/team_add_member_response.rbi b/rbi/hanzoai/models/team_add_member_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_add_member_response.rbi rename to rbi/hanzoai/models/team_add_member_response.rbi diff --git a/rbi/lib/hanzoai/models/team_block_params.rbi b/rbi/hanzoai/models/team_block_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_block_params.rbi rename to rbi/hanzoai/models/team_block_params.rbi diff --git a/rbi/lib/hanzoai/models/team_create_params.rbi b/rbi/hanzoai/models/team_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_create_params.rbi rename to rbi/hanzoai/models/team_create_params.rbi diff --git a/rbi/lib/hanzoai/models/team_create_response.rbi b/rbi/hanzoai/models/team_create_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_create_response.rbi rename to rbi/hanzoai/models/team_create_response.rbi diff --git a/rbi/lib/hanzoai/models/team_delete_params.rbi b/rbi/hanzoai/models/team_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_delete_params.rbi rename to rbi/hanzoai/models/team_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/team_disable_logging_params.rbi b/rbi/hanzoai/models/team_disable_logging_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_disable_logging_params.rbi rename to rbi/hanzoai/models/team_disable_logging_params.rbi diff --git a/rbi/lib/hanzoai/models/team_list_available_params.rbi b/rbi/hanzoai/models/team_list_available_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_list_available_params.rbi rename to rbi/hanzoai/models/team_list_available_params.rbi diff --git a/rbi/lib/hanzoai/models/team_list_params.rbi b/rbi/hanzoai/models/team_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_list_params.rbi rename to rbi/hanzoai/models/team_list_params.rbi diff --git a/rbi/lib/hanzoai/models/team_remove_member_params.rbi b/rbi/hanzoai/models/team_remove_member_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_remove_member_params.rbi rename to rbi/hanzoai/models/team_remove_member_params.rbi diff --git a/rbi/lib/hanzoai/models/team_retrieve_info_params.rbi b/rbi/hanzoai/models/team_retrieve_info_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_retrieve_info_params.rbi rename to rbi/hanzoai/models/team_retrieve_info_params.rbi diff --git a/rbi/lib/hanzoai/models/team_unblock_params.rbi b/rbi/hanzoai/models/team_unblock_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_unblock_params.rbi rename to rbi/hanzoai/models/team_unblock_params.rbi diff --git a/rbi/lib/hanzoai/models/team_update_member_params.rbi b/rbi/hanzoai/models/team_update_member_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_update_member_params.rbi rename to rbi/hanzoai/models/team_update_member_params.rbi diff --git a/rbi/lib/hanzoai/models/team_update_member_response.rbi b/rbi/hanzoai/models/team_update_member_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_update_member_response.rbi rename to rbi/hanzoai/models/team_update_member_response.rbi diff --git a/rbi/lib/hanzoai/models/team_update_params.rbi b/rbi/hanzoai/models/team_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/team_update_params.rbi rename to rbi/hanzoai/models/team_update_params.rbi diff --git a/rbi/lib/hanzoai/models/test_ping_params.rbi b/rbi/hanzoai/models/test_ping_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/test_ping_params.rbi rename to rbi/hanzoai/models/test_ping_params.rbi diff --git a/rbi/lib/hanzoai/models/thread_create_params.rbi b/rbi/hanzoai/models/thread_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/thread_create_params.rbi rename to rbi/hanzoai/models/thread_create_params.rbi diff --git a/rbi/lib/hanzoai/models/thread_retrieve_params.rbi b/rbi/hanzoai/models/thread_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/thread_retrieve_params.rbi rename to rbi/hanzoai/models/thread_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/threads/message_create_params.rbi b/rbi/hanzoai/models/threads/message_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/threads/message_create_params.rbi rename to rbi/hanzoai/models/threads/message_create_params.rbi diff --git a/rbi/lib/hanzoai/models/threads/message_list_params.rbi b/rbi/hanzoai/models/threads/message_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/threads/message_list_params.rbi rename to rbi/hanzoai/models/threads/message_list_params.rbi diff --git a/rbi/lib/hanzoai/models/threads/run_create_params.rbi b/rbi/hanzoai/models/threads/run_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/threads/run_create_params.rbi rename to rbi/hanzoai/models/threads/run_create_params.rbi diff --git a/rbi/lib/hanzoai/models/user_create_params.rbi b/rbi/hanzoai/models/user_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/user_create_params.rbi rename to rbi/hanzoai/models/user_create_params.rbi diff --git a/rbi/lib/hanzoai/models/user_create_response.rbi b/rbi/hanzoai/models/user_create_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/user_create_response.rbi rename to rbi/hanzoai/models/user_create_response.rbi diff --git a/rbi/lib/hanzoai/models/user_delete_params.rbi b/rbi/hanzoai/models/user_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/user_delete_params.rbi rename to rbi/hanzoai/models/user_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/user_list_params.rbi b/rbi/hanzoai/models/user_list_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/user_list_params.rbi rename to rbi/hanzoai/models/user_list_params.rbi diff --git a/rbi/lib/hanzoai/models/user_retrieve_info_params.rbi b/rbi/hanzoai/models/user_retrieve_info_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/user_retrieve_info_params.rbi rename to rbi/hanzoai/models/user_retrieve_info_params.rbi diff --git a/rbi/lib/hanzoai/models/user_update_params.rbi b/rbi/hanzoai/models/user_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/user_update_params.rbi rename to rbi/hanzoai/models/user_update_params.rbi diff --git a/rbi/lib/hanzoai/models/util_get_supported_openai_params_params.rbi b/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/util_get_supported_openai_params_params.rbi rename to rbi/hanzoai/models/util_get_supported_openai_params_params.rbi diff --git a/rbi/lib/hanzoai/models/util_token_counter_params.rbi b/rbi/hanzoai/models/util_token_counter_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/util_token_counter_params.rbi rename to rbi/hanzoai/models/util_token_counter_params.rbi diff --git a/rbi/lib/hanzoai/models/util_token_counter_response.rbi b/rbi/hanzoai/models/util_token_counter_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/util_token_counter_response.rbi rename to rbi/hanzoai/models/util_token_counter_response.rbi diff --git a/rbi/lib/hanzoai/models/util_transform_request_params.rbi b/rbi/hanzoai/models/util_transform_request_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/util_transform_request_params.rbi rename to rbi/hanzoai/models/util_transform_request_params.rbi diff --git a/rbi/lib/hanzoai/models/util_transform_request_response.rbi b/rbi/hanzoai/models/util_transform_request_response.rbi similarity index 100% rename from rbi/lib/hanzoai/models/util_transform_request_response.rbi rename to rbi/hanzoai/models/util_transform_request_response.rbi diff --git a/rbi/lib/hanzoai/models/vertex_ai_create_params.rbi b/rbi/hanzoai/models/vertex_ai_create_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/vertex_ai_create_params.rbi rename to rbi/hanzoai/models/vertex_ai_create_params.rbi diff --git a/rbi/lib/hanzoai/models/vertex_ai_delete_params.rbi b/rbi/hanzoai/models/vertex_ai_delete_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/vertex_ai_delete_params.rbi rename to rbi/hanzoai/models/vertex_ai_delete_params.rbi diff --git a/rbi/lib/hanzoai/models/vertex_ai_patch_params.rbi b/rbi/hanzoai/models/vertex_ai_patch_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/vertex_ai_patch_params.rbi rename to rbi/hanzoai/models/vertex_ai_patch_params.rbi diff --git a/rbi/lib/hanzoai/models/vertex_ai_retrieve_params.rbi b/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/vertex_ai_retrieve_params.rbi rename to rbi/hanzoai/models/vertex_ai_retrieve_params.rbi diff --git a/rbi/lib/hanzoai/models/vertex_ai_update_params.rbi b/rbi/hanzoai/models/vertex_ai_update_params.rbi similarity index 100% rename from rbi/lib/hanzoai/models/vertex_ai_update_params.rbi rename to rbi/hanzoai/models/vertex_ai_update_params.rbi diff --git a/rbi/lib/hanzoai/request_options.rbi b/rbi/hanzoai/request_options.rbi similarity index 100% rename from rbi/lib/hanzoai/request_options.rbi rename to rbi/hanzoai/request_options.rbi diff --git a/rbi/lib/hanzoai/resources/active.rbi b/rbi/hanzoai/resources/active.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/active.rbi rename to rbi/hanzoai/resources/active.rbi diff --git a/rbi/lib/hanzoai/resources/add.rbi b/rbi/hanzoai/resources/add.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/add.rbi rename to rbi/hanzoai/resources/add.rbi diff --git a/rbi/lib/hanzoai/resources/anthropic.rbi b/rbi/hanzoai/resources/anthropic.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/anthropic.rbi rename to rbi/hanzoai/resources/anthropic.rbi diff --git a/rbi/lib/hanzoai/resources/assemblyai.rbi b/rbi/hanzoai/resources/assemblyai.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/assemblyai.rbi rename to rbi/hanzoai/resources/assemblyai.rbi diff --git a/rbi/lib/hanzoai/resources/assistants.rbi b/rbi/hanzoai/resources/assistants.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/assistants.rbi rename to rbi/hanzoai/resources/assistants.rbi diff --git a/rbi/lib/hanzoai/resources/audio.rbi b/rbi/hanzoai/resources/audio.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/audio.rbi rename to rbi/hanzoai/resources/audio.rbi diff --git a/rbi/lib/hanzoai/resources/audio/speech.rbi b/rbi/hanzoai/resources/audio/speech.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/audio/speech.rbi rename to rbi/hanzoai/resources/audio/speech.rbi diff --git a/rbi/lib/hanzoai/resources/audio/transcriptions.rbi b/rbi/hanzoai/resources/audio/transcriptions.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/audio/transcriptions.rbi rename to rbi/hanzoai/resources/audio/transcriptions.rbi diff --git a/rbi/lib/hanzoai/resources/azure.rbi b/rbi/hanzoai/resources/azure.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/azure.rbi rename to rbi/hanzoai/resources/azure.rbi diff --git a/rbi/lib/hanzoai/resources/batches.rbi b/rbi/hanzoai/resources/batches.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/batches.rbi rename to rbi/hanzoai/resources/batches.rbi diff --git a/rbi/lib/hanzoai/resources/batches/cancel.rbi b/rbi/hanzoai/resources/batches/cancel.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/batches/cancel.rbi rename to rbi/hanzoai/resources/batches/cancel.rbi diff --git a/rbi/lib/hanzoai/resources/bedrock.rbi b/rbi/hanzoai/resources/bedrock.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/bedrock.rbi rename to rbi/hanzoai/resources/bedrock.rbi diff --git a/rbi/lib/hanzoai/resources/budget.rbi b/rbi/hanzoai/resources/budget.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/budget.rbi rename to rbi/hanzoai/resources/budget.rbi diff --git a/rbi/lib/hanzoai/resources/cache.rbi b/rbi/hanzoai/resources/cache.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/cache.rbi rename to rbi/hanzoai/resources/cache.rbi diff --git a/rbi/lib/hanzoai/resources/cache/redis.rbi b/rbi/hanzoai/resources/cache/redis.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/cache/redis.rbi rename to rbi/hanzoai/resources/cache/redis.rbi diff --git a/rbi/lib/hanzoai/resources/chat.rbi b/rbi/hanzoai/resources/chat.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/chat.rbi rename to rbi/hanzoai/resources/chat.rbi diff --git a/rbi/lib/hanzoai/resources/chat/completions.rbi b/rbi/hanzoai/resources/chat/completions.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/chat/completions.rbi rename to rbi/hanzoai/resources/chat/completions.rbi diff --git a/rbi/lib/hanzoai/resources/cohere.rbi b/rbi/hanzoai/resources/cohere.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/cohere.rbi rename to rbi/hanzoai/resources/cohere.rbi diff --git a/rbi/lib/hanzoai/resources/completions.rbi b/rbi/hanzoai/resources/completions.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/completions.rbi rename to rbi/hanzoai/resources/completions.rbi diff --git a/rbi/lib/hanzoai/resources/config.rbi b/rbi/hanzoai/resources/config.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/config.rbi rename to rbi/hanzoai/resources/config.rbi diff --git a/rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi b/rbi/hanzoai/resources/config/pass_through_endpoint.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/config/pass_through_endpoint.rbi rename to rbi/hanzoai/resources/config/pass_through_endpoint.rbi diff --git a/rbi/lib/hanzoai/resources/credentials.rbi b/rbi/hanzoai/resources/credentials.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/credentials.rbi rename to rbi/hanzoai/resources/credentials.rbi diff --git a/rbi/lib/hanzoai/resources/customer.rbi b/rbi/hanzoai/resources/customer.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/customer.rbi rename to rbi/hanzoai/resources/customer.rbi diff --git a/rbi/lib/hanzoai/resources/delete.rbi b/rbi/hanzoai/resources/delete.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/delete.rbi rename to rbi/hanzoai/resources/delete.rbi diff --git a/rbi/lib/hanzoai/resources/embeddings.rbi b/rbi/hanzoai/resources/embeddings.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/embeddings.rbi rename to rbi/hanzoai/resources/embeddings.rbi diff --git a/rbi/lib/hanzoai/resources/engines.rbi b/rbi/hanzoai/resources/engines.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/engines.rbi rename to rbi/hanzoai/resources/engines.rbi diff --git a/rbi/lib/hanzoai/resources/engines/chat.rbi b/rbi/hanzoai/resources/engines/chat.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/engines/chat.rbi rename to rbi/hanzoai/resources/engines/chat.rbi diff --git a/rbi/lib/hanzoai/resources/eu_assemblyai.rbi b/rbi/hanzoai/resources/eu_assemblyai.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/eu_assemblyai.rbi rename to rbi/hanzoai/resources/eu_assemblyai.rbi diff --git a/rbi/lib/hanzoai/resources/files.rbi b/rbi/hanzoai/resources/files.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/files.rbi rename to rbi/hanzoai/resources/files.rbi diff --git a/rbi/lib/hanzoai/resources/files/content.rbi b/rbi/hanzoai/resources/files/content.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/files/content.rbi rename to rbi/hanzoai/resources/files/content.rbi diff --git a/rbi/lib/hanzoai/resources/fine_tuning.rbi b/rbi/hanzoai/resources/fine_tuning.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/fine_tuning.rbi rename to rbi/hanzoai/resources/fine_tuning.rbi diff --git a/rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi b/rbi/hanzoai/resources/fine_tuning/jobs.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/fine_tuning/jobs.rbi rename to rbi/hanzoai/resources/fine_tuning/jobs.rbi diff --git a/rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi b/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/fine_tuning/jobs/cancel.rbi rename to rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi diff --git a/rbi/lib/hanzoai/resources/gemini.rbi b/rbi/hanzoai/resources/gemini.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/gemini.rbi rename to rbi/hanzoai/resources/gemini.rbi diff --git a/rbi/lib/hanzoai/resources/global.rbi b/rbi/hanzoai/resources/global.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/global.rbi rename to rbi/hanzoai/resources/global.rbi diff --git a/rbi/lib/hanzoai/resources/global/spend.rbi b/rbi/hanzoai/resources/global/spend.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/global/spend.rbi rename to rbi/hanzoai/resources/global/spend.rbi diff --git a/rbi/lib/hanzoai/resources/guardrails.rbi b/rbi/hanzoai/resources/guardrails.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/guardrails.rbi rename to rbi/hanzoai/resources/guardrails.rbi diff --git a/rbi/lib/hanzoai/resources/health.rbi b/rbi/hanzoai/resources/health.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/health.rbi rename to rbi/hanzoai/resources/health.rbi diff --git a/rbi/lib/hanzoai/resources/images.rbi b/rbi/hanzoai/resources/images.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/images.rbi rename to rbi/hanzoai/resources/images.rbi diff --git a/rbi/lib/hanzoai/resources/images/generations.rbi b/rbi/hanzoai/resources/images/generations.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/images/generations.rbi rename to rbi/hanzoai/resources/images/generations.rbi diff --git a/rbi/lib/hanzoai/resources/key.rbi b/rbi/hanzoai/resources/key.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/key.rbi rename to rbi/hanzoai/resources/key.rbi diff --git a/rbi/lib/hanzoai/resources/key/regenerate.rbi b/rbi/hanzoai/resources/key/regenerate.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/key/regenerate.rbi rename to rbi/hanzoai/resources/key/regenerate.rbi diff --git a/rbi/lib/hanzoai/resources/langfuse.rbi b/rbi/hanzoai/resources/langfuse.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/langfuse.rbi rename to rbi/hanzoai/resources/langfuse.rbi diff --git a/rbi/lib/hanzoai/resources/model.rbi b/rbi/hanzoai/resources/model.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/model.rbi rename to rbi/hanzoai/resources/model.rbi diff --git a/rbi/lib/hanzoai/resources/model/info.rbi b/rbi/hanzoai/resources/model/info.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/model/info.rbi rename to rbi/hanzoai/resources/model/info.rbi diff --git a/rbi/lib/hanzoai/resources/model/update.rbi b/rbi/hanzoai/resources/model/update.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/model/update.rbi rename to rbi/hanzoai/resources/model/update.rbi diff --git a/rbi/lib/hanzoai/resources/model_group.rbi b/rbi/hanzoai/resources/model_group.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/model_group.rbi rename to rbi/hanzoai/resources/model_group.rbi diff --git a/rbi/lib/hanzoai/resources/models.rbi b/rbi/hanzoai/resources/models.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/models.rbi rename to rbi/hanzoai/resources/models.rbi diff --git a/rbi/lib/hanzoai/resources/moderations.rbi b/rbi/hanzoai/resources/moderations.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/moderations.rbi rename to rbi/hanzoai/resources/moderations.rbi diff --git a/rbi/lib/hanzoai/resources/openai.rbi b/rbi/hanzoai/resources/openai.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/openai.rbi rename to rbi/hanzoai/resources/openai.rbi diff --git a/rbi/lib/hanzoai/resources/openai/deployments.rbi b/rbi/hanzoai/resources/openai/deployments.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/openai/deployments.rbi rename to rbi/hanzoai/resources/openai/deployments.rbi diff --git a/rbi/lib/hanzoai/resources/openai/deployments/chat.rbi b/rbi/hanzoai/resources/openai/deployments/chat.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/openai/deployments/chat.rbi rename to rbi/hanzoai/resources/openai/deployments/chat.rbi diff --git a/rbi/lib/hanzoai/resources/organization.rbi b/rbi/hanzoai/resources/organization.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/organization.rbi rename to rbi/hanzoai/resources/organization.rbi diff --git a/rbi/lib/hanzoai/resources/organization/info.rbi b/rbi/hanzoai/resources/organization/info.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/organization/info.rbi rename to rbi/hanzoai/resources/organization/info.rbi diff --git a/rbi/lib/hanzoai/resources/provider.rbi b/rbi/hanzoai/resources/provider.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/provider.rbi rename to rbi/hanzoai/resources/provider.rbi diff --git a/rbi/lib/hanzoai/resources/rerank.rbi b/rbi/hanzoai/resources/rerank.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/rerank.rbi rename to rbi/hanzoai/resources/rerank.rbi diff --git a/rbi/lib/hanzoai/resources/responses.rbi b/rbi/hanzoai/resources/responses.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/responses.rbi rename to rbi/hanzoai/resources/responses.rbi diff --git a/rbi/lib/hanzoai/resources/responses/input_items.rbi b/rbi/hanzoai/resources/responses/input_items.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/responses/input_items.rbi rename to rbi/hanzoai/resources/responses/input_items.rbi diff --git a/rbi/lib/hanzoai/resources/routes.rbi b/rbi/hanzoai/resources/routes.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/routes.rbi rename to rbi/hanzoai/resources/routes.rbi diff --git a/rbi/lib/hanzoai/resources/settings.rbi b/rbi/hanzoai/resources/settings.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/settings.rbi rename to rbi/hanzoai/resources/settings.rbi diff --git a/rbi/lib/hanzoai/resources/spend.rbi b/rbi/hanzoai/resources/spend.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/spend.rbi rename to rbi/hanzoai/resources/spend.rbi diff --git a/rbi/lib/hanzoai/resources/team.rbi b/rbi/hanzoai/resources/team.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/team.rbi rename to rbi/hanzoai/resources/team.rbi diff --git a/rbi/lib/hanzoai/resources/team/callback.rbi b/rbi/hanzoai/resources/team/callback.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/team/callback.rbi rename to rbi/hanzoai/resources/team/callback.rbi diff --git a/rbi/lib/hanzoai/resources/team/model.rbi b/rbi/hanzoai/resources/team/model.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/team/model.rbi rename to rbi/hanzoai/resources/team/model.rbi diff --git a/rbi/lib/hanzoai/resources/test.rbi b/rbi/hanzoai/resources/test.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/test.rbi rename to rbi/hanzoai/resources/test.rbi diff --git a/rbi/lib/hanzoai/resources/threads.rbi b/rbi/hanzoai/resources/threads.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/threads.rbi rename to rbi/hanzoai/resources/threads.rbi diff --git a/rbi/lib/hanzoai/resources/threads/messages.rbi b/rbi/hanzoai/resources/threads/messages.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/threads/messages.rbi rename to rbi/hanzoai/resources/threads/messages.rbi diff --git a/rbi/lib/hanzoai/resources/threads/runs.rbi b/rbi/hanzoai/resources/threads/runs.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/threads/runs.rbi rename to rbi/hanzoai/resources/threads/runs.rbi diff --git a/rbi/lib/hanzoai/resources/user.rbi b/rbi/hanzoai/resources/user.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/user.rbi rename to rbi/hanzoai/resources/user.rbi diff --git a/rbi/lib/hanzoai/resources/utils.rbi b/rbi/hanzoai/resources/utils.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/utils.rbi rename to rbi/hanzoai/resources/utils.rbi diff --git a/rbi/lib/hanzoai/resources/vertex_ai.rbi b/rbi/hanzoai/resources/vertex_ai.rbi similarity index 100% rename from rbi/lib/hanzoai/resources/vertex_ai.rbi rename to rbi/hanzoai/resources/vertex_ai.rbi diff --git a/rbi/lib/hanzoai/version.rbi b/rbi/hanzoai/version.rbi similarity index 100% rename from rbi/lib/hanzoai/version.rbi rename to rbi/hanzoai/version.rbi From 438f943d3d72093169231d5c8b823a66804cbeab Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 29 Apr 2025 03:32:18 +0000 Subject: [PATCH 055/139] chore: more accurate type annotations and aliases --- lib/hanzoai/errors.rb | 18 ++++++++-------- lib/hanzoai/internal/type/boolean.rb | 21 +++++++++---------- lib/hanzoai/internal/type/enum.rb | 21 +++++++++---------- lib/hanzoai/internal/type/unknown.rb | 21 +++++++++---------- .../models/global/spend_list_tags_response.rb | 2 ++ .../global/spend_retrieve_report_response.rb | 2 ++ lib/hanzoai/models/guardrail_list_response.rb | 1 + .../models/organization_add_member_params.rb | 1 + .../models/spend_list_logs_response.rb | 2 ++ .../models/spend_list_tags_response.rb | 2 ++ lib/hanzoai/models/team_add_member_params.rb | 1 + lib/hanzoai/request_options.rb | 9 ++++---- .../global/spend_list_tags_response.rbs | 8 ++----- .../global/spend_retrieve_report_response.rbs | 8 ++----- .../models/guardrail_list_response.rbs | 4 +--- .../models/organization_add_member_params.rbs | 4 +--- .../models/spend_list_logs_response.rbs | 8 ++----- .../models/spend_list_tags_response.rbs | 8 ++----- sig/hanzoai/models/team_add_member_params.rbs | 4 +--- test/hanzoai/file_part_test.rb | 1 + 20 files changed, 66 insertions(+), 80 deletions(-) diff --git a/lib/hanzoai/errors.rb b/lib/hanzoai/errors.rb index 7ea0ed93..56405250 100644 --- a/lib/hanzoai/errors.rb +++ b/lib/hanzoai/errors.rb @@ -3,9 +3,9 @@ module Hanzoai module Errors class Error < StandardError - # @!parse - # # @return [StandardError, nil] - # attr_accessor :cause + # @!attribute cause + # + # @return [StandardError, nil] end class ConversionError < Hanzoai::Errors::Error @@ -40,13 +40,13 @@ def initialize(url:, status: nil, body: nil, request: nil, response: nil, messag end class APIConnectionError < Hanzoai::Errors::APIError - # @!parse - # # @return [nil] - # attr_accessor :status + # @!attribute status + # + # @return [nil] - # @!parse - # # @return [nil] - # attr_accessor :body + # @!attribute body + # + # @return [nil] # @api private # diff --git a/lib/hanzoai/internal/type/boolean.rb b/lib/hanzoai/internal/type/boolean.rb index a879823d..b5acc3d6 100644 --- a/lib/hanzoai/internal/type/boolean.rb +++ b/lib/hanzoai/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/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 7822030b..edf6a937 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -75,17 +75,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/hanzoai/internal/type/unknown.rb b/lib/hanzoai/internal/type/unknown.rb index bed19c6e..74a2fc92 100644 --- a/lib/hanzoai/internal/type/unknown.rb +++ b/lib/hanzoai/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/hanzoai/models/global/spend_list_tags_response.rb b/lib/hanzoai/models/global/spend_list_tags_response.rb index 9646e7cc..873eb3b1 100644 --- a/lib/hanzoai/models/global/spend_list_tags_response.rb +++ b/lib/hanzoai/models/global/spend_list_tags_response.rb @@ -151,6 +151,7 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -167,6 +168,7 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end diff --git a/lib/hanzoai/models/global/spend_retrieve_report_response.rb b/lib/hanzoai/models/global/spend_retrieve_report_response.rb index baa90960..3c45fdab 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_response.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_response.rb @@ -155,6 +155,7 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -171,6 +172,7 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index 0199bef4..97191443 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -72,6 +72,7 @@ module Mode # @!method self.variants # @return [Array(String, Array)] + # @type [Hanzoai::Internal::Type::Converter] StringArray = Hanzoai::Internal::Type::ArrayOf[String] end end diff --git a/lib/hanzoai/models/organization_add_member_params.rb b/lib/hanzoai/models/organization_add_member_params.rb index a91e76fe..7b8a07b0 100644 --- a/lib/hanzoai/models/organization_add_member_params.rb +++ b/lib/hanzoai/models/organization_add_member_params.rb @@ -38,6 +38,7 @@ module Member # @!method self.variants # @return [Array(Array, Hanzoai::Models::OrgMember)] + # @type [Hanzoai::Internal::Type::Converter] OrgMemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::OrgMember }] end end diff --git a/lib/hanzoai/models/spend_list_logs_response.rb b/lib/hanzoai/models/spend_list_logs_response.rb index cdf82614..eba4e0c6 100644 --- a/lib/hanzoai/models/spend_list_logs_response.rb +++ b/lib/hanzoai/models/spend_list_logs_response.rb @@ -150,6 +150,7 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -166,6 +167,7 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end diff --git a/lib/hanzoai/models/spend_list_tags_response.rb b/lib/hanzoai/models/spend_list_tags_response.rb index 915b6fc9..2d98081c 100644 --- a/lib/hanzoai/models/spend_list_tags_response.rb +++ b/lib/hanzoai/models/spend_list_tags_response.rb @@ -150,6 +150,7 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -166,6 +167,7 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index 1a2b0184..c0d21d2f 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -38,6 +38,7 @@ module Member # @!method self.variants # @return [Array(Array, Hanzoai::Models::Member)] + # @type [Hanzoai::Internal::Type::Converter] MemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::Member }] end end diff --git a/lib/hanzoai/request_options.rb b/lib/hanzoai/request_options.rb index e617fb99..a28b6fa7 100644 --- a/lib/hanzoai/request_options.rb +++ b/lib/hanzoai/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/hanzoai/models/global/spend_list_tags_response.rbs b/sig/hanzoai/models/global/spend_list_tags_response.rbs index e92952c0..8b2da9a2 100644 --- a/sig/hanzoai/models/global/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/global/spend_list_tags_response.rbs @@ -106,9 +106,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type response = String | ::Array[top] | top @@ -118,9 +116,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs index d0444fb0..045ebf3a 100644 --- a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs +++ b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs @@ -106,9 +106,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type response = String | ::Array[top] | top @@ -118,9 +116,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/guardrail_list_response.rbs b/sig/hanzoai/models/guardrail_list_response.rbs index ba7c91a2..85cabb9d 100644 --- a/sig/hanzoai/models/guardrail_list_response.rbs +++ b/sig/hanzoai/models/guardrail_list_response.rbs @@ -65,9 +65,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[String]] - type string_array = ::Array[String] - - StringArray: string_array + StringArray: Hanzoai::Internal::Type::Converter end end end diff --git a/sig/hanzoai/models/organization_add_member_params.rbs b/sig/hanzoai/models/organization_add_member_params.rbs index add1d92d..6cafc982 100644 --- a/sig/hanzoai/models/organization_add_member_params.rbs +++ b/sig/hanzoai/models/organization_add_member_params.rbs @@ -35,9 +35,7 @@ module Hanzoai def self?.variants: -> [::Array[Hanzoai::Models::OrgMember], Hanzoai::Models::OrgMember] - type org_member_array = ::Array[Hanzoai::Models::OrgMember] - - OrgMemberArray: org_member_array + OrgMemberArray: Hanzoai::Internal::Type::Converter end end end diff --git a/sig/hanzoai/models/spend_list_logs_response.rbs b/sig/hanzoai/models/spend_list_logs_response.rbs index 675fcc7d..1778e2c3 100644 --- a/sig/hanzoai/models/spend_list_logs_response.rbs +++ b/sig/hanzoai/models/spend_list_logs_response.rbs @@ -105,9 +105,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type response = String | ::Array[top] | top @@ -117,9 +115,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/spend_list_tags_response.rbs b/sig/hanzoai/models/spend_list_tags_response.rbs index d723c9df..15cfe325 100644 --- a/sig/hanzoai/models/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/spend_list_tags_response.rbs @@ -105,9 +105,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type response = String | ::Array[top] | top @@ -117,9 +115,7 @@ module Hanzoai def self?.variants: -> [String, ::Array[top], top] - type union_member1_array = ::Array[top] - - UnionMember1Array: union_member1_array + UnionMember1Array: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/team_add_member_params.rbs b/sig/hanzoai/models/team_add_member_params.rbs index 724cc2d3..489c3e0b 100644 --- a/sig/hanzoai/models/team_add_member_params.rbs +++ b/sig/hanzoai/models/team_add_member_params.rbs @@ -34,9 +34,7 @@ module Hanzoai def self?.variants: -> [::Array[Hanzoai::Models::Member], Hanzoai::Models::Member] - type member_array = ::Array[Hanzoai::Models::Member] - - MemberArray: member_array + MemberArray: Hanzoai::Internal::Type::Converter end end end diff --git a/test/hanzoai/file_part_test.rb b/test/hanzoai/file_part_test.rb index 47ef0bbe..a25129c8 100644 --- a/test/hanzoai/file_part_test.rb +++ b/test/hanzoai/file_part_test.rb @@ -8,5 +8,6 @@ def test_to_json filepart = Hanzoai::FilePart.new(StringIO.new(text)) assert_equal(text.to_json, filepart.to_json) + assert_equal(text.to_yaml, filepart.to_yaml) end end From c7253ab85bb4a3a5dd015d7d05b5a5f1bbad4b78 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 29 Apr 2025 03:33:37 +0000 Subject: [PATCH 056/139] chore(internal): annotate request options with type aliases in sorbet --- lib/hanzoai/models/customer_list_response.rb | 1 + .../models/global/spend_list_tags_response.rb | 1 + .../global/spend_retrieve_report_response.rb | 1 + .../models/organization_delete_response.rb | 1 + .../models/organization_list_response.rb | 1 + .../models/spend_list_logs_response.rb | 1 + .../models/spend_list_tags_response.rb | 1 + rbi/hanzoai/client.rbi | 5 +- .../internal/transport/base_client.rbi | 4 +- .../internal/type/request_parameters.rbi | 2 +- rbi/hanzoai/request_options.rbi | 2 + rbi/hanzoai/resources/active.rbi | 5 +- rbi/hanzoai/resources/add.rbi | 13 +---- rbi/hanzoai/resources/anthropic.rbi | 40 ++----------- rbi/hanzoai/resources/assemblyai.rbi | 40 ++----------- rbi/hanzoai/resources/assistants.rbi | 18 +----- rbi/hanzoai/resources/audio/speech.rbi | 5 +- .../resources/audio/transcriptions.rbi | 2 +- rbi/hanzoai/resources/azure.rbi | 40 ++----------- rbi/hanzoai/resources/batches.rbi | 40 +++---------- rbi/hanzoai/resources/batches/cancel.rbi | 6 +- rbi/hanzoai/resources/bedrock.rbi | 40 ++----------- rbi/hanzoai/resources/budget.rbi | 38 ++---------- rbi/hanzoai/resources/cache.rbi | 15 +---- rbi/hanzoai/resources/cache/redis.rbi | 5 +- rbi/hanzoai/resources/chat/completions.rbi | 8 +-- rbi/hanzoai/resources/cohere.rbi | 40 ++----------- rbi/hanzoai/resources/completions.rbi | 8 +-- .../config/pass_through_endpoint.rbi | 25 ++------ rbi/hanzoai/resources/credentials.rbi | 15 +---- rbi/hanzoai/resources/customer.rbi | 38 +++--------- rbi/hanzoai/resources/delete.rbi | 13 +---- rbi/hanzoai/resources/embeddings.rbi | 8 +-- rbi/hanzoai/resources/engines.rbi | 16 +---- rbi/hanzoai/resources/engines/chat.rbi | 8 +-- rbi/hanzoai/resources/eu_assemblyai.rbi | 40 ++----------- rbi/hanzoai/resources/files.rbi | 22 ++----- rbi/hanzoai/resources/files/content.rbi | 7 +-- rbi/hanzoai/resources/fine_tuning/jobs.rbi | 6 +- .../resources/fine_tuning/jobs/cancel.rbi | 6 +- rbi/hanzoai/resources/gemini.rbi | 40 ++----------- rbi/hanzoai/resources/global/spend.rbi | 9 +-- rbi/hanzoai/resources/guardrails.rbi | 5 +- rbi/hanzoai/resources/health.rbi | 25 ++------ rbi/hanzoai/resources/images/generations.rbi | 5 +- rbi/hanzoai/resources/key.rbi | 36 +++--------- rbi/hanzoai/resources/langfuse.rbi | 40 ++----------- rbi/hanzoai/resources/model.rbi | 15 +---- rbi/hanzoai/resources/model/info.rbi | 6 +- rbi/hanzoai/resources/model/update.rbi | 4 +- rbi/hanzoai/resources/model_group.rbi | 6 +- rbi/hanzoai/resources/models.rbi | 2 +- rbi/hanzoai/resources/moderations.rbi | 5 +- rbi/hanzoai/resources/openai.rbi | 40 ++----------- rbi/hanzoai/resources/openai/deployments.rbi | 16 +---- .../resources/openai/deployments/chat.rbi | 8 +-- rbi/hanzoai/resources/organization.rbi | 17 +++--- rbi/hanzoai/resources/organization/info.rbi | 11 +--- rbi/hanzoai/resources/provider.rbi | 5 +- rbi/hanzoai/resources/rerank.rbi | 15 +---- rbi/hanzoai/resources/responses.rbi | 21 +------ .../resources/responses/input_items.rbi | 8 +-- rbi/hanzoai/resources/routes.rbi | 5 +- rbi/hanzoai/resources/settings.rbi | 5 +- rbi/hanzoai/resources/spend.rbi | 6 +- rbi/hanzoai/resources/team.rbi | 58 ++++--------------- rbi/hanzoai/resources/team/callback.rbi | 10 +--- rbi/hanzoai/resources/team/model.rbi | 12 +--- rbi/hanzoai/resources/test.rbi | 5 +- rbi/hanzoai/resources/threads.rbi | 13 +---- rbi/hanzoai/resources/threads/messages.rbi | 16 +---- rbi/hanzoai/resources/threads/runs.rbi | 8 +-- rbi/hanzoai/resources/user.rbi | 20 ++----- rbi/hanzoai/resources/utils.rbi | 12 +--- rbi/hanzoai/resources/vertex_ai.rbi | 40 ++----------- sig/hanzoai/models/customer_list_response.rbs | 2 +- .../global/spend_list_tags_response.rbs | 2 +- .../global/spend_retrieve_report_response.rbs | 2 +- .../models/organization_delete_response.rbs | 2 +- .../models/organization_list_response.rbs | 2 +- .../models/spend_list_logs_response.rbs | 2 +- .../models/spend_list_tags_response.rbs | 2 +- 82 files changed, 207 insertions(+), 943 deletions(-) diff --git a/lib/hanzoai/models/customer_list_response.rb b/lib/hanzoai/models/customer_list_response.rb index ff5dd1a2..29cb273a 100644 --- a/lib/hanzoai/models/customer_list_response.rb +++ b/lib/hanzoai/models/customer_list_response.rb @@ -117,6 +117,7 @@ class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel end end + # @type [Hanzoai::Internal::Type::Converter] CustomerListResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::CustomerListResponseItem }] end end diff --git a/lib/hanzoai/models/global/spend_list_tags_response.rb b/lib/hanzoai/models/global/spend_list_tags_response.rb index 873eb3b1..22268d10 100644 --- a/lib/hanzoai/models/global/spend_list_tags_response.rb +++ b/lib/hanzoai/models/global/spend_list_tags_response.rb @@ -185,6 +185,7 @@ module StartTime end end + # @type [Hanzoai::Internal::Type::Converter] SpendListTagsResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::Global::SpendListTagsResponseItem }] end diff --git a/lib/hanzoai/models/global/spend_retrieve_report_response.rb b/lib/hanzoai/models/global/spend_retrieve_report_response.rb index 3c45fdab..8a1c3b50 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_response.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_response.rb @@ -189,6 +189,7 @@ module StartTime end end + # @type [Hanzoai::Internal::Type::Converter] SpendRetrieveReportResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::Global::SpendRetrieveReportResponseItem }] end diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index ea74ffca..42332182 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -430,6 +430,7 @@ module ModelAliases end end + # @type [Hanzoai::Internal::Type::Converter] OrganizationDeleteResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::OrganizationDeleteResponseItem }] end diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index 40d17696..cfc79156 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -430,6 +430,7 @@ module ModelAliases end end + # @type [Hanzoai::Internal::Type::Converter] OrganizationListResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::OrganizationListResponseItem }] end diff --git a/lib/hanzoai/models/spend_list_logs_response.rb b/lib/hanzoai/models/spend_list_logs_response.rb index eba4e0c6..d5ae911a 100644 --- a/lib/hanzoai/models/spend_list_logs_response.rb +++ b/lib/hanzoai/models/spend_list_logs_response.rb @@ -184,6 +184,7 @@ module StartTime end end + # @type [Hanzoai::Internal::Type::Converter] SpendListLogsResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::SpendListLogsResponseItem }] end diff --git a/lib/hanzoai/models/spend_list_tags_response.rb b/lib/hanzoai/models/spend_list_tags_response.rb index 2d98081c..6d84d64f 100644 --- a/lib/hanzoai/models/spend_list_tags_response.rb +++ b/lib/hanzoai/models/spend_list_tags_response.rb @@ -184,6 +184,7 @@ module StartTime end end + # @type [Hanzoai::Internal::Type::Converter] SpendListTagsResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::SpendListTagsResponseItem }] end diff --git a/rbi/hanzoai/client.rbi b/rbi/hanzoai/client.rbi index 313934a2..b4bb18c8 100644 --- a/rbi/hanzoai/client.rbi +++ b/rbi/hanzoai/client.rbi @@ -165,10 +165,7 @@ module Hanzoai attr_reader :budget # Home - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def get_home(request_options: {}); end # @api private diff --git a/rbi/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi index bec66f19..fde3ea67 100644 --- a/rbi/hanzoai/internal/transport/base_client.rbi +++ b/rbi/hanzoai/internal/transport/base_client.rbi @@ -35,7 +35,7 @@ module Hanzoai page: T.nilable(T::Class[Hanzoai::Internal::Type::BasePage[Hanzoai::Internal::Type::BaseModel]]), stream: T.nilable(T::Class[T.anything]), model: T.nilable(Hanzoai::Internal::Type::Converter::Input), - options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + options: T.nilable(Hanzoai::RequestOpts) } end @@ -188,7 +188,7 @@ module Hanzoai page: T.nilable(T::Class[Hanzoai::Internal::Type::BasePage[Hanzoai::Internal::Type::BaseModel]]), stream: T.nilable(T::Class[T.anything]), model: T.nilable(Hanzoai::Internal::Type::Converter::Input), - options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + options: T.nilable(Hanzoai::RequestOpts) ) .returns(T.anything) end diff --git a/rbi/hanzoai/internal/type/request_parameters.rbi b/rbi/hanzoai/internal/type/request_parameters.rbi index 43ea0d51..0a271958 100644 --- a/rbi/hanzoai/internal/type/request_parameters.rbi +++ b/rbi/hanzoai/internal/type/request_parameters.rbi @@ -6,7 +6,7 @@ module Hanzoai # @api private module RequestParameters # Options to specify HTTP behaviour for this request. - sig { returns(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) } + sig { returns(Hanzoai::RequestOpts) } attr_accessor :request_options # @api private diff --git a/rbi/hanzoai/request_options.rbi b/rbi/hanzoai/request_options.rbi index 81362d04..994c6323 100644 --- a/rbi/hanzoai/request_options.rbi +++ b/rbi/hanzoai/request_options.rbi @@ -1,6 +1,8 @@ # typed: strong module Hanzoai + RequestOpts = T.type_alias { T.any(Hanzoai::RequestOptions, Hanzoai::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/hanzoai/resources/active.rbi b/rbi/hanzoai/resources/active.rbi index 25077de9..4e72e4ad 100644 --- a/rbi/hanzoai/resources/active.rbi +++ b/rbi/hanzoai/resources/active.rbi @@ -26,10 +26,7 @@ module Hanzoai # "llm.request_timeout": llm.request_timeout, # } # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def list_callbacks(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/add.rbi b/rbi/hanzoai/resources/add.rbi index 24e4c294..cdad43e1 100644 --- a/rbi/hanzoai/resources/add.rbi +++ b/rbi/hanzoai/resources/add.rbi @@ -4,18 +4,7 @@ module Hanzoai module Resources class Add # Add Allowed Ip - sig do - params( - ip: String, - request_options: T.nilable( - T.any( - Hanzoai::RequestOptions, - Hanzoai::Internal::AnyHash - ) - ) - ) - .returns(T.anything) - end + sig { params(ip: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def add_allowed_ip(ip:, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/anthropic.rbi b/rbi/hanzoai/resources/anthropic.rbi index 7de30280..f42e7417 100644 --- a/rbi/hanzoai/resources/anthropic.rbi +++ b/rbi/hanzoai/resources/anthropic.rbi @@ -4,53 +4,23 @@ module Hanzoai module Resources class Anthropic # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def modify(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/assemblyai.rbi b/rbi/hanzoai/resources/assemblyai.rbi index 79687779..c081f7dc 100644 --- a/rbi/hanzoai/resources/assemblyai.rbi +++ b/rbi/hanzoai/resources/assemblyai.rbi @@ -4,53 +4,23 @@ module Hanzoai module Resources class Assemblyai # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/assistants.rbi b/rbi/hanzoai/resources/assistants.rbi index 69b61acc..4bf7eab9 100644 --- a/rbi/hanzoai/resources/assistants.rbi +++ b/rbi/hanzoai/resources/assistants.rbi @@ -7,33 +7,21 @@ module Hanzoai # # API Reference docs - # https://platform.openai.com/docs/api-reference/assistants/createAssistant - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(request_options: {}); end # Returns a list of assistants. # # API Reference docs - # https://platform.openai.com/docs/api-reference/assistants/listAssistants - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def list(request_options: {}); end # Delete assistant # # API Reference docs - # https://platform.openai.com/docs/api-reference/assistants/createAssistant - sig do - params( - assistant_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(assistant_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(assistant_id, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/audio/speech.rbi b/rbi/hanzoai/resources/audio/speech.rbi index cccbfbd2..264d2d21 100644 --- a/rbi/hanzoai/resources/audio/speech.rbi +++ b/rbi/hanzoai/resources/audio/speech.rbi @@ -7,10 +7,7 @@ module Hanzoai # Same params as: # # https://platform.openai.com/docs/api-reference/audio/createSpeech - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/audio/transcriptions.rbi b/rbi/hanzoai/resources/audio/transcriptions.rbi index d823c005..a6730f87 100644 --- a/rbi/hanzoai/resources/audio/transcriptions.rbi +++ b/rbi/hanzoai/resources/audio/transcriptions.rbi @@ -10,7 +10,7 @@ module Hanzoai sig do params( file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end diff --git a/rbi/hanzoai/resources/azure.rbi b/rbi/hanzoai/resources/azure.rbi index bd14f005..fb9de889 100644 --- a/rbi/hanzoai/resources/azure.rbi +++ b/rbi/hanzoai/resources/azure.rbi @@ -6,61 +6,31 @@ module Hanzoai # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def call(endpoint, request_options: {}); end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/batches.rbi b/rbi/hanzoai/resources/batches.rbi index f2921cc7..b15a3060 100644 --- a/rbi/hanzoai/resources/batches.rbi +++ b/rbi/hanzoai/resources/batches.rbi @@ -19,13 +19,7 @@ module Hanzoai # "completion_window": "24h" # }' # ``` - sig do - params( - provider: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(provider: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(provider: nil, request_options: {}); end # Retrieves a batch. This is the equivalent of GET @@ -38,11 +32,7 @@ module Hanzoai # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" # ``` sig do - params( - batch_id: String, - provider: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(batch_id: String, provider: T.nilable(String), request_options: Hanzoai::RequestOpts) .returns(T.anything) end def retrieve( @@ -64,7 +54,7 @@ module Hanzoai after: T.nilable(String), limit: T.nilable(Integer), provider: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -83,12 +73,7 @@ module Hanzoai # # ``` sig do - params( - batch_id: String, - provider: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(batch_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) end def cancel_with_provider(batch_id, provider:, request_options: {}); end @@ -105,13 +90,7 @@ module Hanzoai # "completion_window": "24h" # }' # ``` - sig do - params( - provider: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create_with_provider(provider, request_options: {}); end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports @@ -127,7 +106,7 @@ module Hanzoai provider: String, after: T.nilable(String), limit: T.nilable(Integer), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -143,12 +122,7 @@ module Hanzoai # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" # ``` sig do - params( - batch_id: String, - provider: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(batch_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) end def retrieve_with_provider( # The ID of the batch to retrieve diff --git a/rbi/hanzoai/resources/batches/cancel.rbi b/rbi/hanzoai/resources/batches/cancel.rbi index 59d8ec93..5f83a75a 100644 --- a/rbi/hanzoai/resources/batches/cancel.rbi +++ b/rbi/hanzoai/resources/batches/cancel.rbi @@ -17,11 +17,7 @@ module Hanzoai # # ``` sig do - params( - batch_id: String, - provider: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(batch_id: String, provider: T.nilable(String), request_options: Hanzoai::RequestOpts) .returns(T.anything) end def cancel(batch_id, provider: nil, request_options: {}); end diff --git a/rbi/hanzoai/resources/bedrock.rbi b/rbi/hanzoai/resources/bedrock.rbi index c32f28ed..c4c6e31b 100644 --- a/rbi/hanzoai/resources/bedrock.rbi +++ b/rbi/hanzoai/resources/bedrock.rbi @@ -4,53 +4,23 @@ module Hanzoai module Resources class Bedrock # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/budget.rbi b/rbi/hanzoai/resources/budget.rbi index 63ac1df2..6e4aff3b 100644 --- a/rbi/hanzoai/resources/budget.rbi +++ b/rbi/hanzoai/resources/budget.rbi @@ -29,7 +29,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -79,7 +79,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -104,10 +104,7 @@ module Hanzoai request_options: {} ); end # List all the created budgets in proxy db. Used on Admin UI. - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def list(request_options: {}); end # Delete budget @@ -115,18 +112,7 @@ module Hanzoai # Parameters: # # - id: str - The budget id to delete - sig do - params( - id: String, - request_options: T.nilable( - T.any( - Hanzoai::RequestOptions, - Hanzoai::Internal::AnyHash - ) - ) - ) - .returns(T.anything) - end + sig { params(id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(id:, request_options: {}); end # Get the budget id specific information @@ -134,13 +120,7 @@ module Hanzoai # Parameters: # # - budgets: List[str] - The list of budget ids to get information for - sig do - params( - budgets: T::Array[String], - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(budgets: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } def info(budgets:, request_options: {}); end # Get list of configurable params + current value for a budget item + description @@ -151,13 +131,7 @@ module Hanzoai # Query Parameters: # # - budget_id: str - The budget id to get information for - sig do - params( - budget_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(budget_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def settings(budget_id:, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/cache.rbi b/rbi/hanzoai/resources/cache.rbi index c243418a..801a3c47 100644 --- a/rbi/hanzoai/resources/cache.rbi +++ b/rbi/hanzoai/resources/cache.rbi @@ -17,10 +17,7 @@ module Hanzoai # ```shell # curl -X POST "http://0.0.0.0:4000/cache/delete" -H "Authorization: Bearer sk-1234" -d '{"keys": ["key1", "key2"]}' # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(request_options: {}); end # A function to flush all items from the cache. (All items will be deleted from @@ -33,17 +30,11 @@ module Hanzoai # ``` # curl -X POST http://0.0.0.0:4000/cache/flushall -H "Authorization: Bearer sk-1234" # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def flush_all(request_options: {}); end # Endpoint for checking if cache can be pinged - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(Hanzoai::Models::CachePingResponse) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::CachePingResponse) } def ping(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/cache/redis.rbi b/rbi/hanzoai/resources/cache/redis.rbi index 9b5c0c1a..cd22643b 100644 --- a/rbi/hanzoai/resources/cache/redis.rbi +++ b/rbi/hanzoai/resources/cache/redis.rbi @@ -5,10 +5,7 @@ module Hanzoai class Cache class Redis # Endpoint for getting /redis/info - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve_info(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/chat/completions.rbi b/rbi/hanzoai/resources/chat/completions.rbi index 6a7b4573..18e79282 100644 --- a/rbi/hanzoai/resources/chat/completions.rbi +++ b/rbi/hanzoai/resources/chat/completions.rbi @@ -21,13 +21,7 @@ module Hanzoai # ] # }' # ``` - sig do - params( - model: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(model: nil, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/cohere.rbi b/rbi/hanzoai/resources/cohere.rbi index cd9a4206..e3113013 100644 --- a/rbi/hanzoai/resources/cohere.rbi +++ b/rbi/hanzoai/resources/cohere.rbi @@ -4,53 +4,23 @@ module Hanzoai module Resources class Cohere # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def modify(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/completions.rbi b/rbi/hanzoai/resources/completions.rbi index 09d76be3..eede2038 100644 --- a/rbi/hanzoai/resources/completions.rbi +++ b/rbi/hanzoai/resources/completions.rbi @@ -17,13 +17,7 @@ module Hanzoai # "temperature": 0.7 # }' # ``` - sig do - params( - model: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(model: nil, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/config/pass_through_endpoint.rbi b/rbi/hanzoai/resources/config/pass_through_endpoint.rbi index f3e576b1..3f59de13 100644 --- a/rbi/hanzoai/resources/config/pass_through_endpoint.rbi +++ b/rbi/hanzoai/resources/config/pass_through_endpoint.rbi @@ -6,12 +6,7 @@ module Hanzoai class PassThroughEndpoint # Create new pass-through endpoint sig do - params( - headers: T.anything, - path: String, - target: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(headers: T.anything, path: String, target: String, request_options: Hanzoai::RequestOpts) .returns(T.anything) end def create( @@ -25,23 +20,14 @@ module Hanzoai request_options: {} ); end # Update a pass-through endpoint - sig do - params( - endpoint_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint_id, request_options: {}); end # GET configured pass through endpoint. # # If no endpoint_id given, return all configured endpoints. sig do - params( - endpoint_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(endpoint_id: T.nilable(String), request_options: Hanzoai::RequestOpts) .returns(Hanzoai::Models::Config::PassThroughEndpointResponse) end def list(endpoint_id: nil, request_options: {}); end @@ -50,10 +36,7 @@ module Hanzoai # # Returns - the deleted endpoint sig do - params( - endpoint_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(endpoint_id: String, request_options: Hanzoai::RequestOpts) .returns(Hanzoai::Models::Config::PassThroughEndpointResponse) end def delete(endpoint_id:, request_options: {}); end diff --git a/rbi/hanzoai/resources/credentials.rbi b/rbi/hanzoai/resources/credentials.rbi index eb41da9f..2b62b937 100644 --- a/rbi/hanzoai/resources/credentials.rbi +++ b/rbi/hanzoai/resources/credentials.rbi @@ -11,7 +11,7 @@ module Hanzoai credential_name: String, credential_values: T.nilable(T.anything), model_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -25,20 +25,11 @@ module Hanzoai end # [BETA] endpoint. This might change unexpectedly. - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def list(request_options: {}); end # [BETA] endpoint. This might change unexpectedly. - sig do - params( - credential_name: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(credential_name: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(credential_name, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/customer.rbi b/rbi/hanzoai/resources/customer.rbi index cc259f11..7f4e1134 100644 --- a/rbi/hanzoai/resources/customer.rbi +++ b/rbi/hanzoai/resources/customer.rbi @@ -71,7 +71,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -132,7 +132,7 @@ module Hanzoai budget_id: T.nilable(String), default_model: T.nilable(String), max_budget: T.nilable(Float), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -153,10 +153,7 @@ module Hanzoai # ``` # curl --location --request GET 'http://0.0.0.0:4000/customer/list' --header 'Authorization: Bearer sk-1234' # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T::Array[Hanzoai::Models::CustomerListResponseItem]) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T::Array[Hanzoai::Models::CustomerListResponseItem]) } def list(request_options: {}); end # Delete multiple end-users. @@ -174,13 +171,7 @@ module Hanzoai # # See below for all params # ``` - sig do - params( - user_ids: T::Array[String], - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(user_ids: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(user_ids:, request_options: {}); end # [BETA] Reject calls with this end-user id @@ -199,13 +190,7 @@ module Hanzoai # "user_ids": [, ...] # }' # ``` - sig do - params( - user_ids: T::Array[String], - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(user_ids: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } def block(user_ids:, request_options: {}); end # Get information about an end-user. An `end_user` is a customer (external user) @@ -221,10 +206,7 @@ module Hanzoai # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' # ``` sig do - params( - end_user_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(end_user_id: String, request_options: Hanzoai::RequestOpts) .returns(Hanzoai::Models::CustomerRetrieveInfoResponse) end def retrieve_info( @@ -243,13 +225,7 @@ module Hanzoai # "user_ids": [, ...] # }' # ``` - sig do - params( - user_ids: T::Array[String], - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(user_ids: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } def unblock(user_ids:, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/delete.rbi b/rbi/hanzoai/resources/delete.rbi index 1dae07a5..461fd4a0 100644 --- a/rbi/hanzoai/resources/delete.rbi +++ b/rbi/hanzoai/resources/delete.rbi @@ -4,18 +4,7 @@ module Hanzoai module Resources class Delete # Delete Allowed Ip - sig do - params( - ip: String, - request_options: T.nilable( - T.any( - Hanzoai::RequestOptions, - Hanzoai::Internal::AnyHash - ) - ) - ) - .returns(T.anything) - end + sig { params(ip: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create_allowed_ip(ip:, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/embeddings.rbi b/rbi/hanzoai/resources/embeddings.rbi index 839ccc59..6caf070b 100644 --- a/rbi/hanzoai/resources/embeddings.rbi +++ b/rbi/hanzoai/resources/embeddings.rbi @@ -15,13 +15,7 @@ module Hanzoai # "input": "The quick brown fox jumps over the lazy dog" # }' # ``` - sig do - params( - model: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(model: nil, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/engines.rbi b/rbi/hanzoai/resources/engines.rbi index 67f16866..8f443a81 100644 --- a/rbi/hanzoai/resources/engines.rbi +++ b/rbi/hanzoai/resources/engines.rbi @@ -20,13 +20,7 @@ module Hanzoai # "temperature": 0.7 # }' # ``` - sig do - params( - model: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def complete(model, request_options: {}); end # Follows the exact same API spec as @@ -41,13 +35,7 @@ module Hanzoai # "input": "The quick brown fox jumps over the lazy dog" # }' # ``` - sig do - params( - model: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def embed(model, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/engines/chat.rbi b/rbi/hanzoai/resources/engines/chat.rbi index 0b88247c..53e6f9bd 100644 --- a/rbi/hanzoai/resources/engines/chat.rbi +++ b/rbi/hanzoai/resources/engines/chat.rbi @@ -21,13 +21,7 @@ module Hanzoai # ] # }' # ``` - sig do - params( - model: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def complete(model, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/eu_assemblyai.rbi b/rbi/hanzoai/resources/eu_assemblyai.rbi index 5be92ab2..f6abfea0 100644 --- a/rbi/hanzoai/resources/eu_assemblyai.rbi +++ b/rbi/hanzoai/resources/eu_assemblyai.rbi @@ -4,53 +4,23 @@ module Hanzoai module Resources class EuAssemblyai # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # Assemblyai Proxy Route - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/files.rbi b/rbi/hanzoai/resources/files.rbi index 9fcaae23..0ab69af7 100644 --- a/rbi/hanzoai/resources/files.rbi +++ b/rbi/hanzoai/resources/files.rbi @@ -24,7 +24,7 @@ module Hanzoai file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), purpose: String, custom_llm_provider: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -44,12 +44,7 @@ module Hanzoai # # ``` sig do - params( - file_id: String, - provider: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(file_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) end def retrieve(file_id, provider:, request_options: {}); end @@ -66,11 +61,7 @@ module Hanzoai # # ``` sig do - params( - provider: String, - purpose: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(provider: String, purpose: T.nilable(String), request_options: Hanzoai::RequestOpts) .returns(T.anything) end def list(provider, purpose: nil, request_options: {}); end @@ -88,12 +79,7 @@ module Hanzoai # # ``` sig do - params( - file_id: String, - provider: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(file_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) end def delete(file_id, provider:, request_options: {}); end diff --git a/rbi/hanzoai/resources/files/content.rbi b/rbi/hanzoai/resources/files/content.rbi index 9227ee01..6aa0b06b 100644 --- a/rbi/hanzoai/resources/files/content.rbi +++ b/rbi/hanzoai/resources/files/content.rbi @@ -18,12 +18,7 @@ module Hanzoai # # ``` sig do - params( - file_id: String, - provider: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(file_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) end def retrieve(file_id, provider:, request_options: {}); end diff --git a/rbi/hanzoai/resources/fine_tuning/jobs.rbi b/rbi/hanzoai/resources/fine_tuning/jobs.rbi index f10ee53b..119b10cd 100644 --- a/rbi/hanzoai/resources/fine_tuning/jobs.rbi +++ b/rbi/hanzoai/resources/fine_tuning/jobs.rbi @@ -37,7 +37,7 @@ module Hanzoai seed: T.nilable(Integer), suffix: T.nilable(String), validation_file: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -63,7 +63,7 @@ module Hanzoai params( fine_tuning_job_id: String, custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -82,7 +82,7 @@ module Hanzoai custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, after: T.nilable(String), limit: T.nilable(Integer), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end diff --git a/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi b/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi index a6935f19..7df31793 100644 --- a/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi +++ b/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi @@ -15,11 +15,7 @@ module Hanzoai # - `custom_llm_provider`: Name of the LLM provider # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. sig do - params( - fine_tuning_job_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(fine_tuning_job_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) end def create(fine_tuning_job_id, request_options: {}); end diff --git a/rbi/hanzoai/resources/gemini.rbi b/rbi/hanzoai/resources/gemini.rbi index c970ac60..126ccd36 100644 --- a/rbi/hanzoai/resources/gemini.rbi +++ b/rbi/hanzoai/resources/gemini.rbi @@ -4,53 +4,23 @@ module Hanzoai module Resources class Gemini # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/global/spend.rbi b/rbi/hanzoai/resources/global/spend.rbi index 9efc5c1f..8d00d211 100644 --- a/rbi/hanzoai/resources/global/spend.rbi +++ b/rbi/hanzoai/resources/global/spend.rbi @@ -22,7 +22,7 @@ module Hanzoai end_date: T.nilable(String), start_date: T.nilable(String), tags: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T::Array[Hanzoai::Models::Global::SpendListTagsResponseItem]) end @@ -43,10 +43,7 @@ module Hanzoai # there # 2. LLM_VerificationTokens spend will be set = 0 # 3. LLM_TeamTable spend will be set = 0 - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def reset(request_options: {}); end # Get Daily Spend per Team, based on specific startTime and endTime. Per team, @@ -64,7 +61,7 @@ module Hanzoai internal_user_id: T.nilable(String), start_date: T.nilable(String), team_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem]) end diff --git a/rbi/hanzoai/resources/guardrails.rbi b/rbi/hanzoai/resources/guardrails.rbi index 82af53c0..bf505a80 100644 --- a/rbi/hanzoai/resources/guardrails.rbi +++ b/rbi/hanzoai/resources/guardrails.rbi @@ -37,10 +37,7 @@ module Hanzoai # ] # } # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(Hanzoai::Models::GuardrailListResponse) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::GuardrailListResponse) } def list(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/health.rbi b/rbi/hanzoai/resources/health.rbi index bbaf8574..c3117a40 100644 --- a/rbi/hanzoai/resources/health.rbi +++ b/rbi/hanzoai/resources/health.rbi @@ -18,37 +18,22 @@ module Hanzoai # ``` # # else, the health checks will be run on models when /health is called. - sig do - params( - model: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } def check_all( # Specify the model name (optional) model: nil, request_options: {} ); end # Unprotected endpoint for checking if worker is alive - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def check_liveliness(request_options: {}); end # Unprotected endpoint for checking if worker is alive - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def check_liveness(request_options: {}); end # Unprotected endpoint for checking if worker can receive requests - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def check_readiness(request_options: {}); end # Use this admin-only endpoint to check if the service is healthy. @@ -61,7 +46,7 @@ module Hanzoai sig do params( service: T.any(Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end diff --git a/rbi/hanzoai/resources/images/generations.rbi b/rbi/hanzoai/resources/images/generations.rbi index 0bbeaf99..abaac34e 100644 --- a/rbi/hanzoai/resources/images/generations.rbi +++ b/rbi/hanzoai/resources/images/generations.rbi @@ -5,10 +5,7 @@ module Hanzoai class Images class Generations # Image Generation - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/key.rbi b/rbi/hanzoai/resources/key.rbi index bce4155a..ce66e127 100644 --- a/rbi/hanzoai/resources/key.rbi +++ b/rbi/hanzoai/resources/key.rbi @@ -93,7 +93,7 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -172,7 +172,7 @@ module Hanzoai size: Integer, team_id: T.nilable(String), user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::KeyListResponse) end @@ -225,7 +225,7 @@ module Hanzoai key_aliases: T.nilable(T::Array[String]), keys: T.nilable(T::Array[String]), llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -257,11 +257,7 @@ module Hanzoai # # Note: This is an admin-only endpoint. Only proxy admins can block keys. sig do - params( - key: String, - llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(key: String, llm_changed_by: String, request_options: Hanzoai::RequestOpts) .returns(T.nilable(Hanzoai::Models::KeyBlockResponse)) end def block( @@ -312,10 +308,7 @@ module Hanzoai # } # } # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(Hanzoai::Models::KeyCheckHealthResponse) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::KeyCheckHealthResponse) } def check_health(request_options: {}); end # Generate an API key based on the provided data. @@ -431,7 +424,7 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::GenerateKeyResponse) end @@ -578,7 +571,7 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.nilable(Hanzoai::Models::GenerateKeyResponse)) end @@ -664,13 +657,7 @@ module Hanzoai # ``` # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" # ``` - sig do - params( - key: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(key: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve_info( # Key in the request parameters key: nil, @@ -693,12 +680,7 @@ module Hanzoai # # Note: This is an admin-only endpoint. Only proxy admins can unblock keys. sig do - params( - key: String, - llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(key: String, llm_changed_by: String, request_options: Hanzoai::RequestOpts).returns(T.anything) end def unblock( # Body param: diff --git a/rbi/hanzoai/resources/langfuse.rbi b/rbi/hanzoai/resources/langfuse.rbi index a93b1fe4..014c8b68 100644 --- a/rbi/hanzoai/resources/langfuse.rbi +++ b/rbi/hanzoai/resources/langfuse.rbi @@ -6,61 +6,31 @@ module Hanzoai # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/model.rbi b/rbi/hanzoai/resources/model.rbi index 59b2154f..2320acbb 100644 --- a/rbi/hanzoai/resources/model.rbi +++ b/rbi/hanzoai/resources/model.rbi @@ -15,7 +15,7 @@ module Hanzoai llm_params: T.any(Hanzoai::Models::ModelCreateParams::LlmParams, Hanzoai::Internal::AnyHash), model_info: T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash), model_name: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -27,18 +27,7 @@ module Hanzoai request_options: {} ); end # Allows deleting models in the model list in the config.yaml - sig do - params( - id: String, - request_options: T.nilable( - T.any( - Hanzoai::RequestOptions, - Hanzoai::Internal::AnyHash - ) - ) - ) - .returns(T.anything) - end + sig { params(id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(id:, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/model/info.rbi b/rbi/hanzoai/resources/model/info.rbi index bb391288..85cb3b34 100644 --- a/rbi/hanzoai/resources/model/info.rbi +++ b/rbi/hanzoai/resources/model/info.rbi @@ -35,11 +35,7 @@ module Hanzoai # } # ``` sig do - params( - llm_model_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(llm_model_id: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) end def list(llm_model_id: nil, request_options: {}); end diff --git a/rbi/hanzoai/resources/model/update.rbi b/rbi/hanzoai/resources/model/update.rbi index 5856e639..b0fb46d0 100644 --- a/rbi/hanzoai/resources/model/update.rbi +++ b/rbi/hanzoai/resources/model/update.rbi @@ -10,7 +10,7 @@ module Hanzoai llm_params: T.nilable(T.any(Hanzoai::Models::Model::UpdateDeployment::LlmParams, Hanzoai::Internal::AnyHash)), model_info: T.nilable(T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash)), model_name: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -34,7 +34,7 @@ module Hanzoai llm_params: T.nilable(T.any(Hanzoai::Models::Model::UpdateDeployment::LlmParams, Hanzoai::Internal::AnyHash)), model_info: T.nilable(T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash)), model_name: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end diff --git a/rbi/hanzoai/resources/model_group.rbi b/rbi/hanzoai/resources/model_group.rbi index df24b594..3f4b2ec4 100644 --- a/rbi/hanzoai/resources/model_group.rbi +++ b/rbi/hanzoai/resources/model_group.rbi @@ -146,11 +146,7 @@ module Hanzoai # } # ``` sig do - params( - model_group: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(model_group: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) end def retrieve_info(model_group: nil, request_options: {}); end diff --git a/rbi/hanzoai/resources/models.rbi b/rbi/hanzoai/resources/models.rbi index c99ac9b6..85622a8e 100644 --- a/rbi/hanzoai/resources/models.rbi +++ b/rbi/hanzoai/resources/models.rbi @@ -11,7 +11,7 @@ module Hanzoai params( return_wildcard_routes: T.nilable(T::Boolean), team_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end diff --git a/rbi/hanzoai/resources/moderations.rbi b/rbi/hanzoai/resources/moderations.rbi index a740442b..e1a8e4d5 100644 --- a/rbi/hanzoai/resources/moderations.rbi +++ b/rbi/hanzoai/resources/moderations.rbi @@ -11,10 +11,7 @@ module Hanzoai # ``` # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/openai.rbi b/rbi/hanzoai/resources/openai.rbi index f0cac6ca..b7f3a43c 100644 --- a/rbi/hanzoai/resources/openai.rbi +++ b/rbi/hanzoai/resources/openai.rbi @@ -8,57 +8,27 @@ module Hanzoai # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/openai/deployments.rbi b/rbi/hanzoai/resources/openai/deployments.rbi index 2a580577..33471076 100644 --- a/rbi/hanzoai/resources/openai/deployments.rbi +++ b/rbi/hanzoai/resources/openai/deployments.rbi @@ -21,13 +21,7 @@ module Hanzoai # "temperature": 0.7 # }' # ``` - sig do - params( - model: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def complete(model, request_options: {}); end # Follows the exact same API spec as @@ -42,13 +36,7 @@ module Hanzoai # "input": "The quick brown fox jumps over the lazy dog" # }' # ``` - sig do - params( - model: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def embed(model, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/openai/deployments/chat.rbi b/rbi/hanzoai/resources/openai/deployments/chat.rbi index cb525465..0d7978eb 100644 --- a/rbi/hanzoai/resources/openai/deployments/chat.rbi +++ b/rbi/hanzoai/resources/openai/deployments/chat.rbi @@ -22,13 +22,7 @@ module Hanzoai # ] # }' # ``` - sig do - params( - model: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def complete(model, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/organization.rbi b/rbi/hanzoai/resources/organization.rbi index 91317fd0..4a41919c 100644 --- a/rbi/hanzoai/resources/organization.rbi +++ b/rbi/hanzoai/resources/organization.rbi @@ -84,7 +84,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::OrganizationCreateResponse) end @@ -113,7 +113,7 @@ module Hanzoai organization_id: T.nilable(String), spend: T.nilable(Float), updated_by: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::OrganizationUpdateResponse) end @@ -131,7 +131,7 @@ module Hanzoai # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' # ``` sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) + params(request_options: Hanzoai::RequestOpts) .returns(T::Array[Hanzoai::Models::OrganizationListResponseItem]) end def list(request_options: {}); end @@ -142,10 +142,7 @@ module Hanzoai # # - organization_ids: List[str] - The organization ids to delete. sig do - params( - organization_ids: T::Array[String], - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(organization_ids: T::Array[String], request_options: Hanzoai::RequestOpts) .returns(T::Array[Hanzoai::Models::OrganizationDeleteResponseItem]) end def delete(organization_ids:, request_options: {}); end @@ -196,7 +193,7 @@ module Hanzoai ), organization_id: String, max_budget_in_organization: T.nilable(Float), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::OrganizationAddMemberResponse) end @@ -208,7 +205,7 @@ module Hanzoai organization_id: String, user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -222,7 +219,7 @@ module Hanzoai role: T.nilable(Hanzoai::Models::OrganizationUpdateMemberParams::Role::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::OrganizationUpdateMemberResponse) end diff --git a/rbi/hanzoai/resources/organization/info.rbi b/rbi/hanzoai/resources/organization/info.rbi index 73ffe43b..f39c0c89 100644 --- a/rbi/hanzoai/resources/organization/info.rbi +++ b/rbi/hanzoai/resources/organization/info.rbi @@ -6,21 +6,14 @@ module Hanzoai class Info # Get the org specific information sig do - params( - organization_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(organization_id: String, request_options: Hanzoai::RequestOpts) .returns(Hanzoai::Models::Organization::InfoRetrieveResponse) end def retrieve(organization_id:, request_options: {}); end # DEPRECATED: Use GET /organization/info instead sig do - params( - organizations: T::Array[String], - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) + params(organizations: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) end def deprecated(organizations:, request_options: {}); end diff --git a/rbi/hanzoai/resources/provider.rbi b/rbi/hanzoai/resources/provider.rbi index 941c9d3d..7580fb1e 100644 --- a/rbi/hanzoai/resources/provider.rbi +++ b/rbi/hanzoai/resources/provider.rbi @@ -47,10 +47,7 @@ module Hanzoai # } # } # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(Hanzoai::Models::ProviderListBudgetsResponse) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::ProviderListBudgetsResponse) } def list_budgets(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/rerank.rbi b/rbi/hanzoai/resources/rerank.rbi index c7e90b81..9a4a9b6d 100644 --- a/rbi/hanzoai/resources/rerank.rbi +++ b/rbi/hanzoai/resources/rerank.rbi @@ -4,24 +4,15 @@ module Hanzoai module Resources class Rerank # Rerank - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(request_options: {}); end # Rerank - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create_v1(request_options: {}); end # Rerank - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create_v2(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/responses.rbi b/rbi/hanzoai/resources/responses.rbi index a467cccb..692faa79 100644 --- a/rbi/hanzoai/resources/responses.rbi +++ b/rbi/hanzoai/resources/responses.rbi @@ -15,10 +15,7 @@ module Hanzoai # "input": "Tell me about AI" # }' # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(request_options: {}); end # Get a response by ID. @@ -29,13 +26,7 @@ module Hanzoai # ```bash # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" # ``` - sig do - params( - response_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(response_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(response_id, request_options: {}); end # Delete a response by ID. @@ -46,13 +37,7 @@ module Hanzoai # ```bash # curl -X DELETE http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" # ``` - sig do - params( - response_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(response_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(response_id, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/responses/input_items.rbi b/rbi/hanzoai/resources/responses/input_items.rbi index 1b35c1b5..77eca0cc 100644 --- a/rbi/hanzoai/resources/responses/input_items.rbi +++ b/rbi/hanzoai/resources/responses/input_items.rbi @@ -12,13 +12,7 @@ module Hanzoai # ```bash # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" # ``` - sig do - params( - response_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(response_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def list(response_id, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/routes.rbi b/rbi/hanzoai/resources/routes.rbi index 348d3c32..fa0681c2 100644 --- a/rbi/hanzoai/resources/routes.rbi +++ b/rbi/hanzoai/resources/routes.rbi @@ -4,10 +4,7 @@ module Hanzoai module Resources class Routes # Get a list of available routes in the FastAPI application. - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def list(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/settings.rbi b/rbi/hanzoai/resources/settings.rbi index a8523ebb..66d2750f 100644 --- a/rbi/hanzoai/resources/settings.rbi +++ b/rbi/hanzoai/resources/settings.rbi @@ -26,10 +26,7 @@ module Hanzoai # "llm.request_timeout": llm.request_timeout, # } # ``` - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/spend.rbi b/rbi/hanzoai/resources/spend.rbi index 1a420e58..7cd75f73 100644 --- a/rbi/hanzoai/resources/spend.rbi +++ b/rbi/hanzoai/resources/spend.rbi @@ -55,7 +55,7 @@ module Hanzoai completion_response: T.nilable(T.anything), messages: T.nilable(T::Array[T.anything]), model: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -94,7 +94,7 @@ module Hanzoai request_id: T.nilable(String), start_date: T.nilable(String), user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T::Array[Hanzoai::Models::SpendListLogsResponseItem]) end @@ -129,7 +129,7 @@ module Hanzoai params( end_date: T.nilable(String), start_date: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T::Array[Hanzoai::Models::SpendListTagsResponseItem]) end diff --git a/rbi/hanzoai/resources/team.rbi b/rbi/hanzoai/resources/team.rbi index 8acae53d..48c08c58 100644 --- a/rbi/hanzoai/resources/team.rbi +++ b/rbi/hanzoai/resources/team.rbi @@ -94,7 +94,7 @@ module Hanzoai team_id: T.nilable(String), tpm_limit: T.nilable(Integer), llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::TeamCreateResponse) end @@ -204,7 +204,7 @@ module Hanzoai team_alias: T.nilable(String), tpm_limit: T.nilable(Integer), llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -256,7 +256,7 @@ module Hanzoai params( organization_id: T.nilable(String), user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -279,11 +279,7 @@ module Hanzoai # }' # ``` sig do - params( - team_ids: T::Array[String], - llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(team_ids: T::Array[String], llm_changed_by: String, request_options: Hanzoai::RequestOpts) .returns(T.anything) end def delete( @@ -317,7 +313,7 @@ module Hanzoai ), team_id: String, max_budget_in_team: T.nilable(Float), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::TeamAddMemberResponse) end @@ -340,13 +336,7 @@ module Hanzoai # Returns: # # - The updated team record with blocked=True - sig do - params( - team_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def block(team_id:, request_options: {}); end # Disable all logging callbacks for a team @@ -360,23 +350,11 @@ module Hanzoai # ``` # curl -X POST 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/disable_logging' -H 'Authorization: Bearer sk-1234' # ``` - sig do - params( - team_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def disable_logging(team_id, request_options: {}); end # List Available Teams - sig do - params( - response_model: T.anything, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(response_model: T.anything, request_options: Hanzoai::RequestOpts).returns(T.anything) } def list_available(response_model: nil, request_options: {}); end # [BETA] @@ -399,7 +377,7 @@ module Hanzoai team_id: String, user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -414,13 +392,7 @@ module Hanzoai # ``` # curl --location 'http://localhost:4000/team/info?team_id=your_team_id_here' --header 'Authorization: Bearer your_api_key_here' # ``` - sig do - params( - team_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve_info( # Team ID in the request parameters team_id: nil, @@ -439,13 +411,7 @@ module Hanzoai # "team_id": "team-1234" # }' # ``` - sig do - params( - team_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def unblock(team_id:, request_options: {}); end # [BETA] @@ -458,7 +424,7 @@ module Hanzoai role: T.nilable(Hanzoai::Models::TeamUpdateMemberParams::Role::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::TeamUpdateMemberResponse) end diff --git a/rbi/hanzoai/resources/team/callback.rbi b/rbi/hanzoai/resources/team/callback.rbi index a0ae9855..19dccc01 100644 --- a/rbi/hanzoai/resources/team/callback.rbi +++ b/rbi/hanzoai/resources/team/callback.rbi @@ -23,13 +23,7 @@ module Hanzoai # "success_callbacks": team_callback_settings_obj.success_callback, # "failure_callbacks": team_callback_settings_obj.failure_callback, # "callback_vars": team_callback_settings_obj.callback_vars, }, } - sig do - params( - team_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(team_id, request_options: {}); end # Add a success/failure callback to a team @@ -79,7 +73,7 @@ module Hanzoai callback_vars: T::Hash[Symbol, String], callback_type: T.nilable(Hanzoai::Models::Team::CallbackAddParams::CallbackType::OrSymbol), llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end diff --git a/rbi/hanzoai/resources/team/model.rbi b/rbi/hanzoai/resources/team/model.rbi index 1b95d905..af0bffb1 100644 --- a/rbi/hanzoai/resources/team/model.rbi +++ b/rbi/hanzoai/resources/team/model.rbi @@ -21,11 +21,7 @@ module Hanzoai # }' # ``` sig do - params( - models: T::Array[String], - team_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(models: T::Array[String], team_id: String, request_options: Hanzoai::RequestOpts) .returns(T.anything) end def add(models:, team_id:, request_options: {}); end @@ -47,11 +43,7 @@ module Hanzoai # }' # ``` sig do - params( - models: T::Array[String], - team_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(models: T::Array[String], team_id: String, request_options: Hanzoai::RequestOpts) .returns(T.anything) end def remove(models:, team_id:, request_options: {}); end diff --git a/rbi/hanzoai/resources/test.rbi b/rbi/hanzoai/resources/test.rbi index 76f31213..36eee234 100644 --- a/rbi/hanzoai/resources/test.rbi +++ b/rbi/hanzoai/resources/test.rbi @@ -10,10 +10,7 @@ module Hanzoai # Parameters: request (Request): The incoming request. # # Returns: dict: A dictionary containing the route of the request URL. - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def ping(request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/threads.rbi b/rbi/hanzoai/resources/threads.rbi index 506eed66..4aca456a 100644 --- a/rbi/hanzoai/resources/threads.rbi +++ b/rbi/hanzoai/resources/threads.rbi @@ -13,22 +13,13 @@ module Hanzoai # # API Reference - # https://platform.openai.com/docs/api-reference/threads/createThread - sig do - params(request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash))) - .returns(T.anything) - end + sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(request_options: {}); end # Retrieves a thread. # # API Reference - https://platform.openai.com/docs/api-reference/threads/getThread - sig do - params( - thread_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(thread_id, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/threads/messages.rbi b/rbi/hanzoai/resources/threads/messages.rbi index 980b3f1d..6196e088 100644 --- a/rbi/hanzoai/resources/threads/messages.rbi +++ b/rbi/hanzoai/resources/threads/messages.rbi @@ -8,26 +8,14 @@ module Hanzoai # # API Reference - # https://platform.openai.com/docs/api-reference/messages/createMessage - sig do - params( - thread_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(thread_id, request_options: {}); end # Returns a list of messages for a given thread. # # API Reference - # https://platform.openai.com/docs/api-reference/messages/listMessages - sig do - params( - thread_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def list(thread_id, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/threads/runs.rbi b/rbi/hanzoai/resources/threads/runs.rbi index 22b762a0..5752ddb9 100644 --- a/rbi/hanzoai/resources/threads/runs.rbi +++ b/rbi/hanzoai/resources/threads/runs.rbi @@ -7,13 +7,7 @@ module Hanzoai # Create a run. # # API Reference: https://platform.openai.com/docs/api-reference/runs/createRun - sig do - params( - thread_id: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(thread_id, request_options: {}); end # @api private diff --git a/rbi/hanzoai/resources/user.rbi b/rbi/hanzoai/resources/user.rbi index d0cce8f7..2eefe6b2 100644 --- a/rbi/hanzoai/resources/user.rbi +++ b/rbi/hanzoai/resources/user.rbi @@ -114,7 +114,7 @@ module Hanzoai user_email: T.nilable(String), user_id: T.nilable(String), user_role: T.nilable(Hanzoai::Models::UserCreateParams::UserRole::OrSymbol), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::UserCreateResponse) end @@ -230,7 +230,7 @@ module Hanzoai user_email: T.nilable(String), user_id: T.nilable(String), user_role: T.nilable(Hanzoai::Models::UserUpdateParams::UserRole::OrSymbol), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -284,7 +284,7 @@ module Hanzoai page_size: Integer, role: T.nilable(String), user_ids: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(T.anything) end @@ -314,11 +314,7 @@ module Hanzoai # # - user_ids: List[str] - The list of user id's to be deleted. sig do - params( - user_ids: T::Array[String], - llm_changed_by: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) + params(user_ids: T::Array[String], llm_changed_by: String, request_options: Hanzoai::RequestOpts) .returns(T.anything) end def delete( @@ -339,13 +335,7 @@ module Hanzoai # ``` # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' # ``` - sig do - params( - user_id: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(user_id: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve_info( # User ID in the request parameters user_id: nil, diff --git a/rbi/hanzoai/resources/utils.rbi b/rbi/hanzoai/resources/utils.rbi index 32136e4f..8f4832f8 100644 --- a/rbi/hanzoai/resources/utils.rbi +++ b/rbi/hanzoai/resources/utils.rbi @@ -12,13 +12,7 @@ module Hanzoai # ``` # curl -X GET --location 'http://localhost:4000/utils/supported_openai_params?model=gpt-3.5-turbo-16k' --header 'Authorization: Bearer sk-1234' # ``` - sig do - params( - model: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def get_supported_openai_params(model:, request_options: {}); end # Token Counter @@ -27,7 +21,7 @@ module Hanzoai model: String, messages: T.nilable(T::Array[T.anything]), prompt: T.nilable(String), - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::UtilTokenCounterResponse) end @@ -38,7 +32,7 @@ module Hanzoai params( call_type: Hanzoai::Models::UtilTransformRequestParams::CallType::OrSymbol, request_body: T.anything, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) + request_options: Hanzoai::RequestOpts ) .returns(Hanzoai::Models::UtilTransformRequestResponse) end diff --git a/rbi/hanzoai/resources/vertex_ai.rbi b/rbi/hanzoai/resources/vertex_ai.rbi index 9a51cb4e..54068f57 100644 --- a/rbi/hanzoai/resources/vertex_ai.rbi +++ b/rbi/hanzoai/resources/vertex_ai.rbi @@ -6,61 +6,31 @@ module Hanzoai # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def create(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def retrieve(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def update(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def delete(endpoint, request_options: {}); end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig do - params( - endpoint: String, - request_options: T.nilable(T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - ) - .returns(T.anything) - end + sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } def patch(endpoint, request_options: {}); end # @api private diff --git a/sig/hanzoai/models/customer_list_response.rbs b/sig/hanzoai/models/customer_list_response.rbs index fdb4ea8a..8b78dd37 100644 --- a/sig/hanzoai/models/customer_list_response.rbs +++ b/sig/hanzoai/models/customer_list_response.rbs @@ -94,6 +94,6 @@ module Hanzoai type customer_list_response = ::Array[Hanzoai::Models::CustomerListResponseItem] - CustomerListResponse: customer_list_response + CustomerListResponse: Hanzoai::Internal::Type::Converter end end diff --git a/sig/hanzoai/models/global/spend_list_tags_response.rbs b/sig/hanzoai/models/global/spend_list_tags_response.rbs index 8b2da9a2..3773d6f2 100644 --- a/sig/hanzoai/models/global/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/global/spend_list_tags_response.rbs @@ -131,7 +131,7 @@ module Hanzoai type spend_list_tags_response = ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem] - SpendListTagsResponse: spend_list_tags_response + SpendListTagsResponse: Hanzoai::Internal::Type::Converter end end end diff --git a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs index 045ebf3a..9fae7479 100644 --- a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs +++ b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs @@ -131,7 +131,7 @@ module Hanzoai type spend_retrieve_report_response = ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem] - SpendRetrieveReportResponse: spend_retrieve_report_response + SpendRetrieveReportResponse: Hanzoai::Internal::Type::Converter end end end diff --git a/sig/hanzoai/models/organization_delete_response.rbs b/sig/hanzoai/models/organization_delete_response.rbs index aba34c85..46105ff4 100644 --- a/sig/hanzoai/models/organization_delete_response.rbs +++ b/sig/hanzoai/models/organization_delete_response.rbs @@ -335,6 +335,6 @@ module Hanzoai type organization_delete_response = ::Array[Hanzoai::Models::OrganizationDeleteResponseItem] - OrganizationDeleteResponse: organization_delete_response + OrganizationDeleteResponse: Hanzoai::Internal::Type::Converter end end diff --git a/sig/hanzoai/models/organization_list_response.rbs b/sig/hanzoai/models/organization_list_response.rbs index 1e502899..d099cc95 100644 --- a/sig/hanzoai/models/organization_list_response.rbs +++ b/sig/hanzoai/models/organization_list_response.rbs @@ -335,6 +335,6 @@ module Hanzoai type organization_list_response = ::Array[Hanzoai::Models::OrganizationListResponseItem] - OrganizationListResponse: organization_list_response + OrganizationListResponse: Hanzoai::Internal::Type::Converter end end diff --git a/sig/hanzoai/models/spend_list_logs_response.rbs b/sig/hanzoai/models/spend_list_logs_response.rbs index 1778e2c3..fb095176 100644 --- a/sig/hanzoai/models/spend_list_logs_response.rbs +++ b/sig/hanzoai/models/spend_list_logs_response.rbs @@ -130,6 +130,6 @@ module Hanzoai type spend_list_logs_response = ::Array[Hanzoai::Models::SpendListLogsResponseItem] - SpendListLogsResponse: spend_list_logs_response + SpendListLogsResponse: Hanzoai::Internal::Type::Converter end end diff --git a/sig/hanzoai/models/spend_list_tags_response.rbs b/sig/hanzoai/models/spend_list_tags_response.rbs index 15cfe325..dd956d3b 100644 --- a/sig/hanzoai/models/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/spend_list_tags_response.rbs @@ -130,6 +130,6 @@ module Hanzoai type spend_list_tags_response = ::Array[Hanzoai::Models::SpendListTagsResponseItem] - SpendListTagsResponse: spend_list_tags_response + SpendListTagsResponse: Hanzoai::Internal::Type::Converter end end From d02c8b2111ed5fcd786fd68a65612987df7d9929 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 29 Apr 2025 03:37:17 +0000 Subject: [PATCH 057/139] chore: add generator safe directory --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 19906445..e0bb7c0c 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/hanzoai/helpers/` and `examples/` directory. ## Adding and running examples From 27277d1682cef6e6bab261196ee3e6e8959e8fc8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 30 Apr 2025 03:13:19 +0000 Subject: [PATCH 058/139] chore: loosen rubocop rules that don't always make sense --- .rubocop.yml | 11 +++++++++ Rakefile | 8 ++++++- test/hanzoai/internal/type/base_model_test.rb | 2 -- test/hanzoai/resources/active_test.rb | 2 ++ test/hanzoai/resources/add_test.rb | 2 ++ test/hanzoai/resources/anthropic_test.rb | 10 ++++++++ test/hanzoai/resources/assemblyai_test.rb | 10 ++++++++ test/hanzoai/resources/assistants_test.rb | 6 +++++ test/hanzoai/resources/audio/speech_test.rb | 2 ++ .../resources/audio/transcriptions_test.rb | 2 ++ test/hanzoai/resources/azure_test.rb | 10 ++++++++ test/hanzoai/resources/batches/cancel_test.rb | 2 ++ test/hanzoai/resources/batches_test.rb | 14 +++++++++++ test/hanzoai/resources/bedrock_test.rb | 10 ++++++++ test/hanzoai/resources/budget_test.rb | 12 ++++++++++ test/hanzoai/resources/cache/redis_test.rb | 2 ++ test/hanzoai/resources/cache_test.rb | 6 +++++ .../resources/chat/completions_test.rb | 2 ++ test/hanzoai/resources/cohere_test.rb | 10 ++++++++ test/hanzoai/resources/completions_test.rb | 2 ++ .../config/pass_through_endpoint_test.rb | 8 +++++++ test/hanzoai/resources/credentials_test.rb | 6 +++++ test/hanzoai/resources/customer_test.rb | 14 +++++++++++ test/hanzoai/resources/delete_test.rb | 2 ++ test/hanzoai/resources/embeddings_test.rb | 2 ++ test/hanzoai/resources/engines/chat_test.rb | 2 ++ test/hanzoai/resources/engines_test.rb | 4 ++++ test/hanzoai/resources/eu_assemblyai_test.rb | 10 ++++++++ test/hanzoai/resources/files/content_test.rb | 2 ++ test/hanzoai/resources/files_test.rb | 8 +++++++ .../resources/fine_tuning/jobs/cancel_test.rb | 2 ++ .../resources/fine_tuning/jobs_test.rb | 6 +++++ test/hanzoai/resources/gemini_test.rb | 10 ++++++++ test/hanzoai/resources/global/spend_test.rb | 6 +++++ test/hanzoai/resources/guardrails_test.rb | 2 ++ test/hanzoai/resources/health_test.rb | 10 ++++++++ .../resources/images/generations_test.rb | 2 ++ test/hanzoai/resources/key_test.rb | 18 ++++++++++++++ test/hanzoai/resources/langfuse_test.rb | 10 ++++++++ test/hanzoai/resources/model/info_test.rb | 2 ++ test/hanzoai/resources/model/update_test.rb | 4 ++++ test/hanzoai/resources/model_group_test.rb | 2 ++ test/hanzoai/resources/model_test.rb | 4 ++++ test/hanzoai/resources/models_test.rb | 2 ++ test/hanzoai/resources/moderations_test.rb | 2 ++ .../resources/openai/deployments/chat_test.rb | 2 ++ .../resources/openai/deployments_test.rb | 4 ++++ test/hanzoai/resources/openai_test.rb | 10 ++++++++ .../resources/organization/info_test.rb | 4 ++++ test/hanzoai/resources/organization_test.rb | 14 +++++++++++ test/hanzoai/resources/provider_test.rb | 2 ++ test/hanzoai/resources/rerank_test.rb | 6 +++++ .../resources/responses/input_items_test.rb | 2 ++ test/hanzoai/resources/responses_test.rb | 6 +++++ test/hanzoai/resources/routes_test.rb | 2 ++ test/hanzoai/resources/settings_test.rb | 2 ++ test/hanzoai/resources/spend_test.rb | 6 +++++ test/hanzoai/resources/team/callback_test.rb | 4 ++++ test/hanzoai/resources/team/model_test.rb | 4 ++++ test/hanzoai/resources/team_test.rb | 24 +++++++++++++++++++ test/hanzoai/resources/test_test.rb | 2 ++ .../resources/threads/messages_test.rb | 4 ++++ test/hanzoai/resources/threads/runs_test.rb | 2 ++ test/hanzoai/resources/threads_test.rb | 4 ++++ test/hanzoai/resources/user_test.rb | 10 ++++++++ test/hanzoai/resources/utils_test.rb | 6 +++++ test/hanzoai/resources/vertex_ai_test.rb | 10 ++++++++ 67 files changed, 392 insertions(+), 3 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 6b1ed516..50844e68 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/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 3fec3e18..6d3193c9 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/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], diff --git a/test/hanzoai/resources/active_test.rb b/test/hanzoai/resources/active_test.rb index e32bed20..f56e7683 100644 --- a/test/hanzoai/resources/active_test.rb +++ b/test/hanzoai/resources/active_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ActiveTest < Hanzoai::Test::ResourceTest def test_list_callbacks + skip("skipped: tests are disabled for the time being") + response = @hanzo.active.list_callbacks assert_pattern do diff --git a/test/hanzoai/resources/add_test.rb b/test/hanzoai/resources/add_test.rb index 53728d59..e9235be0 100644 --- a/test/hanzoai/resources/add_test.rb +++ b/test/hanzoai/resources/add_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::AddTest < Hanzoai::Test::ResourceTest def test_add_allowed_ip_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.add.add_allowed_ip(ip: "ip") assert_pattern do diff --git a/test/hanzoai/resources/anthropic_test.rb b/test/hanzoai/resources/anthropic_test.rb index 47c53b0d..335c8d6f 100644 --- a/test/hanzoai/resources/anthropic_test.rb +++ b/test/hanzoai/resources/anthropic_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::AnthropicTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.anthropic.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.anthropic.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.anthropic.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.anthropic.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_modify + skip("skipped: tests are disabled for the time being") + response = @hanzo.anthropic.modify("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/assemblyai_test.rb b/test/hanzoai/resources/assemblyai_test.rb index 9f57d2bf..e2b73324 100644 --- a/test/hanzoai/resources/assemblyai_test.rb +++ b/test/hanzoai/resources/assemblyai_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::AssemblyaiTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.assemblyai.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.assemblyai.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.assemblyai.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.assemblyai.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.assemblyai.patch("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/assistants_test.rb b/test/hanzoai/resources/assistants_test.rb index 5aeb242a..8f0afd4a 100644 --- a/test/hanzoai/resources/assistants_test.rb +++ b/test/hanzoai/resources/assistants_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::AssistantsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.assistants.create assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.assistants.list assert_pattern do @@ -20,6 +24,8 @@ def test_list end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.assistants.delete("assistant_id") assert_pattern do diff --git a/test/hanzoai/resources/audio/speech_test.rb b/test/hanzoai/resources/audio/speech_test.rb index d65cd84f..12cb2ab8 100644 --- a/test/hanzoai/resources/audio/speech_test.rb +++ b/test/hanzoai/resources/audio/speech_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Audio::SpeechTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.audio.speech.create assert_pattern do diff --git a/test/hanzoai/resources/audio/transcriptions_test.rb b/test/hanzoai/resources/audio/transcriptions_test.rb index 006f2168..f02a2fe7 100644 --- a/test/hanzoai/resources/audio/transcriptions_test.rb +++ b/test/hanzoai/resources/audio/transcriptions_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Audio::TranscriptionsTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.audio.transcriptions.create(file: Pathname(__FILE__)) assert_pattern do diff --git a/test/hanzoai/resources/azure_test.rb b/test/hanzoai/resources/azure_test.rb index 301649b9..64678725 100644 --- a/test/hanzoai/resources/azure_test.rb +++ b/test/hanzoai/resources/azure_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::AzureTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.azure.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.azure.update("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.azure.delete("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_delete end def test_call + skip("skipped: tests are disabled for the time being") + response = @hanzo.azure.call("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_call end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.azure.patch("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/batches/cancel_test.rb b/test/hanzoai/resources/batches/cancel_test.rb index 6e8ee2ba..1d8756ba 100644 --- a/test/hanzoai/resources/batches/cancel_test.rb +++ b/test/hanzoai/resources/batches/cancel_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Batches::CancelTest < Hanzoai::Test::ResourceTest def test_cancel + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.cancel.cancel("batch_id") assert_pattern do diff --git a/test/hanzoai/resources/batches_test.rb b/test/hanzoai/resources/batches_test.rb index af411d8e..793835c6 100644 --- a/test/hanzoai/resources/batches_test.rb +++ b/test/hanzoai/resources/batches_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::BatchesTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.create assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.retrieve("batch_id") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.list assert_pattern do @@ -28,6 +34,8 @@ def test_list end def test_cancel_with_provider_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.cancel_with_provider("batch_id", provider: "provider") assert_pattern do @@ -36,6 +44,8 @@ def test_cancel_with_provider_required_params end def test_create_with_provider + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.create_with_provider("provider") assert_pattern do @@ -44,6 +54,8 @@ def test_create_with_provider end def test_list_with_provider + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.list_with_provider("provider") assert_pattern do @@ -52,6 +64,8 @@ def test_list_with_provider end def test_retrieve_with_provider_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.batches.retrieve_with_provider("batch_id", provider: "provider") assert_pattern do diff --git a/test/hanzoai/resources/bedrock_test.rb b/test/hanzoai/resources/bedrock_test.rb index 86700c7c..8ed847f7 100644 --- a/test/hanzoai/resources/bedrock_test.rb +++ b/test/hanzoai/resources/bedrock_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::BedrockTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.bedrock.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.bedrock.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.bedrock.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.bedrock.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.bedrock.patch("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/budget_test.rb b/test/hanzoai/resources/budget_test.rb index 7db11929..30e36cbf 100644 --- a/test/hanzoai/resources/budget_test.rb +++ b/test/hanzoai/resources/budget_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::BudgetTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.budget.create assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.budget.update assert_pattern do @@ -20,6 +24,8 @@ def test_update end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.budget.list assert_pattern do @@ -28,6 +34,8 @@ def test_list end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.budget.delete(id: "id") assert_pattern do @@ -36,6 +44,8 @@ def test_delete_required_params end def test_info_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.budget.info(budgets: ["string"]) assert_pattern do @@ -44,6 +54,8 @@ def test_info_required_params end def test_settings_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.budget.settings(budget_id: "budget_id") assert_pattern do diff --git a/test/hanzoai/resources/cache/redis_test.rb b/test/hanzoai/resources/cache/redis_test.rb index 191a0e52..0123e7fc 100644 --- a/test/hanzoai/resources/cache/redis_test.rb +++ b/test/hanzoai/resources/cache/redis_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Cache::RedisTest < Hanzoai::Test::ResourceTest def test_retrieve_info + skip("skipped: tests are disabled for the time being") + response = @hanzo.cache.redis.retrieve_info assert_pattern do diff --git a/test/hanzoai/resources/cache_test.rb b/test/hanzoai/resources/cache_test.rb index cb98f81c..28c88b5a 100644 --- a/test/hanzoai/resources/cache_test.rb +++ b/test/hanzoai/resources/cache_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::CacheTest < Hanzoai::Test::ResourceTest def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.cache.delete assert_pattern do @@ -12,6 +14,8 @@ def test_delete end def test_flush_all + skip("skipped: tests are disabled for the time being") + response = @hanzo.cache.flush_all assert_pattern do @@ -20,6 +24,8 @@ def test_flush_all end def test_ping + skip("skipped: tests are disabled for the time being") + response = @hanzo.cache.ping assert_pattern do diff --git a/test/hanzoai/resources/chat/completions_test.rb b/test/hanzoai/resources/chat/completions_test.rb index 7c0a2b54..d22fe545 100644 --- a/test/hanzoai/resources/chat/completions_test.rb +++ b/test/hanzoai/resources/chat/completions_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Chat::CompletionsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.chat.completions.create assert_pattern do diff --git a/test/hanzoai/resources/cohere_test.rb b/test/hanzoai/resources/cohere_test.rb index dfc59198..aa8d27b9 100644 --- a/test/hanzoai/resources/cohere_test.rb +++ b/test/hanzoai/resources/cohere_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::CohereTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.cohere.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.cohere.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.cohere.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.cohere.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_modify + skip("skipped: tests are disabled for the time being") + response = @hanzo.cohere.modify("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/completions_test.rb b/test/hanzoai/resources/completions_test.rb index e3055ad3..c32feb18 100644 --- a/test/hanzoai/resources/completions_test.rb +++ b/test/hanzoai/resources/completions_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::CompletionsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.completions.create assert_pattern do diff --git a/test/hanzoai/resources/config/pass_through_endpoint_test.rb b/test/hanzoai/resources/config/pass_through_endpoint_test.rb index aca0f8e1..1e6b974e 100644 --- a/test/hanzoai/resources/config/pass_through_endpoint_test.rb +++ b/test/hanzoai/resources/config/pass_through_endpoint_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Config::PassThroughEndpointTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.config.pass_through_endpoint.create(headers: {}, path: "path", target: "target") assert_pattern do @@ -12,6 +14,8 @@ def test_create_required_params end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.config.pass_through_endpoint.update("endpoint_id") assert_pattern do @@ -20,6 +24,8 @@ def test_update end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.config.pass_through_endpoint.list assert_pattern do @@ -34,6 +40,8 @@ def test_list end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.config.pass_through_endpoint.delete(endpoint_id: "endpoint_id") assert_pattern do diff --git a/test/hanzoai/resources/credentials_test.rb b/test/hanzoai/resources/credentials_test.rb index cfec7db0..65a2c80d 100644 --- a/test/hanzoai/resources/credentials_test.rb +++ b/test/hanzoai/resources/credentials_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::CredentialsTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.credentials.create(credential_info: {}, credential_name: "credential_name") assert_pattern do @@ -12,6 +14,8 @@ def test_create_required_params end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.credentials.list assert_pattern do @@ -20,6 +24,8 @@ def test_list end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.credentials.delete("credential_name") assert_pattern do diff --git a/test/hanzoai/resources/customer_test.rb b/test/hanzoai/resources/customer_test.rb index 1131683e..50e50a51 100644 --- a/test/hanzoai/resources/customer_test.rb +++ b/test/hanzoai/resources/customer_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::CustomerTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.customer.create(user_id: "user_id") assert_pattern do @@ -12,6 +14,8 @@ def test_create_required_params end def test_update_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.customer.update(user_id: "user_id") assert_pattern do @@ -20,6 +24,8 @@ def test_update_required_params end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.customer.list assert_pattern do @@ -28,6 +34,8 @@ def test_list end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.customer.delete(user_ids: ["string"]) assert_pattern do @@ -36,6 +44,8 @@ def test_delete_required_params end def test_block_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.customer.block(user_ids: ["string"]) assert_pattern do @@ -44,6 +54,8 @@ def test_block_required_params end def test_retrieve_info_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.customer.retrieve_info(end_user_id: "end_user_id") assert_pattern do @@ -64,6 +76,8 @@ def test_retrieve_info_required_params end def test_unblock_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.customer.unblock(user_ids: ["string"]) assert_pattern do diff --git a/test/hanzoai/resources/delete_test.rb b/test/hanzoai/resources/delete_test.rb index d3b307f8..4339627b 100644 --- a/test/hanzoai/resources/delete_test.rb +++ b/test/hanzoai/resources/delete_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::DeleteTest < Hanzoai::Test::ResourceTest def test_create_allowed_ip_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.delete.create_allowed_ip(ip: "ip") assert_pattern do diff --git a/test/hanzoai/resources/embeddings_test.rb b/test/hanzoai/resources/embeddings_test.rb index d215f076..91c7dedb 100644 --- a/test/hanzoai/resources/embeddings_test.rb +++ b/test/hanzoai/resources/embeddings_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::EmbeddingsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.embeddings.create assert_pattern do diff --git a/test/hanzoai/resources/engines/chat_test.rb b/test/hanzoai/resources/engines/chat_test.rb index 131fecc4..1e6ca61f 100644 --- a/test/hanzoai/resources/engines/chat_test.rb +++ b/test/hanzoai/resources/engines/chat_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Engines::ChatTest < Hanzoai::Test::ResourceTest def test_complete + skip("skipped: tests are disabled for the time being") + response = @hanzo.engines.chat.complete("model") assert_pattern do diff --git a/test/hanzoai/resources/engines_test.rb b/test/hanzoai/resources/engines_test.rb index 8a55ef0e..ab9db013 100644 --- a/test/hanzoai/resources/engines_test.rb +++ b/test/hanzoai/resources/engines_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::EnginesTest < Hanzoai::Test::ResourceTest def test_complete + skip("skipped: tests are disabled for the time being") + response = @hanzo.engines.complete("model") assert_pattern do @@ -12,6 +14,8 @@ def test_complete end def test_embed + skip("skipped: tests are disabled for the time being") + response = @hanzo.engines.embed("model") assert_pattern do diff --git a/test/hanzoai/resources/eu_assemblyai_test.rb b/test/hanzoai/resources/eu_assemblyai_test.rb index e5c473a3..ae75dff7 100644 --- a/test/hanzoai/resources/eu_assemblyai_test.rb +++ b/test/hanzoai/resources/eu_assemblyai_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::EuAssemblyaiTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.eu_assemblyai.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.eu_assemblyai.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.eu_assemblyai.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.eu_assemblyai.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.eu_assemblyai.patch("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/files/content_test.rb b/test/hanzoai/resources/files/content_test.rb index 276c6e3e..e331c4ef 100644 --- a/test/hanzoai/resources/files/content_test.rb +++ b/test/hanzoai/resources/files/content_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Files::ContentTest < Hanzoai::Test::ResourceTest def test_retrieve_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.files.content.retrieve("file_id", provider: "provider") assert_pattern do diff --git a/test/hanzoai/resources/files_test.rb b/test/hanzoai/resources/files_test.rb index 91d656a7..b80b0cd5 100644 --- a/test/hanzoai/resources/files_test.rb +++ b/test/hanzoai/resources/files_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::FilesTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.files.create("provider", file: Pathname(__FILE__), purpose: "purpose") assert_pattern do @@ -12,6 +14,8 @@ def test_create_required_params end def test_retrieve_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.files.retrieve("file_id", provider: "provider") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve_required_params end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.files.list("provider") assert_pattern do @@ -28,6 +34,8 @@ def test_list end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.files.delete("file_id", provider: "provider") assert_pattern do diff --git a/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb b/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb index 3f057649..daeba7fe 100644 --- a/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb +++ b/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::FineTuning::Jobs::CancelTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.fine_tuning.jobs.cancel.create("fine_tuning_job_id") assert_pattern do diff --git a/test/hanzoai/resources/fine_tuning/jobs_test.rb b/test/hanzoai/resources/fine_tuning/jobs_test.rb index ef0309a4..cd344fb6 100644 --- a/test/hanzoai/resources/fine_tuning/jobs_test.rb +++ b/test/hanzoai/resources/fine_tuning/jobs_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::FineTuning::JobsTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.fine_tuning.jobs.create( custom_llm_provider: :openai, @@ -17,6 +19,8 @@ def test_create_required_params end def test_retrieve_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.fine_tuning.jobs.retrieve("fine_tuning_job_id", custom_llm_provider: :openai) assert_pattern do @@ -25,6 +29,8 @@ def test_retrieve_required_params end def test_list_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.fine_tuning.jobs.list(custom_llm_provider: :openai) assert_pattern do diff --git a/test/hanzoai/resources/gemini_test.rb b/test/hanzoai/resources/gemini_test.rb index 258048c8..67b3c283 100644 --- a/test/hanzoai/resources/gemini_test.rb +++ b/test/hanzoai/resources/gemini_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::GeminiTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.gemini.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.gemini.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.gemini.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.gemini.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.gemini.patch("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/global/spend_test.rb b/test/hanzoai/resources/global/spend_test.rb index 719dfde9..408d517f 100644 --- a/test/hanzoai/resources/global/spend_test.rb +++ b/test/hanzoai/resources/global/spend_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Global::SpendTest < Hanzoai::Test::ResourceTest def test_list_tags + skip("skipped: tests are disabled for the time being") + response = @hanzo.global.spend.list_tags assert_pattern do @@ -12,6 +14,8 @@ def test_list_tags end def test_reset + skip("skipped: tests are disabled for the time being") + response = @hanzo.global.spend.reset assert_pattern do @@ -20,6 +24,8 @@ def test_reset end def test_retrieve_report + skip("skipped: tests are disabled for the time being") + response = @hanzo.global.spend.retrieve_report assert_pattern do diff --git a/test/hanzoai/resources/guardrails_test.rb b/test/hanzoai/resources/guardrails_test.rb index 720401dd..a76c5d13 100644 --- a/test/hanzoai/resources/guardrails_test.rb +++ b/test/hanzoai/resources/guardrails_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::GuardrailsTest < Hanzoai::Test::ResourceTest def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.guardrails.list assert_pattern do diff --git a/test/hanzoai/resources/health_test.rb b/test/hanzoai/resources/health_test.rb index d384c10a..cb22da95 100644 --- a/test/hanzoai/resources/health_test.rb +++ b/test/hanzoai/resources/health_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::HealthTest < Hanzoai::Test::ResourceTest def test_check_all + skip("skipped: tests are disabled for the time being") + response = @hanzo.health.check_all assert_pattern do @@ -12,6 +14,8 @@ def test_check_all end def test_check_liveliness + skip("skipped: tests are disabled for the time being") + response = @hanzo.health.check_liveliness assert_pattern do @@ -20,6 +24,8 @@ def test_check_liveliness end def test_check_liveness + skip("skipped: tests are disabled for the time being") + response = @hanzo.health.check_liveness assert_pattern do @@ -28,6 +34,8 @@ def test_check_liveness end def test_check_readiness + skip("skipped: tests are disabled for the time being") + response = @hanzo.health.check_readiness assert_pattern do @@ -36,6 +44,8 @@ def test_check_readiness end def test_check_services_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.health.check_services(service: :slack_budget_alerts) assert_pattern do diff --git a/test/hanzoai/resources/images/generations_test.rb b/test/hanzoai/resources/images/generations_test.rb index ce4fdf55..37f4c1de 100644 --- a/test/hanzoai/resources/images/generations_test.rb +++ b/test/hanzoai/resources/images/generations_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Images::GenerationsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.images.generations.create assert_pattern do diff --git a/test/hanzoai/resources/key_test.rb b/test/hanzoai/resources/key_test.rb index eb4bb334..52de1fbd 100644 --- a/test/hanzoai/resources/key_test.rb +++ b/test/hanzoai/resources/key_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::KeyTest < Hanzoai::Test::ResourceTest def test_update_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.update(key: "key") assert_pattern do @@ -12,6 +14,8 @@ def test_update_required_params end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.list assert_pattern do @@ -29,6 +33,8 @@ def test_list end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.delete assert_pattern do @@ -37,6 +43,8 @@ def test_delete end def test_block_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.block(key: "key") assert_pattern do @@ -79,6 +87,8 @@ def test_block_required_params end def test_check_health + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.check_health assert_pattern do @@ -94,6 +104,8 @@ def test_check_health end def test_generate + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.generate assert_pattern do @@ -139,6 +151,8 @@ def test_generate end def test_regenerate_by_key + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.regenerate_by_key("key") assert_pattern do @@ -184,6 +198,8 @@ def test_regenerate_by_key end def test_retrieve_info + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.retrieve_info assert_pattern do @@ -192,6 +208,8 @@ def test_retrieve_info end def test_unblock_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.key.unblock(key: "key") assert_pattern do diff --git a/test/hanzoai/resources/langfuse_test.rb b/test/hanzoai/resources/langfuse_test.rb index a7347f50..825d31bb 100644 --- a/test/hanzoai/resources/langfuse_test.rb +++ b/test/hanzoai/resources/langfuse_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::LangfuseTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.langfuse.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.langfuse.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.langfuse.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.langfuse.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.langfuse.patch("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/model/info_test.rb b/test/hanzoai/resources/model/info_test.rb index 4dc659cc..4fade692 100644 --- a/test/hanzoai/resources/model/info_test.rb +++ b/test/hanzoai/resources/model/info_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Model::InfoTest < Hanzoai::Test::ResourceTest def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.model.info.list assert_pattern do diff --git a/test/hanzoai/resources/model/update_test.rb b/test/hanzoai/resources/model/update_test.rb index 58865b7c..fc4b5a87 100644 --- a/test/hanzoai/resources/model/update_test.rb +++ b/test/hanzoai/resources/model/update_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Model::UpdateTest < Hanzoai::Test::ResourceTest def test_full + skip("skipped: tests are disabled for the time being") + response = @hanzo.model.update.full assert_pattern do @@ -12,6 +14,8 @@ def test_full end def test_partial + skip("skipped: tests are disabled for the time being") + response = @hanzo.model.update.partial("model_id") assert_pattern do diff --git a/test/hanzoai/resources/model_group_test.rb b/test/hanzoai/resources/model_group_test.rb index 5deb0ce7..116a33de 100644 --- a/test/hanzoai/resources/model_group_test.rb +++ b/test/hanzoai/resources/model_group_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ModelGroupTest < Hanzoai::Test::ResourceTest def test_retrieve_info + skip("skipped: tests are disabled for the time being") + response = @hanzo.model_group.retrieve_info assert_pattern do diff --git a/test/hanzoai/resources/model_test.rb b/test/hanzoai/resources/model_test.rb index 51ea327a..436c96ab 100644 --- a/test/hanzoai/resources/model_test.rb +++ b/test/hanzoai/resources/model_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ModelTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.model.create(llm_params: {model: "model"}, model_info: {id: "id"}, model_name: "model_name") @@ -13,6 +15,8 @@ def test_create_required_params end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.model.delete(id: "id") assert_pattern do diff --git a/test/hanzoai/resources/models_test.rb b/test/hanzoai/resources/models_test.rb index a9c38324..d7d96e6a 100644 --- a/test/hanzoai/resources/models_test.rb +++ b/test/hanzoai/resources/models_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ModelsTest < Hanzoai::Test::ResourceTest def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.models.list assert_pattern do diff --git a/test/hanzoai/resources/moderations_test.rb b/test/hanzoai/resources/moderations_test.rb index 8a4d5ffe..475fcf5d 100644 --- a/test/hanzoai/resources/moderations_test.rb +++ b/test/hanzoai/resources/moderations_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ModerationsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.moderations.create assert_pattern do diff --git a/test/hanzoai/resources/openai/deployments/chat_test.rb b/test/hanzoai/resources/openai/deployments/chat_test.rb index f62826b8..736cf185 100644 --- a/test/hanzoai/resources/openai/deployments/chat_test.rb +++ b/test/hanzoai/resources/openai/deployments/chat_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::OpenAI::Deployments::ChatTest < Hanzoai::Test::ResourceTest def test_complete + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.deployments.chat.complete("model") assert_pattern do diff --git a/test/hanzoai/resources/openai/deployments_test.rb b/test/hanzoai/resources/openai/deployments_test.rb index 9a167871..41d63100 100644 --- a/test/hanzoai/resources/openai/deployments_test.rb +++ b/test/hanzoai/resources/openai/deployments_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::OpenAI::DeploymentsTest < Hanzoai::Test::ResourceTest def test_complete + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.deployments.complete("model") assert_pattern do @@ -12,6 +14,8 @@ def test_complete end def test_embed + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.deployments.embed("model") assert_pattern do diff --git a/test/hanzoai/resources/openai_test.rb b/test/hanzoai/resources/openai_test.rb index 769e8d1e..a1121c57 100644 --- a/test/hanzoai/resources/openai_test.rb +++ b/test/hanzoai/resources/openai_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::OpenAITest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.openai.patch("endpoint") assert_pattern do diff --git a/test/hanzoai/resources/organization/info_test.rb b/test/hanzoai/resources/organization/info_test.rb index 212b9b0a..7130bd00 100644 --- a/test/hanzoai/resources/organization/info_test.rb +++ b/test/hanzoai/resources/organization/info_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Organization::InfoTest < Hanzoai::Test::ResourceTest def test_retrieve_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.info.retrieve(organization_id: "organization_id") assert_pattern do @@ -30,6 +32,8 @@ def test_retrieve_required_params end def test_deprecated_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.info.deprecated(organizations: ["string"]) assert_pattern do diff --git a/test/hanzoai/resources/organization_test.rb b/test/hanzoai/resources/organization_test.rb index 0aff2ded..a5ca3b80 100644 --- a/test/hanzoai/resources/organization_test.rb +++ b/test/hanzoai/resources/organization_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::OrganizationTest < Hanzoai::Test::ResourceTest def test_create_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.create(organization_alias: "organization_alias") assert_pattern do @@ -27,6 +29,8 @@ def test_create_required_params end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.update assert_pattern do @@ -53,6 +57,8 @@ def test_update end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.list assert_pattern do @@ -61,6 +67,8 @@ def test_list end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.delete(organization_ids: ["string"]) assert_pattern do @@ -69,6 +77,8 @@ def test_delete_required_params end def test_add_member_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.add_member(member: [{role: :org_admin}], organization_id: "organization_id") @@ -86,6 +96,8 @@ def test_add_member_required_params end def test_delete_member_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.delete_member(organization_id: "organization_id") assert_pattern do @@ -94,6 +106,8 @@ def test_delete_member_required_params end def test_update_member_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.organization.update_member(organization_id: "organization_id") assert_pattern do diff --git a/test/hanzoai/resources/provider_test.rb b/test/hanzoai/resources/provider_test.rb index e3917a79..e6434a82 100644 --- a/test/hanzoai/resources/provider_test.rb +++ b/test/hanzoai/resources/provider_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ProviderTest < Hanzoai::Test::ResourceTest def test_list_budgets + skip("skipped: tests are disabled for the time being") + response = @hanzo.provider.list_budgets assert_pattern do diff --git a/test/hanzoai/resources/rerank_test.rb b/test/hanzoai/resources/rerank_test.rb index d1fe24e6..a60c56ff 100644 --- a/test/hanzoai/resources/rerank_test.rb +++ b/test/hanzoai/resources/rerank_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::RerankTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.rerank.create assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_create_v1 + skip("skipped: tests are disabled for the time being") + response = @hanzo.rerank.create_v1 assert_pattern do @@ -20,6 +24,8 @@ def test_create_v1 end def test_create_v2 + skip("skipped: tests are disabled for the time being") + response = @hanzo.rerank.create_v2 assert_pattern do diff --git a/test/hanzoai/resources/responses/input_items_test.rb b/test/hanzoai/resources/responses/input_items_test.rb index 954b3fcc..4f9119b1 100644 --- a/test/hanzoai/resources/responses/input_items_test.rb +++ b/test/hanzoai/resources/responses/input_items_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Responses::InputItemsTest < Hanzoai::Test::ResourceTest def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.responses.input_items.list("response_id") assert_pattern do diff --git a/test/hanzoai/resources/responses_test.rb b/test/hanzoai/resources/responses_test.rb index a1e93c41..79ff2aeb 100644 --- a/test/hanzoai/resources/responses_test.rb +++ b/test/hanzoai/resources/responses_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ResponsesTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.responses.create assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.responses.retrieve("response_id") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.responses.delete("response_id") assert_pattern do diff --git a/test/hanzoai/resources/routes_test.rb b/test/hanzoai/resources/routes_test.rb index 0f9a002e..5517fa81 100644 --- a/test/hanzoai/resources/routes_test.rb +++ b/test/hanzoai/resources/routes_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::RoutesTest < Hanzoai::Test::ResourceTest def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.routes.list assert_pattern do diff --git a/test/hanzoai/resources/settings_test.rb b/test/hanzoai/resources/settings_test.rb index 0ce85966..0a868830 100644 --- a/test/hanzoai/resources/settings_test.rb +++ b/test/hanzoai/resources/settings_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::SettingsTest < Hanzoai::Test::ResourceTest def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.settings.retrieve assert_pattern do diff --git a/test/hanzoai/resources/spend_test.rb b/test/hanzoai/resources/spend_test.rb index 53e37d8e..eef16e86 100644 --- a/test/hanzoai/resources/spend_test.rb +++ b/test/hanzoai/resources/spend_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::SpendTest < Hanzoai::Test::ResourceTest def test_calculate_spend + skip("skipped: tests are disabled for the time being") + response = @hanzo.spend.calculate_spend assert_pattern do @@ -12,6 +14,8 @@ def test_calculate_spend end def test_list_logs + skip("skipped: tests are disabled for the time being") + response = @hanzo.spend.list_logs assert_pattern do @@ -20,6 +24,8 @@ def test_list_logs end def test_list_tags + skip("skipped: tests are disabled for the time being") + response = @hanzo.spend.list_tags assert_pattern do diff --git a/test/hanzoai/resources/team/callback_test.rb b/test/hanzoai/resources/team/callback_test.rb index 0accd92f..e321770a 100644 --- a/test/hanzoai/resources/team/callback_test.rb +++ b/test/hanzoai/resources/team/callback_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Team::CallbackTest < Hanzoai::Test::ResourceTest def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.callback.retrieve("team_id") assert_pattern do @@ -12,6 +14,8 @@ def test_retrieve end def test_add_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.callback.add("team_id", callback_name: "callback_name", callback_vars: {foo: "string"}) diff --git a/test/hanzoai/resources/team/model_test.rb b/test/hanzoai/resources/team/model_test.rb index 6992ea47..b45a6b4c 100644 --- a/test/hanzoai/resources/team/model_test.rb +++ b/test/hanzoai/resources/team/model_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Team::ModelTest < Hanzoai::Test::ResourceTest def test_add_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.model.add(models: ["string"], team_id: "team_id") assert_pattern do @@ -12,6 +14,8 @@ def test_add_required_params end def test_remove_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.model.remove(models: ["string"], team_id: "team_id") assert_pattern do diff --git a/test/hanzoai/resources/team_test.rb b/test/hanzoai/resources/team_test.rb index 4cee505a..933f7e94 100644 --- a/test/hanzoai/resources/team_test.rb +++ b/test/hanzoai/resources/team_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::TeamTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.create assert_pattern do @@ -36,6 +38,8 @@ def test_create end def test_update_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.update(team_id: "team_id") assert_pattern do @@ -44,6 +48,8 @@ def test_update_required_params end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.list assert_pattern do @@ -52,6 +58,8 @@ def test_list end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.delete(team_ids: ["string"]) assert_pattern do @@ -60,6 +68,8 @@ def test_delete_required_params end def test_add_member_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.add_member(member: [{role: :admin}], team_id: "team_id") assert_pattern do @@ -94,6 +104,8 @@ def test_add_member_required_params end def test_block_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.block(team_id: "team_id") assert_pattern do @@ -102,6 +114,8 @@ def test_block_required_params end def test_disable_logging + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.disable_logging("team_id") assert_pattern do @@ -110,6 +124,8 @@ def test_disable_logging end def test_list_available + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.list_available assert_pattern do @@ -118,6 +134,8 @@ def test_list_available end def test_remove_member_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.remove_member(team_id: "team_id") assert_pattern do @@ -126,6 +144,8 @@ def test_remove_member_required_params end def test_retrieve_info + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.retrieve_info assert_pattern do @@ -134,6 +154,8 @@ def test_retrieve_info end def test_unblock_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.unblock(team_id: "team_id") assert_pattern do @@ -142,6 +164,8 @@ def test_unblock_required_params end def test_update_member_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.team.update_member(team_id: "team_id") assert_pattern do diff --git a/test/hanzoai/resources/test_test.rb b/test/hanzoai/resources/test_test.rb index 3163a5db..f827decc 100644 --- a/test/hanzoai/resources/test_test.rb +++ b/test/hanzoai/resources/test_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::TestTest < Hanzoai::Test::ResourceTest def test_ping + skip("skipped: tests are disabled for the time being") + response = @hanzo.test_.ping assert_pattern do diff --git a/test/hanzoai/resources/threads/messages_test.rb b/test/hanzoai/resources/threads/messages_test.rb index 0c238c03..7c4634bd 100644 --- a/test/hanzoai/resources/threads/messages_test.rb +++ b/test/hanzoai/resources/threads/messages_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Threads::MessagesTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.threads.messages.create("thread_id") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.threads.messages.list("thread_id") assert_pattern do diff --git a/test/hanzoai/resources/threads/runs_test.rb b/test/hanzoai/resources/threads/runs_test.rb index 8af632e7..1bfbf5fe 100644 --- a/test/hanzoai/resources/threads/runs_test.rb +++ b/test/hanzoai/resources/threads/runs_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::Threads::RunsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.threads.runs.create("thread_id") assert_pattern do diff --git a/test/hanzoai/resources/threads_test.rb b/test/hanzoai/resources/threads_test.rb index a08c96b8..a3af7f67 100644 --- a/test/hanzoai/resources/threads_test.rb +++ b/test/hanzoai/resources/threads_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::ThreadsTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.threads.create assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.threads.retrieve("thread_id") assert_pattern do diff --git a/test/hanzoai/resources/user_test.rb b/test/hanzoai/resources/user_test.rb index 1952172f..ce74feff 100644 --- a/test/hanzoai/resources/user_test.rb +++ b/test/hanzoai/resources/user_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::UserTest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.user.create assert_pattern do @@ -53,6 +55,8 @@ def test_create end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.user.update assert_pattern do @@ -61,6 +65,8 @@ def test_update end def test_list + skip("skipped: tests are disabled for the time being") + response = @hanzo.user.list assert_pattern do @@ -69,6 +75,8 @@ def test_list end def test_delete_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.user.delete(user_ids: ["string"]) assert_pattern do @@ -77,6 +85,8 @@ def test_delete_required_params end def test_retrieve_info + skip("skipped: tests are disabled for the time being") + response = @hanzo.user.retrieve_info assert_pattern do diff --git a/test/hanzoai/resources/utils_test.rb b/test/hanzoai/resources/utils_test.rb index 32d05b6f..54aee497 100644 --- a/test/hanzoai/resources/utils_test.rb +++ b/test/hanzoai/resources/utils_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::UtilsTest < Hanzoai::Test::ResourceTest def test_get_supported_openai_params_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.utils.get_supported_openai_params(model: "model") assert_pattern do @@ -12,6 +14,8 @@ def test_get_supported_openai_params_required_params end def test_token_counter_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.utils.token_counter(model: "model") assert_pattern do @@ -29,6 +33,8 @@ def test_token_counter_required_params end def test_transform_request_required_params + skip("skipped: tests are disabled for the time being") + response = @hanzo.utils.transform_request(call_type: :embedding, request_body: {}) assert_pattern do diff --git a/test/hanzoai/resources/vertex_ai_test.rb b/test/hanzoai/resources/vertex_ai_test.rb index 810e0fd0..f5d73602 100644 --- a/test/hanzoai/resources/vertex_ai_test.rb +++ b/test/hanzoai/resources/vertex_ai_test.rb @@ -4,6 +4,8 @@ class Hanzoai::Test::Resources::VertexAITest < Hanzoai::Test::ResourceTest def test_create + skip("skipped: tests are disabled for the time being") + response = @hanzo.vertex_ai.create("endpoint") assert_pattern do @@ -12,6 +14,8 @@ def test_create end def test_retrieve + skip("skipped: tests are disabled for the time being") + response = @hanzo.vertex_ai.retrieve("endpoint") assert_pattern do @@ -20,6 +24,8 @@ def test_retrieve end def test_update + skip("skipped: tests are disabled for the time being") + response = @hanzo.vertex_ai.update("endpoint") assert_pattern do @@ -28,6 +34,8 @@ def test_update end def test_delete + skip("skipped: tests are disabled for the time being") + response = @hanzo.vertex_ai.delete("endpoint") assert_pattern do @@ -36,6 +44,8 @@ def test_delete end def test_patch + skip("skipped: tests are disabled for the time being") + response = @hanzo.vertex_ai.patch("endpoint") assert_pattern do From b29e255634140514e94eb96aa61e9dc36404024c Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 03:52:34 +0000 Subject: [PATCH 059/139] chore(internal): codegen related update --- .github/workflows/ci.yml | 2 - .github/workflows/publish-gem.yml | 1 - .gitignore | 1 + .ruby-version | 2 +- Gemfile.lock | 47 ++++++++++--------- README.md | 8 ++-- Rakefile | 4 +- hanzoai.gemspec | 2 +- lib/hanzoai/internal/transport/base_client.rb | 2 +- lib/hanzoai/internal/util.rb | 6 +-- rbi/hanzoai/errors.rbi | 2 +- 11 files changed, 38 insertions(+), 39 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bdfd9387..244687d4 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.1' - run: |- bundle install @@ -36,7 +35,6 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.1' - run: |- bundle install diff --git a/.github/workflows/publish-gem.yml b/.github/workflows/publish-gem.yml index 77478991..c566b7c1 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -19,7 +19,6 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.1' - 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 fd2a0186..944880fa 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.1.0 +3.2.0 diff --git a/Gemfile.lock b/Gemfile.lock index fcf5292d..db353017 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.12046) + sorbet-static (= 0.5.12046) + sorbet-runtime (0.5.12046) + sorbet-static (0.5.12046-x86_64-linux) + sorbet-static-and-runtime (0.5.12046) + sorbet (= 0.5.12046) + sorbet-runtime (= 0.5.12046) 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 b4bd1a2c..0089a92f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Hanzo Ruby API library -The Hanzo Ruby library provides convenient access to the Hanzo REST API from any Ruby 3.1.0+ application. +The Hanzo Ruby library provides convenient access to the Hanzo REST API from any Ruby 3.2.0+ application. It is generated with [Stainless](https://www.stainless.com/). @@ -50,7 +50,7 @@ hanzo.get_home ### 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" @@ -77,7 +77,7 @@ rescue Hanzoai::Errors::APIError => e end ``` -Error codes are as followed: +Error codes are as follows: | Cause | Error Type | | ---------------- | -------------------------- | @@ -202,7 +202,7 @@ This package considers improvements to the (non-runtime) `*.rbi` and `*.rbs` typ ## Requirements -Ruby 3.1.0 or higher. +Ruby 3.2.0 or higher. ## Contributing diff --git a/Rakefile b/Rakefile index 97b1805c..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) @@ -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/hanzoai.gemspec b/hanzoai.gemspec index 4ce5ce65..bf00bfca 100644 --- a/hanzoai.gemspec +++ b/hanzoai.gemspec @@ -12,7 +12,7 @@ Gem::Specification.new do |s| s.metadata["homepage_uri"] = s.homepage s.metadata["source_code_uri"] = "https://github.com/hanzoai/ruby-sdk" s.metadata["rubygems_mfa_required"] = false.to_s - s.required_ruby_version = ">= 3.0.0" + s.required_ruby_version = ">= 3.2.0" s.files = Dir[ "lib/**/*.rb", diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 9cc5403e..5f572516 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/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/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 700e1906..02e3fa18 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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 @@ -570,9 +570,9 @@ def encode_content(headers, body) content_type = headers["content-type"] case [content_type, body] in [Hanzoai::Internal::Util::JSON_CONTENT, Hash | Array | -> { primitive?(_1) }] - [headers, JSON.fast_generate(body)] + [headers, JSON.generate(body)] in [Hanzoai::Internal::Util::JSONL_CONTENT, Enumerable] unless body.is_a?(Hanzoai::Internal::Type::FileInput) - [headers, body.lazy.map { JSON.fast_generate(_1) }] + [headers, body.lazy.map { JSON.generate(_1) }] in [%r{^multipart/form-data}, Hash | Hanzoai::Internal::Type::FileInput] boundary, strio = encode_multipart_streaming(body) headers = {**headers, "content-type" => "#{content_type}; boundary=#{boundary}"} diff --git a/rbi/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi index 2cd5a9e6..0049c9c0 100644 --- a/rbi/hanzoai/errors.rbi +++ b/rbi/hanzoai/errors.rbi @@ -137,7 +137,7 @@ module Hanzoai end class InternalServerError < Hanzoai::Errors::APIStatusError - HTTP_STATUS = T.let((500..), T::Range[Integer]) + HTTP_STATUS = T.let(500.., T::Range[Integer]) end end end From d5bd829faff4b74c3ec1d772aa4a3675c91f19ad Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 2 May 2025 03:24:31 +0000 Subject: [PATCH 060/139] chore: remove Gemfile.lock during bootstrap --- Gemfile.lock | 14 +++++++------- scripts/bootstrap | 1 + 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index db353017..bdfadae3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -121,13 +121,13 @@ GEM prism (~> 1.4) ruby-progressbar (1.13.0) securerandom (0.4.1) - sorbet (0.5.12046) - sorbet-static (= 0.5.12046) - sorbet-runtime (0.5.12046) - sorbet-static (0.5.12046-x86_64-linux) - sorbet-static-and-runtime (0.5.12046) - sorbet (= 0.5.12046) - sorbet-runtime (= 0.5.12046) + 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) 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 efba0fdf0a69b579f2cf317e877173a687181536 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 2 May 2025 03:25:42 +0000 Subject: [PATCH 061/139] chore: reorganize type aliases --- lib/hanzoai.rb | 159 ++++++++++++++++++ .../models/active_list_callbacks_response.rb | 8 + .../models/add_add_allowed_ip_response.rb | 8 + .../models/anthropic_create_response.rb | 8 + .../models/anthropic_delete_response.rb | 8 + .../models/anthropic_modify_response.rb | 8 + .../models/anthropic_retrieve_response.rb | 8 + .../models/anthropic_update_response.rb | 8 + .../models/assemblyai_create_response.rb | 8 + .../models/assemblyai_delete_response.rb | 8 + .../models/assemblyai_patch_response.rb | 8 + .../models/assemblyai_retrieve_response.rb | 8 + .../models/assemblyai_update_response.rb | 8 + .../models/assistant_create_response.rb | 8 + .../models/assistant_delete_response.rb | 8 + lib/hanzoai/models/assistant_list_response.rb | 8 + .../models/audio/speech_create_response.rb | 10 ++ .../audio/transcription_create_response.rb | 10 ++ lib/hanzoai/models/azure_call_response.rb | 8 + lib/hanzoai/models/azure_create_response.rb | 8 + lib/hanzoai/models/azure_delete_response.rb | 8 + lib/hanzoai/models/azure_patch_response.rb | 8 + lib/hanzoai/models/azure_update_response.rb | 8 + .../batch_cancel_with_provider_response.rb | 8 + lib/hanzoai/models/batch_create_response.rb | 8 + .../batch_create_with_provider_response.rb | 8 + lib/hanzoai/models/batch_list_response.rb | 8 + .../batch_list_with_provider_response.rb | 8 + lib/hanzoai/models/batch_retrieve_response.rb | 8 + .../batch_retrieve_with_provider_response.rb | 8 + .../models/batches/cancel_cancel_response.rb | 10 ++ lib/hanzoai/models/bedrock_create_response.rb | 8 + lib/hanzoai/models/bedrock_delete_response.rb | 8 + lib/hanzoai/models/bedrock_patch_response.rb | 8 + .../models/bedrock_retrieve_response.rb | 8 + lib/hanzoai/models/bedrock_update_response.rb | 8 + lib/hanzoai/models/budget_create_response.rb | 8 + lib/hanzoai/models/budget_delete_response.rb | 8 + lib/hanzoai/models/budget_info_response.rb | 8 + lib/hanzoai/models/budget_list_response.rb | 8 + .../models/budget_settings_response.rb | 8 + lib/hanzoai/models/budget_update_response.rb | 8 + .../cache/redi_retrieve_info_response.rb | 10 ++ lib/hanzoai/models/cache_delete_response.rb | 8 + .../models/cache_flush_all_response.rb | 8 + .../models/chat/completion_create_response.rb | 10 ++ lib/hanzoai/models/cohere_create_response.rb | 8 + lib/hanzoai/models/cohere_delete_response.rb | 8 + lib/hanzoai/models/cohere_modify_response.rb | 8 + .../models/cohere_retrieve_response.rb | 8 + lib/hanzoai/models/cohere_update_response.rb | 8 + .../models/completion_create_response.rb | 8 + .../pass_through_endpoint_create_response.rb | 10 ++ .../pass_through_endpoint_update_response.rb | 10 ++ .../models/credential_create_response.rb | 8 + .../models/credential_delete_response.rb | 8 + .../models/credential_list_response.rb | 8 + lib/hanzoai/models/customer_block_response.rb | 8 + .../models/customer_create_response.rb | 8 + .../models/customer_delete_response.rb | 8 + .../models/customer_unblock_response.rb | 8 + .../models/customer_update_response.rb | 8 + .../delete_create_allowed_ip_response.rb | 8 + .../models/embedding_create_response.rb | 8 + .../models/engine_complete_response.rb | 8 + lib/hanzoai/models/engine_embed_response.rb | 8 + .../models/engines/chat_complete_response.rb | 10 ++ .../models/eu_assemblyai_create_response.rb | 8 + .../models/eu_assemblyai_delete_response.rb | 8 + .../models/eu_assemblyai_patch_response.rb | 8 + .../models/eu_assemblyai_retrieve_response.rb | 8 + .../models/eu_assemblyai_update_response.rb | 8 + lib/hanzoai/models/file_create_response.rb | 8 + lib/hanzoai/models/file_delete_response.rb | 8 + lib/hanzoai/models/file_list_response.rb | 8 + lib/hanzoai/models/file_retrieve_response.rb | 8 + .../models/files/content_retrieve_response.rb | 10 ++ .../models/fine_tuning/job_create_response.rb | 10 ++ .../models/fine_tuning/job_list_response.rb | 10 ++ .../fine_tuning/job_retrieve_response.rb | 10 ++ .../jobs/cancel_create_response.rb | 12 ++ lib/hanzoai/models/gemini_create_response.rb | 8 + lib/hanzoai/models/gemini_delete_response.rb | 8 + lib/hanzoai/models/gemini_patch_response.rb | 8 + .../models/gemini_retrieve_response.rb | 8 + lib/hanzoai/models/gemini_update_response.rb | 8 + lib/hanzoai/models/get_home_response.rb | 8 + .../models/global/spend_reset_response.rb | 10 ++ .../models/health_check_all_response.rb | 8 + .../health_check_liveliness_response.rb | 8 + .../models/health_check_liveness_response.rb | 8 + .../models/health_check_readiness_response.rb | 8 + .../models/health_check_services_response.rb | 8 + .../images/generation_create_response.rb | 10 ++ lib/hanzoai/models/key_delete_response.rb | 8 + .../models/key_retrieve_info_response.rb | 8 + lib/hanzoai/models/key_unblock_response.rb | 8 + lib/hanzoai/models/key_update_response.rb | 8 + .../models/langfuse_create_response.rb | 8 + .../models/langfuse_delete_response.rb | 8 + lib/hanzoai/models/langfuse_patch_response.rb | 8 + .../models/langfuse_retrieve_response.rb | 8 + .../models/langfuse_update_response.rb | 8 + .../models/model/info_list_response.rb | 10 ++ .../models/model/update_full_response.rb | 10 ++ .../models/model/update_partial_response.rb | 10 ++ lib/hanzoai/models/model_create_response.rb | 8 + lib/hanzoai/models/model_delete_response.rb | 8 + .../model_group_retrieve_info_response.rb | 8 + lib/hanzoai/models/model_list_response.rb | 8 + .../models/moderation_create_response.rb | 8 + .../openai/deployment_complete_response.rb | 10 ++ .../openai/deployment_embed_response.rb | 10 ++ .../deployments/chat_complete_response.rb | 12 ++ lib/hanzoai/models/openai_create_response.rb | 8 + lib/hanzoai/models/openai_delete_response.rb | 8 + lib/hanzoai/models/openai_patch_response.rb | 8 + .../models/openai_retrieve_response.rb | 8 + lib/hanzoai/models/openai_update_response.rb | 8 + .../organization/info_deprecated_response.rb | 10 ++ .../organization_delete_member_response.rb | 8 + lib/hanzoai/models/rerank_create_response.rb | 8 + .../models/rerank_create_v1_response.rb | 8 + .../models/rerank_create_v2_response.rb | 8 + .../models/response_create_response.rb | 8 + .../models/response_delete_response.rb | 8 + .../models/response_retrieve_response.rb | 8 + .../responses/input_item_list_response.rb | 10 ++ lib/hanzoai/models/route_list_response.rb | 8 + .../models/setting_retrieve_response.rb | 8 + .../models/spend_calculate_spend_response.rb | 8 + .../models/team/callback_add_response.rb | 10 ++ .../models/team/callback_retrieve_response.rb | 10 ++ lib/hanzoai/models/team/model_add_response.rb | 10 ++ .../models/team/model_remove_response.rb | 10 ++ lib/hanzoai/models/team_block_response.rb | 8 + lib/hanzoai/models/team_delete_response.rb | 8 + .../models/team_disable_logging_response.rb | 8 + .../models/team_list_available_response.rb | 8 + lib/hanzoai/models/team_list_response.rb | 8 + .../models/team_remove_member_response.rb | 8 + .../models/team_retrieve_info_response.rb | 8 + lib/hanzoai/models/team_unblock_response.rb | 8 + lib/hanzoai/models/team_update_response.rb | 8 + lib/hanzoai/models/test_ping_response.rb | 8 + lib/hanzoai/models/thread_create_response.rb | 8 + .../models/thread_retrieve_response.rb | 8 + .../models/threads/message_create_response.rb | 10 ++ .../models/threads/message_list_response.rb | 10 ++ .../models/threads/run_create_response.rb | 10 ++ lib/hanzoai/models/user_delete_response.rb | 8 + lib/hanzoai/models/user_list_response.rb | 8 + .../models/user_retrieve_info_response.rb | 8 + lib/hanzoai/models/user_update_response.rb | 8 + ...il_get_supported_openai_params_response.rb | 8 + .../models/vertex_ai_create_response.rb | 8 + .../models/vertex_ai_delete_response.rb | 8 + .../models/vertex_ai_patch_response.rb | 8 + .../models/vertex_ai_retrieve_response.rb | 8 + .../models/vertex_ai_update_response.rb | 8 + .../models/active_list_callbacks_response.rbi | 7 + .../models/add_add_allowed_ip_response.rbi | 7 + .../models/anthropic_create_response.rbi | 7 + .../models/anthropic_delete_response.rbi | 7 + .../models/anthropic_modify_response.rbi | 7 + .../models/anthropic_retrieve_response.rbi | 7 + .../models/anthropic_update_response.rbi | 7 + .../models/assemblyai_create_response.rbi | 7 + .../models/assemblyai_delete_response.rbi | 7 + .../models/assemblyai_patch_response.rbi | 7 + .../models/assemblyai_retrieve_response.rbi | 7 + .../models/assemblyai_update_response.rbi | 7 + .../models/assistant_create_response.rbi | 7 + .../models/assistant_delete_response.rbi | 7 + .../models/assistant_list_response.rbi | 7 + .../models/audio/speech_create_response.rbi | 9 + .../audio/transcription_create_response.rbi | 9 + rbi/hanzoai/models/azure_call_response.rbi | 7 + rbi/hanzoai/models/azure_create_response.rbi | 7 + rbi/hanzoai/models/azure_delete_response.rbi | 7 + rbi/hanzoai/models/azure_patch_response.rbi | 7 + rbi/hanzoai/models/azure_update_response.rbi | 7 + .../batch_cancel_with_provider_response.rbi | 7 + rbi/hanzoai/models/batch_create_response.rbi | 7 + .../batch_create_with_provider_response.rbi | 7 + rbi/hanzoai/models/batch_list_response.rbi | 7 + .../batch_list_with_provider_response.rbi | 7 + .../models/batch_retrieve_response.rbi | 7 + .../batch_retrieve_with_provider_response.rbi | 7 + .../models/batches/cancel_cancel_response.rbi | 9 + .../models/bedrock_create_response.rbi | 7 + .../models/bedrock_delete_response.rbi | 7 + rbi/hanzoai/models/bedrock_patch_response.rbi | 7 + .../models/bedrock_retrieve_response.rbi | 7 + .../models/bedrock_update_response.rbi | 7 + rbi/hanzoai/models/budget_create_response.rbi | 7 + rbi/hanzoai/models/budget_delete_response.rbi | 7 + rbi/hanzoai/models/budget_info_response.rbi | 7 + rbi/hanzoai/models/budget_list_response.rbi | 7 + .../models/budget_settings_response.rbi | 7 + rbi/hanzoai/models/budget_update_response.rbi | 7 + .../cache/redi_retrieve_info_response.rbi | 9 + rbi/hanzoai/models/cache_delete_response.rbi | 7 + .../models/cache_flush_all_response.rbi | 7 + .../chat/completion_create_response.rbi | 9 + rbi/hanzoai/models/cohere_create_response.rbi | 7 + rbi/hanzoai/models/cohere_delete_response.rbi | 7 + rbi/hanzoai/models/cohere_modify_response.rbi | 7 + .../models/cohere_retrieve_response.rbi | 7 + rbi/hanzoai/models/cohere_update_response.rbi | 7 + .../models/completion_create_response.rbi | 7 + .../pass_through_endpoint_create_response.rbi | 9 + .../pass_through_endpoint_update_response.rbi | 9 + .../models/credential_create_response.rbi | 7 + .../models/credential_delete_response.rbi | 7 + .../models/credential_list_response.rbi | 7 + .../models/customer_block_response.rbi | 7 + .../models/customer_create_response.rbi | 7 + .../models/customer_delete_response.rbi | 7 + .../models/customer_unblock_response.rbi | 7 + .../models/customer_update_response.rbi | 7 + .../delete_create_allowed_ip_response.rbi | 7 + .../models/embedding_create_response.rbi | 7 + .../models/engine_complete_response.rbi | 7 + rbi/hanzoai/models/engine_embed_response.rbi | 7 + .../models/engines/chat_complete_response.rbi | 9 + .../models/eu_assemblyai_create_response.rbi | 7 + .../models/eu_assemblyai_delete_response.rbi | 7 + .../models/eu_assemblyai_patch_response.rbi | 7 + .../eu_assemblyai_retrieve_response.rbi | 7 + .../models/eu_assemblyai_update_response.rbi | 7 + rbi/hanzoai/models/file_create_response.rbi | 7 + rbi/hanzoai/models/file_delete_response.rbi | 7 + rbi/hanzoai/models/file_list_response.rbi | 7 + rbi/hanzoai/models/file_retrieve_response.rbi | 7 + .../files/content_retrieve_response.rbi | 9 + .../fine_tuning/job_create_response.rbi | 9 + .../models/fine_tuning/job_list_response.rbi | 9 + .../fine_tuning/job_retrieve_response.rbi | 9 + .../jobs/cancel_create_response.rbi | 11 ++ rbi/hanzoai/models/gemini_create_response.rbi | 7 + rbi/hanzoai/models/gemini_delete_response.rbi | 7 + rbi/hanzoai/models/gemini_patch_response.rbi | 7 + .../models/gemini_retrieve_response.rbi | 7 + rbi/hanzoai/models/gemini_update_response.rbi | 7 + rbi/hanzoai/models/get_home_response.rbi | 7 + .../models/global/spend_reset_response.rbi | 9 + .../models/health_check_all_response.rbi | 7 + .../health_check_liveliness_response.rbi | 7 + .../models/health_check_liveness_response.rbi | 7 + .../health_check_readiness_response.rbi | 7 + .../models/health_check_services_response.rbi | 7 + .../images/generation_create_response.rbi | 9 + rbi/hanzoai/models/key_delete_response.rbi | 7 + .../models/key_retrieve_info_response.rbi | 7 + rbi/hanzoai/models/key_unblock_response.rbi | 7 + rbi/hanzoai/models/key_update_response.rbi | 7 + .../models/langfuse_create_response.rbi | 7 + .../models/langfuse_delete_response.rbi | 7 + .../models/langfuse_patch_response.rbi | 7 + .../models/langfuse_retrieve_response.rbi | 7 + .../models/langfuse_update_response.rbi | 7 + .../models/model/info_list_response.rbi | 9 + .../models/model/update_full_response.rbi | 9 + .../models/model/update_partial_response.rbi | 9 + rbi/hanzoai/models/model_create_response.rbi | 7 + rbi/hanzoai/models/model_delete_response.rbi | 7 + .../model_group_retrieve_info_response.rbi | 7 + rbi/hanzoai/models/model_list_response.rbi | 7 + .../models/moderation_create_response.rbi | 7 + .../openai/deployment_complete_response.rbi | 9 + .../openai/deployment_embed_response.rbi | 9 + .../deployments/chat_complete_response.rbi | 11 ++ rbi/hanzoai/models/openai_create_response.rbi | 7 + rbi/hanzoai/models/openai_delete_response.rbi | 7 + rbi/hanzoai/models/openai_patch_response.rbi | 7 + .../models/openai_retrieve_response.rbi | 7 + rbi/hanzoai/models/openai_update_response.rbi | 7 + .../organization/info_deprecated_response.rbi | 9 + .../organization_delete_member_response.rbi | 7 + rbi/hanzoai/models/rerank_create_response.rbi | 7 + .../models/rerank_create_v1_response.rbi | 7 + .../models/rerank_create_v2_response.rbi | 7 + .../models/response_create_response.rbi | 7 + .../models/response_delete_response.rbi | 7 + .../models/response_retrieve_response.rbi | 7 + .../responses/input_item_list_response.rbi | 9 + rbi/hanzoai/models/route_list_response.rbi | 7 + .../models/setting_retrieve_response.rbi | 7 + .../models/spend_calculate_spend_response.rbi | 7 + .../models/team/callback_add_response.rbi | 9 + .../team/callback_retrieve_response.rbi | 9 + .../models/team/model_add_response.rbi | 9 + .../models/team/model_remove_response.rbi | 9 + rbi/hanzoai/models/team_block_response.rbi | 7 + rbi/hanzoai/models/team_delete_response.rbi | 7 + .../models/team_disable_logging_response.rbi | 7 + .../models/team_list_available_response.rbi | 7 + rbi/hanzoai/models/team_list_response.rbi | 7 + .../models/team_remove_member_response.rbi | 7 + .../models/team_retrieve_info_response.rbi | 7 + rbi/hanzoai/models/team_unblock_response.rbi | 7 + rbi/hanzoai/models/team_update_response.rbi | 7 + rbi/hanzoai/models/test_ping_response.rbi | 7 + rbi/hanzoai/models/thread_create_response.rbi | 7 + .../models/thread_retrieve_response.rbi | 7 + .../threads/message_create_response.rbi | 9 + .../models/threads/message_list_response.rbi | 9 + .../models/threads/run_create_response.rbi | 9 + rbi/hanzoai/models/user_delete_response.rbi | 7 + rbi/hanzoai/models/user_list_response.rbi | 7 + .../models/user_retrieve_info_response.rbi | 7 + rbi/hanzoai/models/user_update_response.rbi | 7 + ...l_get_supported_openai_params_response.rbi | 7 + .../models/vertex_ai_create_response.rbi | 7 + .../models/vertex_ai_delete_response.rbi | 7 + .../models/vertex_ai_patch_response.rbi | 7 + .../models/vertex_ai_retrieve_response.rbi | 7 + .../models/vertex_ai_update_response.rbi | 7 + .../models/active_list_callbacks_response.rbs | 5 + .../models/add_add_allowed_ip_response.rbs | 5 + .../models/anthropic_create_response.rbs | 5 + .../models/anthropic_delete_response.rbs | 5 + .../models/anthropic_modify_response.rbs | 5 + .../models/anthropic_retrieve_response.rbs | 5 + .../models/anthropic_update_response.rbs | 5 + .../models/assemblyai_create_response.rbs | 5 + .../models/assemblyai_delete_response.rbs | 5 + .../models/assemblyai_patch_response.rbs | 5 + .../models/assemblyai_retrieve_response.rbs | 5 + .../models/assemblyai_update_response.rbs | 5 + .../models/assistant_create_response.rbs | 5 + .../models/assistant_delete_response.rbs | 5 + .../models/assistant_list_response.rbs | 5 + .../models/audio/speech_create_response.rbs | 7 + .../audio/transcription_create_response.rbs | 7 + sig/hanzoai/models/azure_call_response.rbs | 5 + sig/hanzoai/models/azure_create_response.rbs | 5 + sig/hanzoai/models/azure_delete_response.rbs | 5 + sig/hanzoai/models/azure_patch_response.rbs | 5 + sig/hanzoai/models/azure_update_response.rbs | 5 + .../batch_cancel_with_provider_response.rbs | 5 + sig/hanzoai/models/batch_create_response.rbs | 5 + .../batch_create_with_provider_response.rbs | 5 + sig/hanzoai/models/batch_list_response.rbs | 5 + .../batch_list_with_provider_response.rbs | 5 + .../models/batch_retrieve_response.rbs | 5 + .../batch_retrieve_with_provider_response.rbs | 5 + .../models/batches/cancel_cancel_response.rbs | 7 + .../models/bedrock_create_response.rbs | 5 + .../models/bedrock_delete_response.rbs | 5 + sig/hanzoai/models/bedrock_patch_response.rbs | 5 + .../models/bedrock_retrieve_response.rbs | 5 + .../models/bedrock_update_response.rbs | 5 + sig/hanzoai/models/budget_create_response.rbs | 5 + sig/hanzoai/models/budget_delete_response.rbs | 5 + sig/hanzoai/models/budget_info_response.rbs | 5 + sig/hanzoai/models/budget_list_response.rbs | 5 + .../models/budget_settings_response.rbs | 5 + sig/hanzoai/models/budget_update_response.rbs | 5 + .../cache/redi_retrieve_info_response.rbs | 7 + sig/hanzoai/models/cache_delete_response.rbs | 5 + .../models/cache_flush_all_response.rbs | 5 + .../chat/completion_create_response.rbs | 7 + sig/hanzoai/models/cohere_create_response.rbs | 5 + sig/hanzoai/models/cohere_delete_response.rbs | 5 + sig/hanzoai/models/cohere_modify_response.rbs | 5 + .../models/cohere_retrieve_response.rbs | 5 + sig/hanzoai/models/cohere_update_response.rbs | 5 + .../models/completion_create_response.rbs | 5 + .../pass_through_endpoint_create_response.rbs | 7 + .../pass_through_endpoint_update_response.rbs | 7 + .../models/credential_create_response.rbs | 5 + .../models/credential_delete_response.rbs | 5 + .../models/credential_list_response.rbs | 5 + .../models/customer_block_response.rbs | 5 + .../models/customer_create_response.rbs | 5 + .../models/customer_delete_response.rbs | 5 + .../models/customer_unblock_response.rbs | 5 + .../models/customer_update_response.rbs | 5 + .../delete_create_allowed_ip_response.rbs | 5 + .../models/embedding_create_response.rbs | 5 + .../models/engine_complete_response.rbs | 5 + sig/hanzoai/models/engine_embed_response.rbs | 5 + .../models/engines/chat_complete_response.rbs | 7 + .../models/eu_assemblyai_create_response.rbs | 5 + .../models/eu_assemblyai_delete_response.rbs | 5 + .../models/eu_assemblyai_patch_response.rbs | 5 + .../eu_assemblyai_retrieve_response.rbs | 5 + .../models/eu_assemblyai_update_response.rbs | 5 + sig/hanzoai/models/file_create_response.rbs | 5 + sig/hanzoai/models/file_delete_response.rbs | 5 + sig/hanzoai/models/file_list_response.rbs | 5 + sig/hanzoai/models/file_retrieve_response.rbs | 5 + .../files/content_retrieve_response.rbs | 7 + .../fine_tuning/job_create_response.rbs | 7 + .../models/fine_tuning/job_list_response.rbs | 7 + .../fine_tuning/job_retrieve_response.rbs | 7 + .../jobs/cancel_create_response.rbs | 9 + sig/hanzoai/models/gemini_create_response.rbs | 5 + sig/hanzoai/models/gemini_delete_response.rbs | 5 + sig/hanzoai/models/gemini_patch_response.rbs | 5 + .../models/gemini_retrieve_response.rbs | 5 + sig/hanzoai/models/gemini_update_response.rbs | 5 + sig/hanzoai/models/get_home_response.rbs | 5 + .../models/global/spend_reset_response.rbs | 7 + .../models/health_check_all_response.rbs | 5 + .../health_check_liveliness_response.rbs | 5 + .../models/health_check_liveness_response.rbs | 5 + .../health_check_readiness_response.rbs | 5 + .../models/health_check_services_response.rbs | 5 + .../images/generation_create_response.rbs | 7 + sig/hanzoai/models/key_delete_response.rbs | 5 + .../models/key_retrieve_info_response.rbs | 5 + sig/hanzoai/models/key_unblock_response.rbs | 5 + sig/hanzoai/models/key_update_response.rbs | 5 + .../models/langfuse_create_response.rbs | 5 + .../models/langfuse_delete_response.rbs | 5 + .../models/langfuse_patch_response.rbs | 5 + .../models/langfuse_retrieve_response.rbs | 5 + .../models/langfuse_update_response.rbs | 5 + .../models/model/info_list_response.rbs | 7 + .../models/model/update_full_response.rbs | 7 + .../models/model/update_partial_response.rbs | 7 + sig/hanzoai/models/model_create_response.rbs | 5 + sig/hanzoai/models/model_delete_response.rbs | 5 + .../model_group_retrieve_info_response.rbs | 5 + sig/hanzoai/models/model_list_response.rbs | 5 + .../models/moderation_create_response.rbs | 5 + .../openai/deployment_complete_response.rbs | 7 + .../openai/deployment_embed_response.rbs | 7 + .../deployments/chat_complete_response.rbs | 9 + sig/hanzoai/models/openai_create_response.rbs | 5 + sig/hanzoai/models/openai_delete_response.rbs | 5 + sig/hanzoai/models/openai_patch_response.rbs | 5 + .../models/openai_retrieve_response.rbs | 5 + sig/hanzoai/models/openai_update_response.rbs | 5 + .../organization/info_deprecated_response.rbs | 7 + .../organization_delete_member_response.rbs | 5 + sig/hanzoai/models/rerank_create_response.rbs | 5 + .../models/rerank_create_v1_response.rbs | 5 + .../models/rerank_create_v2_response.rbs | 5 + .../models/response_create_response.rbs | 5 + .../models/response_delete_response.rbs | 5 + .../models/response_retrieve_response.rbs | 5 + .../responses/input_item_list_response.rbs | 7 + sig/hanzoai/models/route_list_response.rbs | 5 + .../models/setting_retrieve_response.rbs | 5 + .../models/spend_calculate_spend_response.rbs | 5 + .../models/team/callback_add_response.rbs | 7 + .../team/callback_retrieve_response.rbs | 7 + .../models/team/model_add_response.rbs | 7 + .../models/team/model_remove_response.rbs | 7 + sig/hanzoai/models/team_block_response.rbs | 5 + sig/hanzoai/models/team_delete_response.rbs | 5 + .../models/team_disable_logging_response.rbs | 5 + .../models/team_list_available_response.rbs | 5 + sig/hanzoai/models/team_list_response.rbs | 5 + .../models/team_remove_member_response.rbs | 5 + .../models/team_retrieve_info_response.rbs | 5 + sig/hanzoai/models/team_unblock_response.rbs | 5 + sig/hanzoai/models/team_update_response.rbs | 5 + sig/hanzoai/models/test_ping_response.rbs | 5 + sig/hanzoai/models/thread_create_response.rbs | 5 + .../models/thread_retrieve_response.rbs | 5 + .../threads/message_create_response.rbs | 7 + .../models/threads/message_list_response.rbs | 7 + .../models/threads/run_create_response.rbs | 7 + sig/hanzoai/models/user_delete_response.rbs | 5 + sig/hanzoai/models/user_list_response.rbs | 5 + .../models/user_retrieve_info_response.rbs | 5 + sig/hanzoai/models/user_update_response.rbs | 5 + ...l_get_supported_openai_params_response.rbs | 5 + .../models/vertex_ai_create_response.rbs | 5 + .../models/vertex_ai_delete_response.rbs | 5 + .../models/vertex_ai_patch_response.rbs | 5 + .../models/vertex_ai_retrieve_response.rbs | 5 + .../models/vertex_ai_update_response.rbs | 5 + 478 files changed, 3531 insertions(+) create mode 100644 lib/hanzoai/models/active_list_callbacks_response.rb create mode 100644 lib/hanzoai/models/add_add_allowed_ip_response.rb create mode 100644 lib/hanzoai/models/anthropic_create_response.rb create mode 100644 lib/hanzoai/models/anthropic_delete_response.rb create mode 100644 lib/hanzoai/models/anthropic_modify_response.rb create mode 100644 lib/hanzoai/models/anthropic_retrieve_response.rb create mode 100644 lib/hanzoai/models/anthropic_update_response.rb create mode 100644 lib/hanzoai/models/assemblyai_create_response.rb create mode 100644 lib/hanzoai/models/assemblyai_delete_response.rb create mode 100644 lib/hanzoai/models/assemblyai_patch_response.rb create mode 100644 lib/hanzoai/models/assemblyai_retrieve_response.rb create mode 100644 lib/hanzoai/models/assemblyai_update_response.rb create mode 100644 lib/hanzoai/models/assistant_create_response.rb create mode 100644 lib/hanzoai/models/assistant_delete_response.rb create mode 100644 lib/hanzoai/models/assistant_list_response.rb create mode 100644 lib/hanzoai/models/audio/speech_create_response.rb create mode 100644 lib/hanzoai/models/audio/transcription_create_response.rb create mode 100644 lib/hanzoai/models/azure_call_response.rb create mode 100644 lib/hanzoai/models/azure_create_response.rb create mode 100644 lib/hanzoai/models/azure_delete_response.rb create mode 100644 lib/hanzoai/models/azure_patch_response.rb create mode 100644 lib/hanzoai/models/azure_update_response.rb create mode 100644 lib/hanzoai/models/batch_cancel_with_provider_response.rb create mode 100644 lib/hanzoai/models/batch_create_response.rb create mode 100644 lib/hanzoai/models/batch_create_with_provider_response.rb create mode 100644 lib/hanzoai/models/batch_list_response.rb create mode 100644 lib/hanzoai/models/batch_list_with_provider_response.rb create mode 100644 lib/hanzoai/models/batch_retrieve_response.rb create mode 100644 lib/hanzoai/models/batch_retrieve_with_provider_response.rb create mode 100644 lib/hanzoai/models/batches/cancel_cancel_response.rb create mode 100644 lib/hanzoai/models/bedrock_create_response.rb create mode 100644 lib/hanzoai/models/bedrock_delete_response.rb create mode 100644 lib/hanzoai/models/bedrock_patch_response.rb create mode 100644 lib/hanzoai/models/bedrock_retrieve_response.rb create mode 100644 lib/hanzoai/models/bedrock_update_response.rb create mode 100644 lib/hanzoai/models/budget_create_response.rb create mode 100644 lib/hanzoai/models/budget_delete_response.rb create mode 100644 lib/hanzoai/models/budget_info_response.rb create mode 100644 lib/hanzoai/models/budget_list_response.rb create mode 100644 lib/hanzoai/models/budget_settings_response.rb create mode 100644 lib/hanzoai/models/budget_update_response.rb create mode 100644 lib/hanzoai/models/cache/redi_retrieve_info_response.rb create mode 100644 lib/hanzoai/models/cache_delete_response.rb create mode 100644 lib/hanzoai/models/cache_flush_all_response.rb create mode 100644 lib/hanzoai/models/chat/completion_create_response.rb create mode 100644 lib/hanzoai/models/cohere_create_response.rb create mode 100644 lib/hanzoai/models/cohere_delete_response.rb create mode 100644 lib/hanzoai/models/cohere_modify_response.rb create mode 100644 lib/hanzoai/models/cohere_retrieve_response.rb create mode 100644 lib/hanzoai/models/cohere_update_response.rb create mode 100644 lib/hanzoai/models/completion_create_response.rb create mode 100644 lib/hanzoai/models/config/pass_through_endpoint_create_response.rb create mode 100644 lib/hanzoai/models/config/pass_through_endpoint_update_response.rb create mode 100644 lib/hanzoai/models/credential_create_response.rb create mode 100644 lib/hanzoai/models/credential_delete_response.rb create mode 100644 lib/hanzoai/models/credential_list_response.rb create mode 100644 lib/hanzoai/models/customer_block_response.rb create mode 100644 lib/hanzoai/models/customer_create_response.rb create mode 100644 lib/hanzoai/models/customer_delete_response.rb create mode 100644 lib/hanzoai/models/customer_unblock_response.rb create mode 100644 lib/hanzoai/models/customer_update_response.rb create mode 100644 lib/hanzoai/models/delete_create_allowed_ip_response.rb create mode 100644 lib/hanzoai/models/embedding_create_response.rb create mode 100644 lib/hanzoai/models/engine_complete_response.rb create mode 100644 lib/hanzoai/models/engine_embed_response.rb create mode 100644 lib/hanzoai/models/engines/chat_complete_response.rb create mode 100644 lib/hanzoai/models/eu_assemblyai_create_response.rb create mode 100644 lib/hanzoai/models/eu_assemblyai_delete_response.rb create mode 100644 lib/hanzoai/models/eu_assemblyai_patch_response.rb create mode 100644 lib/hanzoai/models/eu_assemblyai_retrieve_response.rb create mode 100644 lib/hanzoai/models/eu_assemblyai_update_response.rb create mode 100644 lib/hanzoai/models/file_create_response.rb create mode 100644 lib/hanzoai/models/file_delete_response.rb create mode 100644 lib/hanzoai/models/file_list_response.rb create mode 100644 lib/hanzoai/models/file_retrieve_response.rb create mode 100644 lib/hanzoai/models/files/content_retrieve_response.rb create mode 100644 lib/hanzoai/models/fine_tuning/job_create_response.rb create mode 100644 lib/hanzoai/models/fine_tuning/job_list_response.rb create mode 100644 lib/hanzoai/models/fine_tuning/job_retrieve_response.rb create mode 100644 lib/hanzoai/models/fine_tuning/jobs/cancel_create_response.rb create mode 100644 lib/hanzoai/models/gemini_create_response.rb create mode 100644 lib/hanzoai/models/gemini_delete_response.rb create mode 100644 lib/hanzoai/models/gemini_patch_response.rb create mode 100644 lib/hanzoai/models/gemini_retrieve_response.rb create mode 100644 lib/hanzoai/models/gemini_update_response.rb create mode 100644 lib/hanzoai/models/get_home_response.rb create mode 100644 lib/hanzoai/models/global/spend_reset_response.rb create mode 100644 lib/hanzoai/models/health_check_all_response.rb create mode 100644 lib/hanzoai/models/health_check_liveliness_response.rb create mode 100644 lib/hanzoai/models/health_check_liveness_response.rb create mode 100644 lib/hanzoai/models/health_check_readiness_response.rb create mode 100644 lib/hanzoai/models/health_check_services_response.rb create mode 100644 lib/hanzoai/models/images/generation_create_response.rb create mode 100644 lib/hanzoai/models/key_delete_response.rb create mode 100644 lib/hanzoai/models/key_retrieve_info_response.rb create mode 100644 lib/hanzoai/models/key_unblock_response.rb create mode 100644 lib/hanzoai/models/key_update_response.rb create mode 100644 lib/hanzoai/models/langfuse_create_response.rb create mode 100644 lib/hanzoai/models/langfuse_delete_response.rb create mode 100644 lib/hanzoai/models/langfuse_patch_response.rb create mode 100644 lib/hanzoai/models/langfuse_retrieve_response.rb create mode 100644 lib/hanzoai/models/langfuse_update_response.rb create mode 100644 lib/hanzoai/models/model/info_list_response.rb create mode 100644 lib/hanzoai/models/model/update_full_response.rb create mode 100644 lib/hanzoai/models/model/update_partial_response.rb create mode 100644 lib/hanzoai/models/model_create_response.rb create mode 100644 lib/hanzoai/models/model_delete_response.rb create mode 100644 lib/hanzoai/models/model_group_retrieve_info_response.rb create mode 100644 lib/hanzoai/models/model_list_response.rb create mode 100644 lib/hanzoai/models/moderation_create_response.rb create mode 100644 lib/hanzoai/models/openai/deployment_complete_response.rb create mode 100644 lib/hanzoai/models/openai/deployment_embed_response.rb create mode 100644 lib/hanzoai/models/openai/deployments/chat_complete_response.rb create mode 100644 lib/hanzoai/models/openai_create_response.rb create mode 100644 lib/hanzoai/models/openai_delete_response.rb create mode 100644 lib/hanzoai/models/openai_patch_response.rb create mode 100644 lib/hanzoai/models/openai_retrieve_response.rb create mode 100644 lib/hanzoai/models/openai_update_response.rb create mode 100644 lib/hanzoai/models/organization/info_deprecated_response.rb create mode 100644 lib/hanzoai/models/organization_delete_member_response.rb create mode 100644 lib/hanzoai/models/rerank_create_response.rb create mode 100644 lib/hanzoai/models/rerank_create_v1_response.rb create mode 100644 lib/hanzoai/models/rerank_create_v2_response.rb create mode 100644 lib/hanzoai/models/response_create_response.rb create mode 100644 lib/hanzoai/models/response_delete_response.rb create mode 100644 lib/hanzoai/models/response_retrieve_response.rb create mode 100644 lib/hanzoai/models/responses/input_item_list_response.rb create mode 100644 lib/hanzoai/models/route_list_response.rb create mode 100644 lib/hanzoai/models/setting_retrieve_response.rb create mode 100644 lib/hanzoai/models/spend_calculate_spend_response.rb create mode 100644 lib/hanzoai/models/team/callback_add_response.rb create mode 100644 lib/hanzoai/models/team/callback_retrieve_response.rb create mode 100644 lib/hanzoai/models/team/model_add_response.rb create mode 100644 lib/hanzoai/models/team/model_remove_response.rb create mode 100644 lib/hanzoai/models/team_block_response.rb create mode 100644 lib/hanzoai/models/team_delete_response.rb create mode 100644 lib/hanzoai/models/team_disable_logging_response.rb create mode 100644 lib/hanzoai/models/team_list_available_response.rb create mode 100644 lib/hanzoai/models/team_list_response.rb create mode 100644 lib/hanzoai/models/team_remove_member_response.rb create mode 100644 lib/hanzoai/models/team_retrieve_info_response.rb create mode 100644 lib/hanzoai/models/team_unblock_response.rb create mode 100644 lib/hanzoai/models/team_update_response.rb create mode 100644 lib/hanzoai/models/test_ping_response.rb create mode 100644 lib/hanzoai/models/thread_create_response.rb create mode 100644 lib/hanzoai/models/thread_retrieve_response.rb create mode 100644 lib/hanzoai/models/threads/message_create_response.rb create mode 100644 lib/hanzoai/models/threads/message_list_response.rb create mode 100644 lib/hanzoai/models/threads/run_create_response.rb create mode 100644 lib/hanzoai/models/user_delete_response.rb create mode 100644 lib/hanzoai/models/user_list_response.rb create mode 100644 lib/hanzoai/models/user_retrieve_info_response.rb create mode 100644 lib/hanzoai/models/user_update_response.rb create mode 100644 lib/hanzoai/models/util_get_supported_openai_params_response.rb create mode 100644 lib/hanzoai/models/vertex_ai_create_response.rb create mode 100644 lib/hanzoai/models/vertex_ai_delete_response.rb create mode 100644 lib/hanzoai/models/vertex_ai_patch_response.rb create mode 100644 lib/hanzoai/models/vertex_ai_retrieve_response.rb create mode 100644 lib/hanzoai/models/vertex_ai_update_response.rb create mode 100644 rbi/hanzoai/models/active_list_callbacks_response.rbi create mode 100644 rbi/hanzoai/models/add_add_allowed_ip_response.rbi create mode 100644 rbi/hanzoai/models/anthropic_create_response.rbi create mode 100644 rbi/hanzoai/models/anthropic_delete_response.rbi create mode 100644 rbi/hanzoai/models/anthropic_modify_response.rbi create mode 100644 rbi/hanzoai/models/anthropic_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/anthropic_update_response.rbi create mode 100644 rbi/hanzoai/models/assemblyai_create_response.rbi create mode 100644 rbi/hanzoai/models/assemblyai_delete_response.rbi create mode 100644 rbi/hanzoai/models/assemblyai_patch_response.rbi create mode 100644 rbi/hanzoai/models/assemblyai_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/assemblyai_update_response.rbi create mode 100644 rbi/hanzoai/models/assistant_create_response.rbi create mode 100644 rbi/hanzoai/models/assistant_delete_response.rbi create mode 100644 rbi/hanzoai/models/assistant_list_response.rbi create mode 100644 rbi/hanzoai/models/audio/speech_create_response.rbi create mode 100644 rbi/hanzoai/models/audio/transcription_create_response.rbi create mode 100644 rbi/hanzoai/models/azure_call_response.rbi create mode 100644 rbi/hanzoai/models/azure_create_response.rbi create mode 100644 rbi/hanzoai/models/azure_delete_response.rbi create mode 100644 rbi/hanzoai/models/azure_patch_response.rbi create mode 100644 rbi/hanzoai/models/azure_update_response.rbi create mode 100644 rbi/hanzoai/models/batch_cancel_with_provider_response.rbi create mode 100644 rbi/hanzoai/models/batch_create_response.rbi create mode 100644 rbi/hanzoai/models/batch_create_with_provider_response.rbi create mode 100644 rbi/hanzoai/models/batch_list_response.rbi create mode 100644 rbi/hanzoai/models/batch_list_with_provider_response.rbi create mode 100644 rbi/hanzoai/models/batch_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi create mode 100644 rbi/hanzoai/models/batches/cancel_cancel_response.rbi create mode 100644 rbi/hanzoai/models/bedrock_create_response.rbi create mode 100644 rbi/hanzoai/models/bedrock_delete_response.rbi create mode 100644 rbi/hanzoai/models/bedrock_patch_response.rbi create mode 100644 rbi/hanzoai/models/bedrock_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/bedrock_update_response.rbi create mode 100644 rbi/hanzoai/models/budget_create_response.rbi create mode 100644 rbi/hanzoai/models/budget_delete_response.rbi create mode 100644 rbi/hanzoai/models/budget_info_response.rbi create mode 100644 rbi/hanzoai/models/budget_list_response.rbi create mode 100644 rbi/hanzoai/models/budget_settings_response.rbi create mode 100644 rbi/hanzoai/models/budget_update_response.rbi create mode 100644 rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi create mode 100644 rbi/hanzoai/models/cache_delete_response.rbi create mode 100644 rbi/hanzoai/models/cache_flush_all_response.rbi create mode 100644 rbi/hanzoai/models/chat/completion_create_response.rbi create mode 100644 rbi/hanzoai/models/cohere_create_response.rbi create mode 100644 rbi/hanzoai/models/cohere_delete_response.rbi create mode 100644 rbi/hanzoai/models/cohere_modify_response.rbi create mode 100644 rbi/hanzoai/models/cohere_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/cohere_update_response.rbi create mode 100644 rbi/hanzoai/models/completion_create_response.rbi create mode 100644 rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi create mode 100644 rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi create mode 100644 rbi/hanzoai/models/credential_create_response.rbi create mode 100644 rbi/hanzoai/models/credential_delete_response.rbi create mode 100644 rbi/hanzoai/models/credential_list_response.rbi create mode 100644 rbi/hanzoai/models/customer_block_response.rbi create mode 100644 rbi/hanzoai/models/customer_create_response.rbi create mode 100644 rbi/hanzoai/models/customer_delete_response.rbi create mode 100644 rbi/hanzoai/models/customer_unblock_response.rbi create mode 100644 rbi/hanzoai/models/customer_update_response.rbi create mode 100644 rbi/hanzoai/models/delete_create_allowed_ip_response.rbi create mode 100644 rbi/hanzoai/models/embedding_create_response.rbi create mode 100644 rbi/hanzoai/models/engine_complete_response.rbi create mode 100644 rbi/hanzoai/models/engine_embed_response.rbi create mode 100644 rbi/hanzoai/models/engines/chat_complete_response.rbi create mode 100644 rbi/hanzoai/models/eu_assemblyai_create_response.rbi create mode 100644 rbi/hanzoai/models/eu_assemblyai_delete_response.rbi create mode 100644 rbi/hanzoai/models/eu_assemblyai_patch_response.rbi create mode 100644 rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/eu_assemblyai_update_response.rbi create mode 100644 rbi/hanzoai/models/file_create_response.rbi create mode 100644 rbi/hanzoai/models/file_delete_response.rbi create mode 100644 rbi/hanzoai/models/file_list_response.rbi create mode 100644 rbi/hanzoai/models/file_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/files/content_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/fine_tuning/job_create_response.rbi create mode 100644 rbi/hanzoai/models/fine_tuning/job_list_response.rbi create mode 100644 rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi create mode 100644 rbi/hanzoai/models/gemini_create_response.rbi create mode 100644 rbi/hanzoai/models/gemini_delete_response.rbi create mode 100644 rbi/hanzoai/models/gemini_patch_response.rbi create mode 100644 rbi/hanzoai/models/gemini_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/gemini_update_response.rbi create mode 100644 rbi/hanzoai/models/get_home_response.rbi create mode 100644 rbi/hanzoai/models/global/spend_reset_response.rbi create mode 100644 rbi/hanzoai/models/health_check_all_response.rbi create mode 100644 rbi/hanzoai/models/health_check_liveliness_response.rbi create mode 100644 rbi/hanzoai/models/health_check_liveness_response.rbi create mode 100644 rbi/hanzoai/models/health_check_readiness_response.rbi create mode 100644 rbi/hanzoai/models/health_check_services_response.rbi create mode 100644 rbi/hanzoai/models/images/generation_create_response.rbi create mode 100644 rbi/hanzoai/models/key_delete_response.rbi create mode 100644 rbi/hanzoai/models/key_retrieve_info_response.rbi create mode 100644 rbi/hanzoai/models/key_unblock_response.rbi create mode 100644 rbi/hanzoai/models/key_update_response.rbi create mode 100644 rbi/hanzoai/models/langfuse_create_response.rbi create mode 100644 rbi/hanzoai/models/langfuse_delete_response.rbi create mode 100644 rbi/hanzoai/models/langfuse_patch_response.rbi create mode 100644 rbi/hanzoai/models/langfuse_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/langfuse_update_response.rbi create mode 100644 rbi/hanzoai/models/model/info_list_response.rbi create mode 100644 rbi/hanzoai/models/model/update_full_response.rbi create mode 100644 rbi/hanzoai/models/model/update_partial_response.rbi create mode 100644 rbi/hanzoai/models/model_create_response.rbi create mode 100644 rbi/hanzoai/models/model_delete_response.rbi create mode 100644 rbi/hanzoai/models/model_group_retrieve_info_response.rbi create mode 100644 rbi/hanzoai/models/model_list_response.rbi create mode 100644 rbi/hanzoai/models/moderation_create_response.rbi create mode 100644 rbi/hanzoai/models/openai/deployment_complete_response.rbi create mode 100644 rbi/hanzoai/models/openai/deployment_embed_response.rbi create mode 100644 rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi create mode 100644 rbi/hanzoai/models/openai_create_response.rbi create mode 100644 rbi/hanzoai/models/openai_delete_response.rbi create mode 100644 rbi/hanzoai/models/openai_patch_response.rbi create mode 100644 rbi/hanzoai/models/openai_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/openai_update_response.rbi create mode 100644 rbi/hanzoai/models/organization/info_deprecated_response.rbi create mode 100644 rbi/hanzoai/models/organization_delete_member_response.rbi create mode 100644 rbi/hanzoai/models/rerank_create_response.rbi create mode 100644 rbi/hanzoai/models/rerank_create_v1_response.rbi create mode 100644 rbi/hanzoai/models/rerank_create_v2_response.rbi create mode 100644 rbi/hanzoai/models/response_create_response.rbi create mode 100644 rbi/hanzoai/models/response_delete_response.rbi create mode 100644 rbi/hanzoai/models/response_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/responses/input_item_list_response.rbi create mode 100644 rbi/hanzoai/models/route_list_response.rbi create mode 100644 rbi/hanzoai/models/setting_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/spend_calculate_spend_response.rbi create mode 100644 rbi/hanzoai/models/team/callback_add_response.rbi create mode 100644 rbi/hanzoai/models/team/callback_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/team/model_add_response.rbi create mode 100644 rbi/hanzoai/models/team/model_remove_response.rbi create mode 100644 rbi/hanzoai/models/team_block_response.rbi create mode 100644 rbi/hanzoai/models/team_delete_response.rbi create mode 100644 rbi/hanzoai/models/team_disable_logging_response.rbi create mode 100644 rbi/hanzoai/models/team_list_available_response.rbi create mode 100644 rbi/hanzoai/models/team_list_response.rbi create mode 100644 rbi/hanzoai/models/team_remove_member_response.rbi create mode 100644 rbi/hanzoai/models/team_retrieve_info_response.rbi create mode 100644 rbi/hanzoai/models/team_unblock_response.rbi create mode 100644 rbi/hanzoai/models/team_update_response.rbi create mode 100644 rbi/hanzoai/models/test_ping_response.rbi create mode 100644 rbi/hanzoai/models/thread_create_response.rbi create mode 100644 rbi/hanzoai/models/thread_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/threads/message_create_response.rbi create mode 100644 rbi/hanzoai/models/threads/message_list_response.rbi create mode 100644 rbi/hanzoai/models/threads/run_create_response.rbi create mode 100644 rbi/hanzoai/models/user_delete_response.rbi create mode 100644 rbi/hanzoai/models/user_list_response.rbi create mode 100644 rbi/hanzoai/models/user_retrieve_info_response.rbi create mode 100644 rbi/hanzoai/models/user_update_response.rbi create mode 100644 rbi/hanzoai/models/util_get_supported_openai_params_response.rbi create mode 100644 rbi/hanzoai/models/vertex_ai_create_response.rbi create mode 100644 rbi/hanzoai/models/vertex_ai_delete_response.rbi create mode 100644 rbi/hanzoai/models/vertex_ai_patch_response.rbi create mode 100644 rbi/hanzoai/models/vertex_ai_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/vertex_ai_update_response.rbi create mode 100644 sig/hanzoai/models/active_list_callbacks_response.rbs create mode 100644 sig/hanzoai/models/add_add_allowed_ip_response.rbs create mode 100644 sig/hanzoai/models/anthropic_create_response.rbs create mode 100644 sig/hanzoai/models/anthropic_delete_response.rbs create mode 100644 sig/hanzoai/models/anthropic_modify_response.rbs create mode 100644 sig/hanzoai/models/anthropic_retrieve_response.rbs create mode 100644 sig/hanzoai/models/anthropic_update_response.rbs create mode 100644 sig/hanzoai/models/assemblyai_create_response.rbs create mode 100644 sig/hanzoai/models/assemblyai_delete_response.rbs create mode 100644 sig/hanzoai/models/assemblyai_patch_response.rbs create mode 100644 sig/hanzoai/models/assemblyai_retrieve_response.rbs create mode 100644 sig/hanzoai/models/assemblyai_update_response.rbs create mode 100644 sig/hanzoai/models/assistant_create_response.rbs create mode 100644 sig/hanzoai/models/assistant_delete_response.rbs create mode 100644 sig/hanzoai/models/assistant_list_response.rbs create mode 100644 sig/hanzoai/models/audio/speech_create_response.rbs create mode 100644 sig/hanzoai/models/audio/transcription_create_response.rbs create mode 100644 sig/hanzoai/models/azure_call_response.rbs create mode 100644 sig/hanzoai/models/azure_create_response.rbs create mode 100644 sig/hanzoai/models/azure_delete_response.rbs create mode 100644 sig/hanzoai/models/azure_patch_response.rbs create mode 100644 sig/hanzoai/models/azure_update_response.rbs create mode 100644 sig/hanzoai/models/batch_cancel_with_provider_response.rbs create mode 100644 sig/hanzoai/models/batch_create_response.rbs create mode 100644 sig/hanzoai/models/batch_create_with_provider_response.rbs create mode 100644 sig/hanzoai/models/batch_list_response.rbs create mode 100644 sig/hanzoai/models/batch_list_with_provider_response.rbs create mode 100644 sig/hanzoai/models/batch_retrieve_response.rbs create mode 100644 sig/hanzoai/models/batch_retrieve_with_provider_response.rbs create mode 100644 sig/hanzoai/models/batches/cancel_cancel_response.rbs create mode 100644 sig/hanzoai/models/bedrock_create_response.rbs create mode 100644 sig/hanzoai/models/bedrock_delete_response.rbs create mode 100644 sig/hanzoai/models/bedrock_patch_response.rbs create mode 100644 sig/hanzoai/models/bedrock_retrieve_response.rbs create mode 100644 sig/hanzoai/models/bedrock_update_response.rbs create mode 100644 sig/hanzoai/models/budget_create_response.rbs create mode 100644 sig/hanzoai/models/budget_delete_response.rbs create mode 100644 sig/hanzoai/models/budget_info_response.rbs create mode 100644 sig/hanzoai/models/budget_list_response.rbs create mode 100644 sig/hanzoai/models/budget_settings_response.rbs create mode 100644 sig/hanzoai/models/budget_update_response.rbs create mode 100644 sig/hanzoai/models/cache/redi_retrieve_info_response.rbs create mode 100644 sig/hanzoai/models/cache_delete_response.rbs create mode 100644 sig/hanzoai/models/cache_flush_all_response.rbs create mode 100644 sig/hanzoai/models/chat/completion_create_response.rbs create mode 100644 sig/hanzoai/models/cohere_create_response.rbs create mode 100644 sig/hanzoai/models/cohere_delete_response.rbs create mode 100644 sig/hanzoai/models/cohere_modify_response.rbs create mode 100644 sig/hanzoai/models/cohere_retrieve_response.rbs create mode 100644 sig/hanzoai/models/cohere_update_response.rbs create mode 100644 sig/hanzoai/models/completion_create_response.rbs create mode 100644 sig/hanzoai/models/config/pass_through_endpoint_create_response.rbs create mode 100644 sig/hanzoai/models/config/pass_through_endpoint_update_response.rbs create mode 100644 sig/hanzoai/models/credential_create_response.rbs create mode 100644 sig/hanzoai/models/credential_delete_response.rbs create mode 100644 sig/hanzoai/models/credential_list_response.rbs create mode 100644 sig/hanzoai/models/customer_block_response.rbs create mode 100644 sig/hanzoai/models/customer_create_response.rbs create mode 100644 sig/hanzoai/models/customer_delete_response.rbs create mode 100644 sig/hanzoai/models/customer_unblock_response.rbs create mode 100644 sig/hanzoai/models/customer_update_response.rbs create mode 100644 sig/hanzoai/models/delete_create_allowed_ip_response.rbs create mode 100644 sig/hanzoai/models/embedding_create_response.rbs create mode 100644 sig/hanzoai/models/engine_complete_response.rbs create mode 100644 sig/hanzoai/models/engine_embed_response.rbs create mode 100644 sig/hanzoai/models/engines/chat_complete_response.rbs create mode 100644 sig/hanzoai/models/eu_assemblyai_create_response.rbs create mode 100644 sig/hanzoai/models/eu_assemblyai_delete_response.rbs create mode 100644 sig/hanzoai/models/eu_assemblyai_patch_response.rbs create mode 100644 sig/hanzoai/models/eu_assemblyai_retrieve_response.rbs create mode 100644 sig/hanzoai/models/eu_assemblyai_update_response.rbs create mode 100644 sig/hanzoai/models/file_create_response.rbs create mode 100644 sig/hanzoai/models/file_delete_response.rbs create mode 100644 sig/hanzoai/models/file_list_response.rbs create mode 100644 sig/hanzoai/models/file_retrieve_response.rbs create mode 100644 sig/hanzoai/models/files/content_retrieve_response.rbs create mode 100644 sig/hanzoai/models/fine_tuning/job_create_response.rbs create mode 100644 sig/hanzoai/models/fine_tuning/job_list_response.rbs create mode 100644 sig/hanzoai/models/fine_tuning/job_retrieve_response.rbs create mode 100644 sig/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbs create mode 100644 sig/hanzoai/models/gemini_create_response.rbs create mode 100644 sig/hanzoai/models/gemini_delete_response.rbs create mode 100644 sig/hanzoai/models/gemini_patch_response.rbs create mode 100644 sig/hanzoai/models/gemini_retrieve_response.rbs create mode 100644 sig/hanzoai/models/gemini_update_response.rbs create mode 100644 sig/hanzoai/models/get_home_response.rbs create mode 100644 sig/hanzoai/models/global/spend_reset_response.rbs create mode 100644 sig/hanzoai/models/health_check_all_response.rbs create mode 100644 sig/hanzoai/models/health_check_liveliness_response.rbs create mode 100644 sig/hanzoai/models/health_check_liveness_response.rbs create mode 100644 sig/hanzoai/models/health_check_readiness_response.rbs create mode 100644 sig/hanzoai/models/health_check_services_response.rbs create mode 100644 sig/hanzoai/models/images/generation_create_response.rbs create mode 100644 sig/hanzoai/models/key_delete_response.rbs create mode 100644 sig/hanzoai/models/key_retrieve_info_response.rbs create mode 100644 sig/hanzoai/models/key_unblock_response.rbs create mode 100644 sig/hanzoai/models/key_update_response.rbs create mode 100644 sig/hanzoai/models/langfuse_create_response.rbs create mode 100644 sig/hanzoai/models/langfuse_delete_response.rbs create mode 100644 sig/hanzoai/models/langfuse_patch_response.rbs create mode 100644 sig/hanzoai/models/langfuse_retrieve_response.rbs create mode 100644 sig/hanzoai/models/langfuse_update_response.rbs create mode 100644 sig/hanzoai/models/model/info_list_response.rbs create mode 100644 sig/hanzoai/models/model/update_full_response.rbs create mode 100644 sig/hanzoai/models/model/update_partial_response.rbs create mode 100644 sig/hanzoai/models/model_create_response.rbs create mode 100644 sig/hanzoai/models/model_delete_response.rbs create mode 100644 sig/hanzoai/models/model_group_retrieve_info_response.rbs create mode 100644 sig/hanzoai/models/model_list_response.rbs create mode 100644 sig/hanzoai/models/moderation_create_response.rbs create mode 100644 sig/hanzoai/models/openai/deployment_complete_response.rbs create mode 100644 sig/hanzoai/models/openai/deployment_embed_response.rbs create mode 100644 sig/hanzoai/models/openai/deployments/chat_complete_response.rbs create mode 100644 sig/hanzoai/models/openai_create_response.rbs create mode 100644 sig/hanzoai/models/openai_delete_response.rbs create mode 100644 sig/hanzoai/models/openai_patch_response.rbs create mode 100644 sig/hanzoai/models/openai_retrieve_response.rbs create mode 100644 sig/hanzoai/models/openai_update_response.rbs create mode 100644 sig/hanzoai/models/organization/info_deprecated_response.rbs create mode 100644 sig/hanzoai/models/organization_delete_member_response.rbs create mode 100644 sig/hanzoai/models/rerank_create_response.rbs create mode 100644 sig/hanzoai/models/rerank_create_v1_response.rbs create mode 100644 sig/hanzoai/models/rerank_create_v2_response.rbs create mode 100644 sig/hanzoai/models/response_create_response.rbs create mode 100644 sig/hanzoai/models/response_delete_response.rbs create mode 100644 sig/hanzoai/models/response_retrieve_response.rbs create mode 100644 sig/hanzoai/models/responses/input_item_list_response.rbs create mode 100644 sig/hanzoai/models/route_list_response.rbs create mode 100644 sig/hanzoai/models/setting_retrieve_response.rbs create mode 100644 sig/hanzoai/models/spend_calculate_spend_response.rbs create mode 100644 sig/hanzoai/models/team/callback_add_response.rbs create mode 100644 sig/hanzoai/models/team/callback_retrieve_response.rbs create mode 100644 sig/hanzoai/models/team/model_add_response.rbs create mode 100644 sig/hanzoai/models/team/model_remove_response.rbs create mode 100644 sig/hanzoai/models/team_block_response.rbs create mode 100644 sig/hanzoai/models/team_delete_response.rbs create mode 100644 sig/hanzoai/models/team_disable_logging_response.rbs create mode 100644 sig/hanzoai/models/team_list_available_response.rbs create mode 100644 sig/hanzoai/models/team_list_response.rbs create mode 100644 sig/hanzoai/models/team_remove_member_response.rbs create mode 100644 sig/hanzoai/models/team_retrieve_info_response.rbs create mode 100644 sig/hanzoai/models/team_unblock_response.rbs create mode 100644 sig/hanzoai/models/team_update_response.rbs create mode 100644 sig/hanzoai/models/test_ping_response.rbs create mode 100644 sig/hanzoai/models/thread_create_response.rbs create mode 100644 sig/hanzoai/models/thread_retrieve_response.rbs create mode 100644 sig/hanzoai/models/threads/message_create_response.rbs create mode 100644 sig/hanzoai/models/threads/message_list_response.rbs create mode 100644 sig/hanzoai/models/threads/run_create_response.rbs create mode 100644 sig/hanzoai/models/user_delete_response.rbs create mode 100644 sig/hanzoai/models/user_list_response.rbs create mode 100644 sig/hanzoai/models/user_retrieve_info_response.rbs create mode 100644 sig/hanzoai/models/user_update_response.rbs create mode 100644 sig/hanzoai/models/util_get_supported_openai_params_response.rbs create mode 100644 sig/hanzoai/models/vertex_ai_create_response.rbs create mode 100644 sig/hanzoai/models/vertex_ai_delete_response.rbs create mode 100644 sig/hanzoai/models/vertex_ai_patch_response.rbs create mode 100644 sig/hanzoai/models/vertex_ai_retrieve_response.rbs create mode 100644 sig/hanzoai/models/vertex_ai_update_response.rbs diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index 6a258093..fb1bb977 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -55,152 +55,271 @@ require_relative "hanzoai/models/model/update_deployment" require_relative "hanzoai/models/block_team_request" require_relative "hanzoai/models/active_list_callbacks_params" +require_relative "hanzoai/models/active_list_callbacks_response" require_relative "hanzoai/models/add_add_allowed_ip_params" +require_relative "hanzoai/models/add_add_allowed_ip_response" require_relative "hanzoai/models/anthropic_create_params" +require_relative "hanzoai/models/anthropic_create_response" require_relative "hanzoai/models/anthropic_delete_params" +require_relative "hanzoai/models/anthropic_delete_response" require_relative "hanzoai/models/anthropic_modify_params" +require_relative "hanzoai/models/anthropic_modify_response" require_relative "hanzoai/models/anthropic_retrieve_params" +require_relative "hanzoai/models/anthropic_retrieve_response" require_relative "hanzoai/models/anthropic_update_params" +require_relative "hanzoai/models/anthropic_update_response" require_relative "hanzoai/models/assemblyai_create_params" +require_relative "hanzoai/models/assemblyai_create_response" require_relative "hanzoai/models/assemblyai_delete_params" +require_relative "hanzoai/models/assemblyai_delete_response" require_relative "hanzoai/models/assemblyai_patch_params" +require_relative "hanzoai/models/assemblyai_patch_response" require_relative "hanzoai/models/assemblyai_retrieve_params" +require_relative "hanzoai/models/assemblyai_retrieve_response" require_relative "hanzoai/models/assemblyai_update_params" +require_relative "hanzoai/models/assemblyai_update_response" require_relative "hanzoai/models/assistant_create_params" +require_relative "hanzoai/models/assistant_create_response" require_relative "hanzoai/models/assistant_delete_params" +require_relative "hanzoai/models/assistant_delete_response" require_relative "hanzoai/models/assistant_list_params" +require_relative "hanzoai/models/assistant_list_response" require_relative "hanzoai/models/audio/speech_create_params" +require_relative "hanzoai/models/audio/speech_create_response" require_relative "hanzoai/models/audio/transcription_create_params" +require_relative "hanzoai/models/audio/transcription_create_response" require_relative "hanzoai/models/azure_call_params" +require_relative "hanzoai/models/azure_call_response" require_relative "hanzoai/models/azure_create_params" +require_relative "hanzoai/models/azure_create_response" require_relative "hanzoai/models/azure_delete_params" +require_relative "hanzoai/models/azure_delete_response" require_relative "hanzoai/models/azure_patch_params" +require_relative "hanzoai/models/azure_patch_response" require_relative "hanzoai/models/azure_update_params" +require_relative "hanzoai/models/azure_update_response" require_relative "hanzoai/models/batch_cancel_with_provider_params" +require_relative "hanzoai/models/batch_cancel_with_provider_response" require_relative "hanzoai/models/batch_create_params" +require_relative "hanzoai/models/batch_create_response" require_relative "hanzoai/models/batch_create_with_provider_params" +require_relative "hanzoai/models/batch_create_with_provider_response" require_relative "hanzoai/models/batches/cancel_cancel_params" +require_relative "hanzoai/models/batches/cancel_cancel_response" require_relative "hanzoai/models/batch_list_params" +require_relative "hanzoai/models/batch_list_response" require_relative "hanzoai/models/batch_list_with_provider_params" +require_relative "hanzoai/models/batch_list_with_provider_response" require_relative "hanzoai/models/batch_retrieve_params" +require_relative "hanzoai/models/batch_retrieve_response" require_relative "hanzoai/models/batch_retrieve_with_provider_params" +require_relative "hanzoai/models/batch_retrieve_with_provider_response" require_relative "hanzoai/models/bedrock_create_params" +require_relative "hanzoai/models/bedrock_create_response" require_relative "hanzoai/models/bedrock_delete_params" +require_relative "hanzoai/models/bedrock_delete_response" require_relative "hanzoai/models/bedrock_patch_params" +require_relative "hanzoai/models/bedrock_patch_response" require_relative "hanzoai/models/bedrock_retrieve_params" +require_relative "hanzoai/models/bedrock_retrieve_response" require_relative "hanzoai/models/bedrock_update_params" +require_relative "hanzoai/models/bedrock_update_response" require_relative "hanzoai/models/budget_create_params" +require_relative "hanzoai/models/budget_create_response" require_relative "hanzoai/models/budget_delete_params" +require_relative "hanzoai/models/budget_delete_response" require_relative "hanzoai/models/budget_info_params" +require_relative "hanzoai/models/budget_info_response" require_relative "hanzoai/models/budget_list_params" +require_relative "hanzoai/models/budget_list_response" require_relative "hanzoai/models/budget_settings_params" +require_relative "hanzoai/models/budget_settings_response" require_relative "hanzoai/models/budget_update_params" +require_relative "hanzoai/models/budget_update_response" require_relative "hanzoai/models/cache/redi_retrieve_info_params" +require_relative "hanzoai/models/cache/redi_retrieve_info_response" require_relative "hanzoai/models/cache_delete_params" +require_relative "hanzoai/models/cache_delete_response" require_relative "hanzoai/models/cache_flush_all_params" +require_relative "hanzoai/models/cache_flush_all_response" require_relative "hanzoai/models/cache_ping_params" require_relative "hanzoai/models/cache_ping_response" require_relative "hanzoai/models/chat/completion_create_params" +require_relative "hanzoai/models/chat/completion_create_response" require_relative "hanzoai/models/client_get_home_params" require_relative "hanzoai/models/cohere_create_params" +require_relative "hanzoai/models/cohere_create_response" require_relative "hanzoai/models/cohere_delete_params" +require_relative "hanzoai/models/cohere_delete_response" require_relative "hanzoai/models/cohere_modify_params" +require_relative "hanzoai/models/cohere_modify_response" require_relative "hanzoai/models/cohere_retrieve_params" +require_relative "hanzoai/models/cohere_retrieve_response" require_relative "hanzoai/models/cohere_update_params" +require_relative "hanzoai/models/cohere_update_response" require_relative "hanzoai/models/completion_create_params" +require_relative "hanzoai/models/completion_create_response" require_relative "hanzoai/models/config/pass_through_endpoint_create_params" +require_relative "hanzoai/models/config/pass_through_endpoint_create_response" require_relative "hanzoai/models/config/pass_through_endpoint_delete_params" require_relative "hanzoai/models/config/pass_through_endpoint_list_params" require_relative "hanzoai/models/config/pass_through_endpoint_response" require_relative "hanzoai/models/config/pass_through_endpoint_update_params" +require_relative "hanzoai/models/config/pass_through_endpoint_update_response" require_relative "hanzoai/models/configurable_clientside_params_custom_auth" require_relative "hanzoai/models/credential_create_params" +require_relative "hanzoai/models/credential_create_response" require_relative "hanzoai/models/credential_delete_params" +require_relative "hanzoai/models/credential_delete_response" require_relative "hanzoai/models/credential_item" require_relative "hanzoai/models/credential_list_params" +require_relative "hanzoai/models/credential_list_response" require_relative "hanzoai/models/customer_block_params" +require_relative "hanzoai/models/customer_block_response" require_relative "hanzoai/models/customer_create_params" +require_relative "hanzoai/models/customer_create_response" require_relative "hanzoai/models/customer_delete_params" +require_relative "hanzoai/models/customer_delete_response" require_relative "hanzoai/models/customer_list_params" require_relative "hanzoai/models/customer_list_response" require_relative "hanzoai/models/customer_retrieve_info_params" require_relative "hanzoai/models/customer_retrieve_info_response" require_relative "hanzoai/models/customer_unblock_params" +require_relative "hanzoai/models/customer_unblock_response" require_relative "hanzoai/models/customer_update_params" +require_relative "hanzoai/models/customer_update_response" require_relative "hanzoai/models/delete_create_allowed_ip_params" +require_relative "hanzoai/models/delete_create_allowed_ip_response" require_relative "hanzoai/models/embedding_create_params" +require_relative "hanzoai/models/embedding_create_response" require_relative "hanzoai/models/engine_complete_params" +require_relative "hanzoai/models/engine_complete_response" require_relative "hanzoai/models/engine_embed_params" +require_relative "hanzoai/models/engine_embed_response" require_relative "hanzoai/models/engines/chat_complete_params" +require_relative "hanzoai/models/engines/chat_complete_response" require_relative "hanzoai/models/eu_assemblyai_create_params" +require_relative "hanzoai/models/eu_assemblyai_create_response" require_relative "hanzoai/models/eu_assemblyai_delete_params" +require_relative "hanzoai/models/eu_assemblyai_delete_response" require_relative "hanzoai/models/eu_assemblyai_patch_params" +require_relative "hanzoai/models/eu_assemblyai_patch_response" require_relative "hanzoai/models/eu_assemblyai_retrieve_params" +require_relative "hanzoai/models/eu_assemblyai_retrieve_response" require_relative "hanzoai/models/eu_assemblyai_update_params" +require_relative "hanzoai/models/eu_assemblyai_update_response" require_relative "hanzoai/models/file_create_params" +require_relative "hanzoai/models/file_create_response" require_relative "hanzoai/models/file_delete_params" +require_relative "hanzoai/models/file_delete_response" require_relative "hanzoai/models/file_list_params" +require_relative "hanzoai/models/file_list_response" require_relative "hanzoai/models/file_retrieve_params" +require_relative "hanzoai/models/file_retrieve_response" require_relative "hanzoai/models/files/content_retrieve_params" +require_relative "hanzoai/models/files/content_retrieve_response" require_relative "hanzoai/models/fine_tuning/job_create_params" +require_relative "hanzoai/models/fine_tuning/job_create_response" require_relative "hanzoai/models/fine_tuning/job_list_params" +require_relative "hanzoai/models/fine_tuning/job_list_response" require_relative "hanzoai/models/fine_tuning/job_retrieve_params" +require_relative "hanzoai/models/fine_tuning/job_retrieve_response" require_relative "hanzoai/models/fine_tuning/jobs/cancel_create_params" +require_relative "hanzoai/models/fine_tuning/jobs/cancel_create_response" require_relative "hanzoai/models/gemini_create_params" +require_relative "hanzoai/models/gemini_create_response" require_relative "hanzoai/models/gemini_delete_params" +require_relative "hanzoai/models/gemini_delete_response" require_relative "hanzoai/models/gemini_patch_params" +require_relative "hanzoai/models/gemini_patch_response" require_relative "hanzoai/models/gemini_retrieve_params" +require_relative "hanzoai/models/gemini_retrieve_response" require_relative "hanzoai/models/gemini_update_params" +require_relative "hanzoai/models/gemini_update_response" require_relative "hanzoai/models/generate_key_response" +require_relative "hanzoai/models/get_home_response" require_relative "hanzoai/models/global/spend_list_tags_params" require_relative "hanzoai/models/global/spend_list_tags_response" require_relative "hanzoai/models/global/spend_reset_params" +require_relative "hanzoai/models/global/spend_reset_response" require_relative "hanzoai/models/global/spend_retrieve_report_params" require_relative "hanzoai/models/global/spend_retrieve_report_response" require_relative "hanzoai/models/guardrail_list_params" require_relative "hanzoai/models/guardrail_list_response" require_relative "hanzoai/models/health_check_all_params" +require_relative "hanzoai/models/health_check_all_response" require_relative "hanzoai/models/health_check_liveliness_params" +require_relative "hanzoai/models/health_check_liveliness_response" require_relative "hanzoai/models/health_check_liveness_params" +require_relative "hanzoai/models/health_check_liveness_response" require_relative "hanzoai/models/health_check_readiness_params" +require_relative "hanzoai/models/health_check_readiness_response" require_relative "hanzoai/models/health_check_services_params" +require_relative "hanzoai/models/health_check_services_response" require_relative "hanzoai/models/images/generation_create_params" +require_relative "hanzoai/models/images/generation_create_response" require_relative "hanzoai/models/key_block_params" require_relative "hanzoai/models/key_block_response" require_relative "hanzoai/models/key_check_health_params" require_relative "hanzoai/models/key_check_health_response" require_relative "hanzoai/models/key_delete_params" +require_relative "hanzoai/models/key_delete_response" require_relative "hanzoai/models/key_generate_params" require_relative "hanzoai/models/key_list_params" require_relative "hanzoai/models/key_list_response" require_relative "hanzoai/models/key_regenerate_by_key_params" require_relative "hanzoai/models/key_retrieve_info_params" +require_relative "hanzoai/models/key_retrieve_info_response" require_relative "hanzoai/models/key_unblock_params" +require_relative "hanzoai/models/key_unblock_response" require_relative "hanzoai/models/key_update_params" +require_relative "hanzoai/models/key_update_response" require_relative "hanzoai/models/langfuse_create_params" +require_relative "hanzoai/models/langfuse_create_response" require_relative "hanzoai/models/langfuse_delete_params" +require_relative "hanzoai/models/langfuse_delete_response" require_relative "hanzoai/models/langfuse_patch_params" +require_relative "hanzoai/models/langfuse_patch_response" require_relative "hanzoai/models/langfuse_retrieve_params" +require_relative "hanzoai/models/langfuse_retrieve_response" require_relative "hanzoai/models/langfuse_update_params" +require_relative "hanzoai/models/langfuse_update_response" require_relative "hanzoai/models/member" require_relative "hanzoai/models/model/info_list_params" +require_relative "hanzoai/models/model/info_list_response" require_relative "hanzoai/models/model/update_full_params" +require_relative "hanzoai/models/model/update_full_response" require_relative "hanzoai/models/model/update_partial_params" +require_relative "hanzoai/models/model/update_partial_response" require_relative "hanzoai/models/model_create_params" +require_relative "hanzoai/models/model_create_response" require_relative "hanzoai/models/model_delete_params" +require_relative "hanzoai/models/model_delete_response" require_relative "hanzoai/models/model_group_retrieve_info_params" +require_relative "hanzoai/models/model_group_retrieve_info_response" require_relative "hanzoai/models/model_info" require_relative "hanzoai/models/model_list_params" +require_relative "hanzoai/models/model_list_response" require_relative "hanzoai/models/moderation_create_params" +require_relative "hanzoai/models/moderation_create_response" require_relative "hanzoai/models/openai/deployment_complete_params" +require_relative "hanzoai/models/openai/deployment_complete_response" require_relative "hanzoai/models/openai/deployment_embed_params" +require_relative "hanzoai/models/openai/deployment_embed_response" require_relative "hanzoai/models/openai/deployments/chat_complete_params" +require_relative "hanzoai/models/openai/deployments/chat_complete_response" require_relative "hanzoai/models/openai_create_params" +require_relative "hanzoai/models/openai_create_response" require_relative "hanzoai/models/openai_delete_params" +require_relative "hanzoai/models/openai_delete_response" require_relative "hanzoai/models/openai_patch_params" +require_relative "hanzoai/models/openai_patch_response" require_relative "hanzoai/models/openai_retrieve_params" +require_relative "hanzoai/models/openai_retrieve_response" require_relative "hanzoai/models/openai_update_params" +require_relative "hanzoai/models/openai_update_response" require_relative "hanzoai/models/organization/info_deprecated_params" +require_relative "hanzoai/models/organization/info_deprecated_response" require_relative "hanzoai/models/organization/info_retrieve_params" require_relative "hanzoai/models/organization/info_retrieve_response" require_relative "hanzoai/models/organization_add_member_params" @@ -208,6 +327,7 @@ require_relative "hanzoai/models/organization_create_params" require_relative "hanzoai/models/organization_create_response" require_relative "hanzoai/models/organization_delete_member_params" +require_relative "hanzoai/models/organization_delete_member_response" require_relative "hanzoai/models/organization_delete_params" require_relative "hanzoai/models/organization_delete_response" require_relative "hanzoai/models/organization_list_params" @@ -220,60 +340,99 @@ require_relative "hanzoai/models/provider_list_budgets_params" require_relative "hanzoai/models/provider_list_budgets_response" require_relative "hanzoai/models/rerank_create_params" +require_relative "hanzoai/models/rerank_create_response" require_relative "hanzoai/models/rerank_create_v1_params" +require_relative "hanzoai/models/rerank_create_v1_response" require_relative "hanzoai/models/rerank_create_v2_params" +require_relative "hanzoai/models/rerank_create_v2_response" require_relative "hanzoai/models/response_create_params" +require_relative "hanzoai/models/response_create_response" require_relative "hanzoai/models/response_delete_params" +require_relative "hanzoai/models/response_delete_response" require_relative "hanzoai/models/response_retrieve_params" +require_relative "hanzoai/models/response_retrieve_response" require_relative "hanzoai/models/responses/input_item_list_params" +require_relative "hanzoai/models/responses/input_item_list_response" require_relative "hanzoai/models/route_list_params" +require_relative "hanzoai/models/route_list_response" require_relative "hanzoai/models/setting_retrieve_params" +require_relative "hanzoai/models/setting_retrieve_response" require_relative "hanzoai/models/spend_calculate_spend_params" +require_relative "hanzoai/models/spend_calculate_spend_response" require_relative "hanzoai/models/spend_list_logs_params" require_relative "hanzoai/models/spend_list_logs_response" require_relative "hanzoai/models/spend_list_tags_params" require_relative "hanzoai/models/spend_list_tags_response" require_relative "hanzoai/models/team/callback_add_params" +require_relative "hanzoai/models/team/callback_add_response" require_relative "hanzoai/models/team/callback_retrieve_params" +require_relative "hanzoai/models/team/callback_retrieve_response" require_relative "hanzoai/models/team/model_add_params" +require_relative "hanzoai/models/team/model_add_response" require_relative "hanzoai/models/team/model_remove_params" +require_relative "hanzoai/models/team/model_remove_response" require_relative "hanzoai/models/team_add_member_params" require_relative "hanzoai/models/team_add_member_response" require_relative "hanzoai/models/team_block_params" +require_relative "hanzoai/models/team_block_response" require_relative "hanzoai/models/team_create_params" require_relative "hanzoai/models/team_create_response" require_relative "hanzoai/models/team_delete_params" +require_relative "hanzoai/models/team_delete_response" require_relative "hanzoai/models/team_disable_logging_params" +require_relative "hanzoai/models/team_disable_logging_response" require_relative "hanzoai/models/team_list_available_params" +require_relative "hanzoai/models/team_list_available_response" require_relative "hanzoai/models/team_list_params" +require_relative "hanzoai/models/team_list_response" require_relative "hanzoai/models/team_remove_member_params" +require_relative "hanzoai/models/team_remove_member_response" require_relative "hanzoai/models/team_retrieve_info_params" +require_relative "hanzoai/models/team_retrieve_info_response" require_relative "hanzoai/models/team_unblock_params" +require_relative "hanzoai/models/team_unblock_response" require_relative "hanzoai/models/team_update_member_params" require_relative "hanzoai/models/team_update_member_response" require_relative "hanzoai/models/team_update_params" +require_relative "hanzoai/models/team_update_response" require_relative "hanzoai/models/test_ping_params" +require_relative "hanzoai/models/test_ping_response" require_relative "hanzoai/models/thread_create_params" +require_relative "hanzoai/models/thread_create_response" require_relative "hanzoai/models/thread_retrieve_params" +require_relative "hanzoai/models/thread_retrieve_response" require_relative "hanzoai/models/threads/message_create_params" +require_relative "hanzoai/models/threads/message_create_response" require_relative "hanzoai/models/threads/message_list_params" +require_relative "hanzoai/models/threads/message_list_response" require_relative "hanzoai/models/threads/run_create_params" +require_relative "hanzoai/models/threads/run_create_response" require_relative "hanzoai/models/user_create_params" require_relative "hanzoai/models/user_create_response" require_relative "hanzoai/models/user_delete_params" +require_relative "hanzoai/models/user_delete_response" require_relative "hanzoai/models/user_list_params" +require_relative "hanzoai/models/user_list_response" require_relative "hanzoai/models/user_retrieve_info_params" +require_relative "hanzoai/models/user_retrieve_info_response" require_relative "hanzoai/models/user_update_params" +require_relative "hanzoai/models/user_update_response" require_relative "hanzoai/models/util_get_supported_openai_params_params" +require_relative "hanzoai/models/util_get_supported_openai_params_response" require_relative "hanzoai/models/util_token_counter_params" require_relative "hanzoai/models/util_token_counter_response" require_relative "hanzoai/models/util_transform_request_params" require_relative "hanzoai/models/util_transform_request_response" require_relative "hanzoai/models/vertex_ai_create_params" +require_relative "hanzoai/models/vertex_ai_create_response" require_relative "hanzoai/models/vertex_ai_delete_params" +require_relative "hanzoai/models/vertex_ai_delete_response" require_relative "hanzoai/models/vertex_ai_patch_params" +require_relative "hanzoai/models/vertex_ai_patch_response" require_relative "hanzoai/models/vertex_ai_retrieve_params" +require_relative "hanzoai/models/vertex_ai_retrieve_response" require_relative "hanzoai/models/vertex_ai_update_params" +require_relative "hanzoai/models/vertex_ai_update_response" require_relative "hanzoai/resources/active" require_relative "hanzoai/resources/add" require_relative "hanzoai/resources/anthropic" diff --git a/lib/hanzoai/models/active_list_callbacks_response.rb b/lib/hanzoai/models/active_list_callbacks_response.rb new file mode 100644 index 00000000..e2e834ff --- /dev/null +++ b/lib/hanzoai/models/active_list_callbacks_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ActiveListCallbacksResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/add_add_allowed_ip_response.rb b/lib/hanzoai/models/add_add_allowed_ip_response.rb new file mode 100644 index 00000000..6f54260e --- /dev/null +++ b/lib/hanzoai/models/add_add_allowed_ip_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AddAddAllowedIPResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/anthropic_create_response.rb b/lib/hanzoai/models/anthropic_create_response.rb new file mode 100644 index 00000000..07fb3c4d --- /dev/null +++ b/lib/hanzoai/models/anthropic_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AnthropicCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/anthropic_delete_response.rb b/lib/hanzoai/models/anthropic_delete_response.rb new file mode 100644 index 00000000..074511ed --- /dev/null +++ b/lib/hanzoai/models/anthropic_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AnthropicDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/anthropic_modify_response.rb b/lib/hanzoai/models/anthropic_modify_response.rb new file mode 100644 index 00000000..0d566ae3 --- /dev/null +++ b/lib/hanzoai/models/anthropic_modify_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AnthropicModifyResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/anthropic_retrieve_response.rb b/lib/hanzoai/models/anthropic_retrieve_response.rb new file mode 100644 index 00000000..daf89902 --- /dev/null +++ b/lib/hanzoai/models/anthropic_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AnthropicRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/anthropic_update_response.rb b/lib/hanzoai/models/anthropic_update_response.rb new file mode 100644 index 00000000..6e1d9ff8 --- /dev/null +++ b/lib/hanzoai/models/anthropic_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AnthropicUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assemblyai_create_response.rb b/lib/hanzoai/models/assemblyai_create_response.rb new file mode 100644 index 00000000..f1ebc82f --- /dev/null +++ b/lib/hanzoai/models/assemblyai_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssemblyaiCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assemblyai_delete_response.rb b/lib/hanzoai/models/assemblyai_delete_response.rb new file mode 100644 index 00000000..27d580de --- /dev/null +++ b/lib/hanzoai/models/assemblyai_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssemblyaiDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assemblyai_patch_response.rb b/lib/hanzoai/models/assemblyai_patch_response.rb new file mode 100644 index 00000000..42a2c4ad --- /dev/null +++ b/lib/hanzoai/models/assemblyai_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssemblyaiPatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assemblyai_retrieve_response.rb b/lib/hanzoai/models/assemblyai_retrieve_response.rb new file mode 100644 index 00000000..31092130 --- /dev/null +++ b/lib/hanzoai/models/assemblyai_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssemblyaiRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assemblyai_update_response.rb b/lib/hanzoai/models/assemblyai_update_response.rb new file mode 100644 index 00000000..aadf9077 --- /dev/null +++ b/lib/hanzoai/models/assemblyai_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssemblyaiUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assistant_create_response.rb b/lib/hanzoai/models/assistant_create_response.rb new file mode 100644 index 00000000..e1bf43b1 --- /dev/null +++ b/lib/hanzoai/models/assistant_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssistantCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assistant_delete_response.rb b/lib/hanzoai/models/assistant_delete_response.rb new file mode 100644 index 00000000..a6e81a00 --- /dev/null +++ b/lib/hanzoai/models/assistant_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssistantDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/assistant_list_response.rb b/lib/hanzoai/models/assistant_list_response.rb new file mode 100644 index 00000000..ef191144 --- /dev/null +++ b/lib/hanzoai/models/assistant_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AssistantListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/audio/speech_create_response.rb b/lib/hanzoai/models/audio/speech_create_response.rb new file mode 100644 index 00000000..acc602fe --- /dev/null +++ b/lib/hanzoai/models/audio/speech_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Audio + # @type [Hanzoai::Internal::Type::Converter] + SpeechCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/audio/transcription_create_response.rb b/lib/hanzoai/models/audio/transcription_create_response.rb new file mode 100644 index 00000000..1b5c1ebd --- /dev/null +++ b/lib/hanzoai/models/audio/transcription_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Audio + # @type [Hanzoai::Internal::Type::Converter] + TranscriptionCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/azure_call_response.rb b/lib/hanzoai/models/azure_call_response.rb new file mode 100644 index 00000000..9e4a54c6 --- /dev/null +++ b/lib/hanzoai/models/azure_call_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AzureCallResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/azure_create_response.rb b/lib/hanzoai/models/azure_create_response.rb new file mode 100644 index 00000000..858ac294 --- /dev/null +++ b/lib/hanzoai/models/azure_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AzureCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/azure_delete_response.rb b/lib/hanzoai/models/azure_delete_response.rb new file mode 100644 index 00000000..97455805 --- /dev/null +++ b/lib/hanzoai/models/azure_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AzureDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/azure_patch_response.rb b/lib/hanzoai/models/azure_patch_response.rb new file mode 100644 index 00000000..386c077c --- /dev/null +++ b/lib/hanzoai/models/azure_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AzurePatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/azure_update_response.rb b/lib/hanzoai/models/azure_update_response.rb new file mode 100644 index 00000000..518c03aa --- /dev/null +++ b/lib/hanzoai/models/azure_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + AzureUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batch_cancel_with_provider_response.rb b/lib/hanzoai/models/batch_cancel_with_provider_response.rb new file mode 100644 index 00000000..2f656c0d --- /dev/null +++ b/lib/hanzoai/models/batch_cancel_with_provider_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BatchCancelWithProviderResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batch_create_response.rb b/lib/hanzoai/models/batch_create_response.rb new file mode 100644 index 00000000..7ba73ddc --- /dev/null +++ b/lib/hanzoai/models/batch_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BatchCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batch_create_with_provider_response.rb b/lib/hanzoai/models/batch_create_with_provider_response.rb new file mode 100644 index 00000000..dcfb556f --- /dev/null +++ b/lib/hanzoai/models/batch_create_with_provider_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BatchCreateWithProviderResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batch_list_response.rb b/lib/hanzoai/models/batch_list_response.rb new file mode 100644 index 00000000..963b9c11 --- /dev/null +++ b/lib/hanzoai/models/batch_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BatchListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batch_list_with_provider_response.rb b/lib/hanzoai/models/batch_list_with_provider_response.rb new file mode 100644 index 00000000..c2af9be6 --- /dev/null +++ b/lib/hanzoai/models/batch_list_with_provider_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BatchListWithProviderResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batch_retrieve_response.rb b/lib/hanzoai/models/batch_retrieve_response.rb new file mode 100644 index 00000000..0a382fca --- /dev/null +++ b/lib/hanzoai/models/batch_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BatchRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batch_retrieve_with_provider_response.rb b/lib/hanzoai/models/batch_retrieve_with_provider_response.rb new file mode 100644 index 00000000..5831633c --- /dev/null +++ b/lib/hanzoai/models/batch_retrieve_with_provider_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BatchRetrieveWithProviderResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/batches/cancel_cancel_response.rb b/lib/hanzoai/models/batches/cancel_cancel_response.rb new file mode 100644 index 00000000..1b860efc --- /dev/null +++ b/lib/hanzoai/models/batches/cancel_cancel_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Batches + # @type [Hanzoai::Internal::Type::Converter] + CancelCancelResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/bedrock_create_response.rb b/lib/hanzoai/models/bedrock_create_response.rb new file mode 100644 index 00000000..58b30b5a --- /dev/null +++ b/lib/hanzoai/models/bedrock_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BedrockCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/bedrock_delete_response.rb b/lib/hanzoai/models/bedrock_delete_response.rb new file mode 100644 index 00000000..8f1aba78 --- /dev/null +++ b/lib/hanzoai/models/bedrock_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BedrockDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/bedrock_patch_response.rb b/lib/hanzoai/models/bedrock_patch_response.rb new file mode 100644 index 00000000..2f7ed34e --- /dev/null +++ b/lib/hanzoai/models/bedrock_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BedrockPatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/bedrock_retrieve_response.rb b/lib/hanzoai/models/bedrock_retrieve_response.rb new file mode 100644 index 00000000..0a591f34 --- /dev/null +++ b/lib/hanzoai/models/bedrock_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BedrockRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/bedrock_update_response.rb b/lib/hanzoai/models/bedrock_update_response.rb new file mode 100644 index 00000000..41cee6ff --- /dev/null +++ b/lib/hanzoai/models/bedrock_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BedrockUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/budget_create_response.rb b/lib/hanzoai/models/budget_create_response.rb new file mode 100644 index 00000000..f0382fe7 --- /dev/null +++ b/lib/hanzoai/models/budget_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BudgetCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/budget_delete_response.rb b/lib/hanzoai/models/budget_delete_response.rb new file mode 100644 index 00000000..1d6d9f3b --- /dev/null +++ b/lib/hanzoai/models/budget_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BudgetDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/budget_info_response.rb b/lib/hanzoai/models/budget_info_response.rb new file mode 100644 index 00000000..8674d30f --- /dev/null +++ b/lib/hanzoai/models/budget_info_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BudgetInfoResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/budget_list_response.rb b/lib/hanzoai/models/budget_list_response.rb new file mode 100644 index 00000000..b2a50378 --- /dev/null +++ b/lib/hanzoai/models/budget_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BudgetListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/budget_settings_response.rb b/lib/hanzoai/models/budget_settings_response.rb new file mode 100644 index 00000000..93412661 --- /dev/null +++ b/lib/hanzoai/models/budget_settings_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BudgetSettingsResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/budget_update_response.rb b/lib/hanzoai/models/budget_update_response.rb new file mode 100644 index 00000000..c5ae533e --- /dev/null +++ b/lib/hanzoai/models/budget_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + BudgetUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/cache/redi_retrieve_info_response.rb b/lib/hanzoai/models/cache/redi_retrieve_info_response.rb new file mode 100644 index 00000000..33b6e29b --- /dev/null +++ b/lib/hanzoai/models/cache/redi_retrieve_info_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Cache + # @type [Hanzoai::Internal::Type::Converter] + RediRetrieveInfoResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/cache_delete_response.rb b/lib/hanzoai/models/cache_delete_response.rb new file mode 100644 index 00000000..be3b59f6 --- /dev/null +++ b/lib/hanzoai/models/cache_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CacheDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/cache_flush_all_response.rb b/lib/hanzoai/models/cache_flush_all_response.rb new file mode 100644 index 00000000..4e434ec1 --- /dev/null +++ b/lib/hanzoai/models/cache_flush_all_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CacheFlushAllResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/chat/completion_create_response.rb b/lib/hanzoai/models/chat/completion_create_response.rb new file mode 100644 index 00000000..6809d969 --- /dev/null +++ b/lib/hanzoai/models/chat/completion_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Chat + # @type [Hanzoai::Internal::Type::Converter] + CompletionCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/cohere_create_response.rb b/lib/hanzoai/models/cohere_create_response.rb new file mode 100644 index 00000000..a54dafce --- /dev/null +++ b/lib/hanzoai/models/cohere_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CohereCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/cohere_delete_response.rb b/lib/hanzoai/models/cohere_delete_response.rb new file mode 100644 index 00000000..5c36a100 --- /dev/null +++ b/lib/hanzoai/models/cohere_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CohereDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/cohere_modify_response.rb b/lib/hanzoai/models/cohere_modify_response.rb new file mode 100644 index 00000000..2f90a74c --- /dev/null +++ b/lib/hanzoai/models/cohere_modify_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CohereModifyResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/cohere_retrieve_response.rb b/lib/hanzoai/models/cohere_retrieve_response.rb new file mode 100644 index 00000000..510fe33f --- /dev/null +++ b/lib/hanzoai/models/cohere_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CohereRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/cohere_update_response.rb b/lib/hanzoai/models/cohere_update_response.rb new file mode 100644 index 00000000..ac659f95 --- /dev/null +++ b/lib/hanzoai/models/cohere_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CohereUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/completion_create_response.rb b/lib/hanzoai/models/completion_create_response.rb new file mode 100644 index 00000000..161b9dbf --- /dev/null +++ b/lib/hanzoai/models/completion_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CompletionCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_create_response.rb b/lib/hanzoai/models/config/pass_through_endpoint_create_response.rb new file mode 100644 index 00000000..67ed95bf --- /dev/null +++ b/lib/hanzoai/models/config/pass_through_endpoint_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Config + # @type [Hanzoai::Internal::Type::Converter] + PassThroughEndpointCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_update_response.rb b/lib/hanzoai/models/config/pass_through_endpoint_update_response.rb new file mode 100644 index 00000000..d608a69a --- /dev/null +++ b/lib/hanzoai/models/config/pass_through_endpoint_update_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Config + # @type [Hanzoai::Internal::Type::Converter] + PassThroughEndpointUpdateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/credential_create_response.rb b/lib/hanzoai/models/credential_create_response.rb new file mode 100644 index 00000000..87c45635 --- /dev/null +++ b/lib/hanzoai/models/credential_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CredentialCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/credential_delete_response.rb b/lib/hanzoai/models/credential_delete_response.rb new file mode 100644 index 00000000..2b818e6f --- /dev/null +++ b/lib/hanzoai/models/credential_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CredentialDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/credential_list_response.rb b/lib/hanzoai/models/credential_list_response.rb new file mode 100644 index 00000000..1590f962 --- /dev/null +++ b/lib/hanzoai/models/credential_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CredentialListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/customer_block_response.rb b/lib/hanzoai/models/customer_block_response.rb new file mode 100644 index 00000000..eb04a196 --- /dev/null +++ b/lib/hanzoai/models/customer_block_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CustomerBlockResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/customer_create_response.rb b/lib/hanzoai/models/customer_create_response.rb new file mode 100644 index 00000000..eb5d8ec3 --- /dev/null +++ b/lib/hanzoai/models/customer_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CustomerCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/customer_delete_response.rb b/lib/hanzoai/models/customer_delete_response.rb new file mode 100644 index 00000000..5519f088 --- /dev/null +++ b/lib/hanzoai/models/customer_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CustomerDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/customer_unblock_response.rb b/lib/hanzoai/models/customer_unblock_response.rb new file mode 100644 index 00000000..97f063ca --- /dev/null +++ b/lib/hanzoai/models/customer_unblock_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CustomerUnblockResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/customer_update_response.rb b/lib/hanzoai/models/customer_update_response.rb new file mode 100644 index 00000000..b4ef28e5 --- /dev/null +++ b/lib/hanzoai/models/customer_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + CustomerUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/delete_create_allowed_ip_response.rb b/lib/hanzoai/models/delete_create_allowed_ip_response.rb new file mode 100644 index 00000000..70e0fa92 --- /dev/null +++ b/lib/hanzoai/models/delete_create_allowed_ip_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + DeleteCreateAllowedIPResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/embedding_create_response.rb b/lib/hanzoai/models/embedding_create_response.rb new file mode 100644 index 00000000..dfb9af51 --- /dev/null +++ b/lib/hanzoai/models/embedding_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EmbeddingCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/engine_complete_response.rb b/lib/hanzoai/models/engine_complete_response.rb new file mode 100644 index 00000000..41259c32 --- /dev/null +++ b/lib/hanzoai/models/engine_complete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EngineCompleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/engine_embed_response.rb b/lib/hanzoai/models/engine_embed_response.rb new file mode 100644 index 00000000..59feaceb --- /dev/null +++ b/lib/hanzoai/models/engine_embed_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EngineEmbedResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/engines/chat_complete_response.rb b/lib/hanzoai/models/engines/chat_complete_response.rb new file mode 100644 index 00000000..d13db13a --- /dev/null +++ b/lib/hanzoai/models/engines/chat_complete_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Engines + # @type [Hanzoai::Internal::Type::Converter] + ChatCompleteResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/eu_assemblyai_create_response.rb b/lib/hanzoai/models/eu_assemblyai_create_response.rb new file mode 100644 index 00000000..d5864822 --- /dev/null +++ b/lib/hanzoai/models/eu_assemblyai_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EuAssemblyaiCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/eu_assemblyai_delete_response.rb b/lib/hanzoai/models/eu_assemblyai_delete_response.rb new file mode 100644 index 00000000..6ace2609 --- /dev/null +++ b/lib/hanzoai/models/eu_assemblyai_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EuAssemblyaiDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/eu_assemblyai_patch_response.rb b/lib/hanzoai/models/eu_assemblyai_patch_response.rb new file mode 100644 index 00000000..961f2231 --- /dev/null +++ b/lib/hanzoai/models/eu_assemblyai_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EuAssemblyaiPatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/eu_assemblyai_retrieve_response.rb b/lib/hanzoai/models/eu_assemblyai_retrieve_response.rb new file mode 100644 index 00000000..5799f96f --- /dev/null +++ b/lib/hanzoai/models/eu_assemblyai_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EuAssemblyaiRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/eu_assemblyai_update_response.rb b/lib/hanzoai/models/eu_assemblyai_update_response.rb new file mode 100644 index 00000000..9f5f7b07 --- /dev/null +++ b/lib/hanzoai/models/eu_assemblyai_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + EuAssemblyaiUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/file_create_response.rb b/lib/hanzoai/models/file_create_response.rb new file mode 100644 index 00000000..a5e2f938 --- /dev/null +++ b/lib/hanzoai/models/file_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + FileCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/file_delete_response.rb b/lib/hanzoai/models/file_delete_response.rb new file mode 100644 index 00000000..321d9683 --- /dev/null +++ b/lib/hanzoai/models/file_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + FileDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/file_list_response.rb b/lib/hanzoai/models/file_list_response.rb new file mode 100644 index 00000000..c7c065c9 --- /dev/null +++ b/lib/hanzoai/models/file_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + FileListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/file_retrieve_response.rb b/lib/hanzoai/models/file_retrieve_response.rb new file mode 100644 index 00000000..5747bee7 --- /dev/null +++ b/lib/hanzoai/models/file_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + FileRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/files/content_retrieve_response.rb b/lib/hanzoai/models/files/content_retrieve_response.rb new file mode 100644 index 00000000..4a2b29e0 --- /dev/null +++ b/lib/hanzoai/models/files/content_retrieve_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Files + # @type [Hanzoai::Internal::Type::Converter] + ContentRetrieveResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/fine_tuning/job_create_response.rb b/lib/hanzoai/models/fine_tuning/job_create_response.rb new file mode 100644 index 00000000..3cb236ef --- /dev/null +++ b/lib/hanzoai/models/fine_tuning/job_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module FineTuning + # @type [Hanzoai::Internal::Type::Converter] + JobCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/fine_tuning/job_list_response.rb b/lib/hanzoai/models/fine_tuning/job_list_response.rb new file mode 100644 index 00000000..8fc07e28 --- /dev/null +++ b/lib/hanzoai/models/fine_tuning/job_list_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module FineTuning + # @type [Hanzoai::Internal::Type::Converter] + JobListResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/fine_tuning/job_retrieve_response.rb b/lib/hanzoai/models/fine_tuning/job_retrieve_response.rb new file mode 100644 index 00000000..902fc5e8 --- /dev/null +++ b/lib/hanzoai/models/fine_tuning/job_retrieve_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module FineTuning + # @type [Hanzoai::Internal::Type::Converter] + JobRetrieveResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/fine_tuning/jobs/cancel_create_response.rb b/lib/hanzoai/models/fine_tuning/jobs/cancel_create_response.rb new file mode 100644 index 00000000..e0f4a375 --- /dev/null +++ b/lib/hanzoai/models/fine_tuning/jobs/cancel_create_response.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module FineTuning + module Jobs + # @type [Hanzoai::Internal::Type::Converter] + CancelCreateResponse = Hanzoai::Internal::Type::Unknown + end + end + end +end diff --git a/lib/hanzoai/models/gemini_create_response.rb b/lib/hanzoai/models/gemini_create_response.rb new file mode 100644 index 00000000..438b34a2 --- /dev/null +++ b/lib/hanzoai/models/gemini_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + GeminiCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/gemini_delete_response.rb b/lib/hanzoai/models/gemini_delete_response.rb new file mode 100644 index 00000000..2513c704 --- /dev/null +++ b/lib/hanzoai/models/gemini_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + GeminiDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/gemini_patch_response.rb b/lib/hanzoai/models/gemini_patch_response.rb new file mode 100644 index 00000000..95f6d353 --- /dev/null +++ b/lib/hanzoai/models/gemini_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + GeminiPatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/gemini_retrieve_response.rb b/lib/hanzoai/models/gemini_retrieve_response.rb new file mode 100644 index 00000000..2b660012 --- /dev/null +++ b/lib/hanzoai/models/gemini_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + GeminiRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/gemini_update_response.rb b/lib/hanzoai/models/gemini_update_response.rb new file mode 100644 index 00000000..50155068 --- /dev/null +++ b/lib/hanzoai/models/gemini_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + GeminiUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/get_home_response.rb b/lib/hanzoai/models/get_home_response.rb new file mode 100644 index 00000000..43734fb9 --- /dev/null +++ b/lib/hanzoai/models/get_home_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + GetHomeResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/global/spend_reset_response.rb b/lib/hanzoai/models/global/spend_reset_response.rb new file mode 100644 index 00000000..3cda3b4f --- /dev/null +++ b/lib/hanzoai/models/global/spend_reset_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Global + # @type [Hanzoai::Internal::Type::Converter] + SpendResetResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/health_check_all_response.rb b/lib/hanzoai/models/health_check_all_response.rb new file mode 100644 index 00000000..7b484910 --- /dev/null +++ b/lib/hanzoai/models/health_check_all_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + HealthCheckAllResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/health_check_liveliness_response.rb b/lib/hanzoai/models/health_check_liveliness_response.rb new file mode 100644 index 00000000..a8752e1d --- /dev/null +++ b/lib/hanzoai/models/health_check_liveliness_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + HealthCheckLivelinessResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/health_check_liveness_response.rb b/lib/hanzoai/models/health_check_liveness_response.rb new file mode 100644 index 00000000..88014cd1 --- /dev/null +++ b/lib/hanzoai/models/health_check_liveness_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + HealthCheckLivenessResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/health_check_readiness_response.rb b/lib/hanzoai/models/health_check_readiness_response.rb new file mode 100644 index 00000000..5d006fae --- /dev/null +++ b/lib/hanzoai/models/health_check_readiness_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + HealthCheckReadinessResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/health_check_services_response.rb b/lib/hanzoai/models/health_check_services_response.rb new file mode 100644 index 00000000..95004946 --- /dev/null +++ b/lib/hanzoai/models/health_check_services_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + HealthCheckServicesResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/images/generation_create_response.rb b/lib/hanzoai/models/images/generation_create_response.rb new file mode 100644 index 00000000..947a29f2 --- /dev/null +++ b/lib/hanzoai/models/images/generation_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Images + # @type [Hanzoai::Internal::Type::Converter] + GenerationCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/key_delete_response.rb b/lib/hanzoai/models/key_delete_response.rb new file mode 100644 index 00000000..d4676cf9 --- /dev/null +++ b/lib/hanzoai/models/key_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + KeyDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/key_retrieve_info_response.rb b/lib/hanzoai/models/key_retrieve_info_response.rb new file mode 100644 index 00000000..154daf3e --- /dev/null +++ b/lib/hanzoai/models/key_retrieve_info_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + KeyRetrieveInfoResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/key_unblock_response.rb b/lib/hanzoai/models/key_unblock_response.rb new file mode 100644 index 00000000..5e0608d2 --- /dev/null +++ b/lib/hanzoai/models/key_unblock_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + KeyUnblockResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/key_update_response.rb b/lib/hanzoai/models/key_update_response.rb new file mode 100644 index 00000000..4720ebe8 --- /dev/null +++ b/lib/hanzoai/models/key_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + KeyUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/langfuse_create_response.rb b/lib/hanzoai/models/langfuse_create_response.rb new file mode 100644 index 00000000..c8442b25 --- /dev/null +++ b/lib/hanzoai/models/langfuse_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + LangfuseCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/langfuse_delete_response.rb b/lib/hanzoai/models/langfuse_delete_response.rb new file mode 100644 index 00000000..b3947e8a --- /dev/null +++ b/lib/hanzoai/models/langfuse_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + LangfuseDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/langfuse_patch_response.rb b/lib/hanzoai/models/langfuse_patch_response.rb new file mode 100644 index 00000000..d9786544 --- /dev/null +++ b/lib/hanzoai/models/langfuse_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + LangfusePatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/langfuse_retrieve_response.rb b/lib/hanzoai/models/langfuse_retrieve_response.rb new file mode 100644 index 00000000..7b88c81c --- /dev/null +++ b/lib/hanzoai/models/langfuse_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + LangfuseRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/langfuse_update_response.rb b/lib/hanzoai/models/langfuse_update_response.rb new file mode 100644 index 00000000..0e9e5454 --- /dev/null +++ b/lib/hanzoai/models/langfuse_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + LangfuseUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/model/info_list_response.rb b/lib/hanzoai/models/model/info_list_response.rb new file mode 100644 index 00000000..8fd510cc --- /dev/null +++ b/lib/hanzoai/models/model/info_list_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Model + # @type [Hanzoai::Internal::Type::Converter] + InfoListResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/model/update_full_response.rb b/lib/hanzoai/models/model/update_full_response.rb new file mode 100644 index 00000000..92794b44 --- /dev/null +++ b/lib/hanzoai/models/model/update_full_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Model + # @type [Hanzoai::Internal::Type::Converter] + UpdateFullResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/model/update_partial_response.rb b/lib/hanzoai/models/model/update_partial_response.rb new file mode 100644 index 00000000..750fdb55 --- /dev/null +++ b/lib/hanzoai/models/model/update_partial_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Model + # @type [Hanzoai::Internal::Type::Converter] + UpdatePartialResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/model_create_response.rb b/lib/hanzoai/models/model_create_response.rb new file mode 100644 index 00000000..04ead8d2 --- /dev/null +++ b/lib/hanzoai/models/model_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ModelCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/model_delete_response.rb b/lib/hanzoai/models/model_delete_response.rb new file mode 100644 index 00000000..5b77adb4 --- /dev/null +++ b/lib/hanzoai/models/model_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ModelDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/model_group_retrieve_info_response.rb b/lib/hanzoai/models/model_group_retrieve_info_response.rb new file mode 100644 index 00000000..4d4116a4 --- /dev/null +++ b/lib/hanzoai/models/model_group_retrieve_info_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ModelGroupRetrieveInfoResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/model_list_response.rb b/lib/hanzoai/models/model_list_response.rb new file mode 100644 index 00000000..c0f52861 --- /dev/null +++ b/lib/hanzoai/models/model_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ModelListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/moderation_create_response.rb b/lib/hanzoai/models/moderation_create_response.rb new file mode 100644 index 00000000..634f8ea7 --- /dev/null +++ b/lib/hanzoai/models/moderation_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ModerationCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/openai/deployment_complete_response.rb b/lib/hanzoai/models/openai/deployment_complete_response.rb new file mode 100644 index 00000000..4d793758 --- /dev/null +++ b/lib/hanzoai/models/openai/deployment_complete_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module OpenAI + # @type [Hanzoai::Internal::Type::Converter] + DeploymentCompleteResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/openai/deployment_embed_response.rb b/lib/hanzoai/models/openai/deployment_embed_response.rb new file mode 100644 index 00000000..d8e89bc6 --- /dev/null +++ b/lib/hanzoai/models/openai/deployment_embed_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module OpenAI + # @type [Hanzoai::Internal::Type::Converter] + DeploymentEmbedResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/openai/deployments/chat_complete_response.rb b/lib/hanzoai/models/openai/deployments/chat_complete_response.rb new file mode 100644 index 00000000..4ae8a195 --- /dev/null +++ b/lib/hanzoai/models/openai/deployments/chat_complete_response.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module OpenAI + module Deployments + # @type [Hanzoai::Internal::Type::Converter] + ChatCompleteResponse = Hanzoai::Internal::Type::Unknown + end + end + end +end diff --git a/lib/hanzoai/models/openai_create_response.rb b/lib/hanzoai/models/openai_create_response.rb new file mode 100644 index 00000000..4a460897 --- /dev/null +++ b/lib/hanzoai/models/openai_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + OpenAICreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/openai_delete_response.rb b/lib/hanzoai/models/openai_delete_response.rb new file mode 100644 index 00000000..d6ca472d --- /dev/null +++ b/lib/hanzoai/models/openai_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + OpenAIDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/openai_patch_response.rb b/lib/hanzoai/models/openai_patch_response.rb new file mode 100644 index 00000000..7f260691 --- /dev/null +++ b/lib/hanzoai/models/openai_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + OpenAIPatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/openai_retrieve_response.rb b/lib/hanzoai/models/openai_retrieve_response.rb new file mode 100644 index 00000000..09f08243 --- /dev/null +++ b/lib/hanzoai/models/openai_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + OpenAIRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/openai_update_response.rb b/lib/hanzoai/models/openai_update_response.rb new file mode 100644 index 00000000..d99bd598 --- /dev/null +++ b/lib/hanzoai/models/openai_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + OpenAIUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/organization/info_deprecated_response.rb b/lib/hanzoai/models/organization/info_deprecated_response.rb new file mode 100644 index 00000000..83e9b312 --- /dev/null +++ b/lib/hanzoai/models/organization/info_deprecated_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Organization + # @type [Hanzoai::Internal::Type::Converter] + InfoDeprecatedResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/organization_delete_member_response.rb b/lib/hanzoai/models/organization_delete_member_response.rb new file mode 100644 index 00000000..5e5400ef --- /dev/null +++ b/lib/hanzoai/models/organization_delete_member_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + OrganizationDeleteMemberResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/rerank_create_response.rb b/lib/hanzoai/models/rerank_create_response.rb new file mode 100644 index 00000000..08cf4d92 --- /dev/null +++ b/lib/hanzoai/models/rerank_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + RerankCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/rerank_create_v1_response.rb b/lib/hanzoai/models/rerank_create_v1_response.rb new file mode 100644 index 00000000..f415fefc --- /dev/null +++ b/lib/hanzoai/models/rerank_create_v1_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + RerankCreateV1Response = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/rerank_create_v2_response.rb b/lib/hanzoai/models/rerank_create_v2_response.rb new file mode 100644 index 00000000..593adf9a --- /dev/null +++ b/lib/hanzoai/models/rerank_create_v2_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + RerankCreateV2Response = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/response_create_response.rb b/lib/hanzoai/models/response_create_response.rb new file mode 100644 index 00000000..14ff5b2e --- /dev/null +++ b/lib/hanzoai/models/response_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ResponseCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/response_delete_response.rb b/lib/hanzoai/models/response_delete_response.rb new file mode 100644 index 00000000..db9543e0 --- /dev/null +++ b/lib/hanzoai/models/response_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ResponseDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/response_retrieve_response.rb b/lib/hanzoai/models/response_retrieve_response.rb new file mode 100644 index 00000000..f44512e8 --- /dev/null +++ b/lib/hanzoai/models/response_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ResponseRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/responses/input_item_list_response.rb b/lib/hanzoai/models/responses/input_item_list_response.rb new file mode 100644 index 00000000..722fbf54 --- /dev/null +++ b/lib/hanzoai/models/responses/input_item_list_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Responses + # @type [Hanzoai::Internal::Type::Converter] + InputItemListResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/route_list_response.rb b/lib/hanzoai/models/route_list_response.rb new file mode 100644 index 00000000..7a60b955 --- /dev/null +++ b/lib/hanzoai/models/route_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + RouteListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/setting_retrieve_response.rb b/lib/hanzoai/models/setting_retrieve_response.rb new file mode 100644 index 00000000..dea25c67 --- /dev/null +++ b/lib/hanzoai/models/setting_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + SettingRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/spend_calculate_spend_response.rb b/lib/hanzoai/models/spend_calculate_spend_response.rb new file mode 100644 index 00000000..04fa5c92 --- /dev/null +++ b/lib/hanzoai/models/spend_calculate_spend_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + SpendCalculateSpendResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team/callback_add_response.rb b/lib/hanzoai/models/team/callback_add_response.rb new file mode 100644 index 00000000..2f11bb6c --- /dev/null +++ b/lib/hanzoai/models/team/callback_add_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Team + # @type [Hanzoai::Internal::Type::Converter] + CallbackAddResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/team/callback_retrieve_response.rb b/lib/hanzoai/models/team/callback_retrieve_response.rb new file mode 100644 index 00000000..d2b60f83 --- /dev/null +++ b/lib/hanzoai/models/team/callback_retrieve_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Team + # @type [Hanzoai::Internal::Type::Converter] + CallbackRetrieveResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/team/model_add_response.rb b/lib/hanzoai/models/team/model_add_response.rb new file mode 100644 index 00000000..9752a761 --- /dev/null +++ b/lib/hanzoai/models/team/model_add_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Team + # @type [Hanzoai::Internal::Type::Converter] + ModelAddResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/team/model_remove_response.rb b/lib/hanzoai/models/team/model_remove_response.rb new file mode 100644 index 00000000..0cc0d75a --- /dev/null +++ b/lib/hanzoai/models/team/model_remove_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Team + # @type [Hanzoai::Internal::Type::Converter] + ModelRemoveResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/team_block_response.rb b/lib/hanzoai/models/team_block_response.rb new file mode 100644 index 00000000..8b4b8956 --- /dev/null +++ b/lib/hanzoai/models/team_block_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamBlockResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_delete_response.rb b/lib/hanzoai/models/team_delete_response.rb new file mode 100644 index 00000000..5d6f3394 --- /dev/null +++ b/lib/hanzoai/models/team_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_disable_logging_response.rb b/lib/hanzoai/models/team_disable_logging_response.rb new file mode 100644 index 00000000..0703d2aa --- /dev/null +++ b/lib/hanzoai/models/team_disable_logging_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamDisableLoggingResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_list_available_response.rb b/lib/hanzoai/models/team_list_available_response.rb new file mode 100644 index 00000000..df685428 --- /dev/null +++ b/lib/hanzoai/models/team_list_available_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamListAvailableResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_list_response.rb b/lib/hanzoai/models/team_list_response.rb new file mode 100644 index 00000000..bd07e2af --- /dev/null +++ b/lib/hanzoai/models/team_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_remove_member_response.rb b/lib/hanzoai/models/team_remove_member_response.rb new file mode 100644 index 00000000..be9424a1 --- /dev/null +++ b/lib/hanzoai/models/team_remove_member_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamRemoveMemberResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_retrieve_info_response.rb b/lib/hanzoai/models/team_retrieve_info_response.rb new file mode 100644 index 00000000..f9665782 --- /dev/null +++ b/lib/hanzoai/models/team_retrieve_info_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamRetrieveInfoResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_unblock_response.rb b/lib/hanzoai/models/team_unblock_response.rb new file mode 100644 index 00000000..0e3ba532 --- /dev/null +++ b/lib/hanzoai/models/team_unblock_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamUnblockResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/team_update_response.rb b/lib/hanzoai/models/team_update_response.rb new file mode 100644 index 00000000..af21a643 --- /dev/null +++ b/lib/hanzoai/models/team_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TeamUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/test_ping_response.rb b/lib/hanzoai/models/test_ping_response.rb new file mode 100644 index 00000000..554c05ee --- /dev/null +++ b/lib/hanzoai/models/test_ping_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + TestPingResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/thread_create_response.rb b/lib/hanzoai/models/thread_create_response.rb new file mode 100644 index 00000000..7373e594 --- /dev/null +++ b/lib/hanzoai/models/thread_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ThreadCreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/thread_retrieve_response.rb b/lib/hanzoai/models/thread_retrieve_response.rb new file mode 100644 index 00000000..7c96a104 --- /dev/null +++ b/lib/hanzoai/models/thread_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + ThreadRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/threads/message_create_response.rb b/lib/hanzoai/models/threads/message_create_response.rb new file mode 100644 index 00000000..5ff0f900 --- /dev/null +++ b/lib/hanzoai/models/threads/message_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Threads + # @type [Hanzoai::Internal::Type::Converter] + MessageCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/threads/message_list_response.rb b/lib/hanzoai/models/threads/message_list_response.rb new file mode 100644 index 00000000..486e8d34 --- /dev/null +++ b/lib/hanzoai/models/threads/message_list_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Threads + # @type [Hanzoai::Internal::Type::Converter] + MessageListResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/threads/run_create_response.rb b/lib/hanzoai/models/threads/run_create_response.rb new file mode 100644 index 00000000..8741aae6 --- /dev/null +++ b/lib/hanzoai/models/threads/run_create_response.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module Threads + # @type [Hanzoai::Internal::Type::Converter] + RunCreateResponse = Hanzoai::Internal::Type::Unknown + end + end +end diff --git a/lib/hanzoai/models/user_delete_response.rb b/lib/hanzoai/models/user_delete_response.rb new file mode 100644 index 00000000..10a0d5a0 --- /dev/null +++ b/lib/hanzoai/models/user_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + UserDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/user_list_response.rb b/lib/hanzoai/models/user_list_response.rb new file mode 100644 index 00000000..abe4a4a0 --- /dev/null +++ b/lib/hanzoai/models/user_list_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + UserListResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/user_retrieve_info_response.rb b/lib/hanzoai/models/user_retrieve_info_response.rb new file mode 100644 index 00000000..1226d93d --- /dev/null +++ b/lib/hanzoai/models/user_retrieve_info_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + UserRetrieveInfoResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/user_update_response.rb b/lib/hanzoai/models/user_update_response.rb new file mode 100644 index 00000000..de280075 --- /dev/null +++ b/lib/hanzoai/models/user_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + UserUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/util_get_supported_openai_params_response.rb b/lib/hanzoai/models/util_get_supported_openai_params_response.rb new file mode 100644 index 00000000..e81963ec --- /dev/null +++ b/lib/hanzoai/models/util_get_supported_openai_params_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + UtilGetSupportedOpenAIParamsResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/vertex_ai_create_response.rb b/lib/hanzoai/models/vertex_ai_create_response.rb new file mode 100644 index 00000000..3d8a5412 --- /dev/null +++ b/lib/hanzoai/models/vertex_ai_create_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + VertexAICreateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/vertex_ai_delete_response.rb b/lib/hanzoai/models/vertex_ai_delete_response.rb new file mode 100644 index 00000000..085c7931 --- /dev/null +++ b/lib/hanzoai/models/vertex_ai_delete_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + VertexAIDeleteResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/vertex_ai_patch_response.rb b/lib/hanzoai/models/vertex_ai_patch_response.rb new file mode 100644 index 00000000..08a3ca6c --- /dev/null +++ b/lib/hanzoai/models/vertex_ai_patch_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + VertexAIPatchResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/vertex_ai_retrieve_response.rb b/lib/hanzoai/models/vertex_ai_retrieve_response.rb new file mode 100644 index 00000000..aed7ec17 --- /dev/null +++ b/lib/hanzoai/models/vertex_ai_retrieve_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + VertexAIRetrieveResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/lib/hanzoai/models/vertex_ai_update_response.rb b/lib/hanzoai/models/vertex_ai_update_response.rb new file mode 100644 index 00000000..2dddee00 --- /dev/null +++ b/lib/hanzoai/models/vertex_ai_update_response.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @type [Hanzoai::Internal::Type::Converter] + VertexAIUpdateResponse = Hanzoai::Internal::Type::Unknown + end +end diff --git a/rbi/hanzoai/models/active_list_callbacks_response.rbi b/rbi/hanzoai/models/active_list_callbacks_response.rbi new file mode 100644 index 00000000..3297890a --- /dev/null +++ b/rbi/hanzoai/models/active_list_callbacks_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ActiveListCallbacksResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/add_add_allowed_ip_response.rbi b/rbi/hanzoai/models/add_add_allowed_ip_response.rbi new file mode 100644 index 00000000..110251d3 --- /dev/null +++ b/rbi/hanzoai/models/add_add_allowed_ip_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AddAddAllowedIPResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/anthropic_create_response.rbi b/rbi/hanzoai/models/anthropic_create_response.rbi new file mode 100644 index 00000000..c58424d5 --- /dev/null +++ b/rbi/hanzoai/models/anthropic_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AnthropicCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/anthropic_delete_response.rbi b/rbi/hanzoai/models/anthropic_delete_response.rbi new file mode 100644 index 00000000..a821840e --- /dev/null +++ b/rbi/hanzoai/models/anthropic_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AnthropicDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/anthropic_modify_response.rbi b/rbi/hanzoai/models/anthropic_modify_response.rbi new file mode 100644 index 00000000..67533eb9 --- /dev/null +++ b/rbi/hanzoai/models/anthropic_modify_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AnthropicModifyResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/anthropic_retrieve_response.rbi b/rbi/hanzoai/models/anthropic_retrieve_response.rbi new file mode 100644 index 00000000..3558432a --- /dev/null +++ b/rbi/hanzoai/models/anthropic_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AnthropicRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/anthropic_update_response.rbi b/rbi/hanzoai/models/anthropic_update_response.rbi new file mode 100644 index 00000000..b233fbc7 --- /dev/null +++ b/rbi/hanzoai/models/anthropic_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AnthropicUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assemblyai_create_response.rbi b/rbi/hanzoai/models/assemblyai_create_response.rbi new file mode 100644 index 00000000..a4594300 --- /dev/null +++ b/rbi/hanzoai/models/assemblyai_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssemblyaiCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assemblyai_delete_response.rbi b/rbi/hanzoai/models/assemblyai_delete_response.rbi new file mode 100644 index 00000000..f2bdcf58 --- /dev/null +++ b/rbi/hanzoai/models/assemblyai_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssemblyaiDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assemblyai_patch_response.rbi b/rbi/hanzoai/models/assemblyai_patch_response.rbi new file mode 100644 index 00000000..8dc5a171 --- /dev/null +++ b/rbi/hanzoai/models/assemblyai_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssemblyaiPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assemblyai_retrieve_response.rbi b/rbi/hanzoai/models/assemblyai_retrieve_response.rbi new file mode 100644 index 00000000..dff8ac6e --- /dev/null +++ b/rbi/hanzoai/models/assemblyai_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssemblyaiRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assemblyai_update_response.rbi b/rbi/hanzoai/models/assemblyai_update_response.rbi new file mode 100644 index 00000000..a2d9e748 --- /dev/null +++ b/rbi/hanzoai/models/assemblyai_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssemblyaiUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assistant_create_response.rbi b/rbi/hanzoai/models/assistant_create_response.rbi new file mode 100644 index 00000000..af055f1c --- /dev/null +++ b/rbi/hanzoai/models/assistant_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssistantCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assistant_delete_response.rbi b/rbi/hanzoai/models/assistant_delete_response.rbi new file mode 100644 index 00000000..8dce9895 --- /dev/null +++ b/rbi/hanzoai/models/assistant_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssistantDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/assistant_list_response.rbi b/rbi/hanzoai/models/assistant_list_response.rbi new file mode 100644 index 00000000..2b562293 --- /dev/null +++ b/rbi/hanzoai/models/assistant_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AssistantListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/audio/speech_create_response.rbi b/rbi/hanzoai/models/audio/speech_create_response.rbi new file mode 100644 index 00000000..cb2aebcb --- /dev/null +++ b/rbi/hanzoai/models/audio/speech_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Audio + SpeechCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/audio/transcription_create_response.rbi b/rbi/hanzoai/models/audio/transcription_create_response.rbi new file mode 100644 index 00000000..3fcf817c --- /dev/null +++ b/rbi/hanzoai/models/audio/transcription_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Audio + TranscriptionCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/azure_call_response.rbi b/rbi/hanzoai/models/azure_call_response.rbi new file mode 100644 index 00000000..3436bdcd --- /dev/null +++ b/rbi/hanzoai/models/azure_call_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AzureCallResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/azure_create_response.rbi b/rbi/hanzoai/models/azure_create_response.rbi new file mode 100644 index 00000000..4320f38d --- /dev/null +++ b/rbi/hanzoai/models/azure_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AzureCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/azure_delete_response.rbi b/rbi/hanzoai/models/azure_delete_response.rbi new file mode 100644 index 00000000..f3e8d352 --- /dev/null +++ b/rbi/hanzoai/models/azure_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AzureDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/azure_patch_response.rbi b/rbi/hanzoai/models/azure_patch_response.rbi new file mode 100644 index 00000000..f9957cd0 --- /dev/null +++ b/rbi/hanzoai/models/azure_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AzurePatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/azure_update_response.rbi b/rbi/hanzoai/models/azure_update_response.rbi new file mode 100644 index 00000000..1bb0e9d6 --- /dev/null +++ b/rbi/hanzoai/models/azure_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + AzureUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batch_cancel_with_provider_response.rbi b/rbi/hanzoai/models/batch_cancel_with_provider_response.rbi new file mode 100644 index 00000000..fdd247b0 --- /dev/null +++ b/rbi/hanzoai/models/batch_cancel_with_provider_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BatchCancelWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batch_create_response.rbi b/rbi/hanzoai/models/batch_create_response.rbi new file mode 100644 index 00000000..0fffe839 --- /dev/null +++ b/rbi/hanzoai/models/batch_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BatchCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batch_create_with_provider_response.rbi b/rbi/hanzoai/models/batch_create_with_provider_response.rbi new file mode 100644 index 00000000..02347796 --- /dev/null +++ b/rbi/hanzoai/models/batch_create_with_provider_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BatchCreateWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batch_list_response.rbi b/rbi/hanzoai/models/batch_list_response.rbi new file mode 100644 index 00000000..602818a8 --- /dev/null +++ b/rbi/hanzoai/models/batch_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BatchListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batch_list_with_provider_response.rbi b/rbi/hanzoai/models/batch_list_with_provider_response.rbi new file mode 100644 index 00000000..fc3dfad2 --- /dev/null +++ b/rbi/hanzoai/models/batch_list_with_provider_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BatchListWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batch_retrieve_response.rbi b/rbi/hanzoai/models/batch_retrieve_response.rbi new file mode 100644 index 00000000..477d7797 --- /dev/null +++ b/rbi/hanzoai/models/batch_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BatchRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi b/rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi new file mode 100644 index 00000000..68372584 --- /dev/null +++ b/rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BatchRetrieveWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/batches/cancel_cancel_response.rbi b/rbi/hanzoai/models/batches/cancel_cancel_response.rbi new file mode 100644 index 00000000..0273faed --- /dev/null +++ b/rbi/hanzoai/models/batches/cancel_cancel_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Batches + CancelCancelResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/bedrock_create_response.rbi b/rbi/hanzoai/models/bedrock_create_response.rbi new file mode 100644 index 00000000..cbb7f2a7 --- /dev/null +++ b/rbi/hanzoai/models/bedrock_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BedrockCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/bedrock_delete_response.rbi b/rbi/hanzoai/models/bedrock_delete_response.rbi new file mode 100644 index 00000000..10e45271 --- /dev/null +++ b/rbi/hanzoai/models/bedrock_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BedrockDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/bedrock_patch_response.rbi b/rbi/hanzoai/models/bedrock_patch_response.rbi new file mode 100644 index 00000000..2ac01fc4 --- /dev/null +++ b/rbi/hanzoai/models/bedrock_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BedrockPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/bedrock_retrieve_response.rbi b/rbi/hanzoai/models/bedrock_retrieve_response.rbi new file mode 100644 index 00000000..045bcbd4 --- /dev/null +++ b/rbi/hanzoai/models/bedrock_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BedrockRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/bedrock_update_response.rbi b/rbi/hanzoai/models/bedrock_update_response.rbi new file mode 100644 index 00000000..17aaf602 --- /dev/null +++ b/rbi/hanzoai/models/bedrock_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BedrockUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/budget_create_response.rbi b/rbi/hanzoai/models/budget_create_response.rbi new file mode 100644 index 00000000..25a09ef7 --- /dev/null +++ b/rbi/hanzoai/models/budget_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BudgetCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/budget_delete_response.rbi b/rbi/hanzoai/models/budget_delete_response.rbi new file mode 100644 index 00000000..ca17d8ec --- /dev/null +++ b/rbi/hanzoai/models/budget_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BudgetDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/budget_info_response.rbi b/rbi/hanzoai/models/budget_info_response.rbi new file mode 100644 index 00000000..20f80baa --- /dev/null +++ b/rbi/hanzoai/models/budget_info_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BudgetInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/budget_list_response.rbi b/rbi/hanzoai/models/budget_list_response.rbi new file mode 100644 index 00000000..ab9aa566 --- /dev/null +++ b/rbi/hanzoai/models/budget_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BudgetListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/budget_settings_response.rbi b/rbi/hanzoai/models/budget_settings_response.rbi new file mode 100644 index 00000000..01ee1026 --- /dev/null +++ b/rbi/hanzoai/models/budget_settings_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BudgetSettingsResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/budget_update_response.rbi b/rbi/hanzoai/models/budget_update_response.rbi new file mode 100644 index 00000000..3ef46c3c --- /dev/null +++ b/rbi/hanzoai/models/budget_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + BudgetUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi b/rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi new file mode 100644 index 00000000..447a8383 --- /dev/null +++ b/rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Cache + RediRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/cache_delete_response.rbi b/rbi/hanzoai/models/cache_delete_response.rbi new file mode 100644 index 00000000..13655b23 --- /dev/null +++ b/rbi/hanzoai/models/cache_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CacheDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/cache_flush_all_response.rbi b/rbi/hanzoai/models/cache_flush_all_response.rbi new file mode 100644 index 00000000..61c3aeb6 --- /dev/null +++ b/rbi/hanzoai/models/cache_flush_all_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CacheFlushAllResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/chat/completion_create_response.rbi b/rbi/hanzoai/models/chat/completion_create_response.rbi new file mode 100644 index 00000000..ee99b9e7 --- /dev/null +++ b/rbi/hanzoai/models/chat/completion_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Chat + CompletionCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/cohere_create_response.rbi b/rbi/hanzoai/models/cohere_create_response.rbi new file mode 100644 index 00000000..317c6027 --- /dev/null +++ b/rbi/hanzoai/models/cohere_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CohereCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/cohere_delete_response.rbi b/rbi/hanzoai/models/cohere_delete_response.rbi new file mode 100644 index 00000000..7194d1f1 --- /dev/null +++ b/rbi/hanzoai/models/cohere_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CohereDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/cohere_modify_response.rbi b/rbi/hanzoai/models/cohere_modify_response.rbi new file mode 100644 index 00000000..7c513733 --- /dev/null +++ b/rbi/hanzoai/models/cohere_modify_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CohereModifyResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/cohere_retrieve_response.rbi b/rbi/hanzoai/models/cohere_retrieve_response.rbi new file mode 100644 index 00000000..d3dfddf3 --- /dev/null +++ b/rbi/hanzoai/models/cohere_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CohereRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/cohere_update_response.rbi b/rbi/hanzoai/models/cohere_update_response.rbi new file mode 100644 index 00000000..7b327e1c --- /dev/null +++ b/rbi/hanzoai/models/cohere_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CohereUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/completion_create_response.rbi b/rbi/hanzoai/models/completion_create_response.rbi new file mode 100644 index 00000000..cc5375a4 --- /dev/null +++ b/rbi/hanzoai/models/completion_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CompletionCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi new file mode 100644 index 00000000..51506f76 --- /dev/null +++ b/rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Config + PassThroughEndpointCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi new file mode 100644 index 00000000..34f78725 --- /dev/null +++ b/rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Config + PassThroughEndpointUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/credential_create_response.rbi b/rbi/hanzoai/models/credential_create_response.rbi new file mode 100644 index 00000000..c24bbaad --- /dev/null +++ b/rbi/hanzoai/models/credential_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CredentialCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/credential_delete_response.rbi b/rbi/hanzoai/models/credential_delete_response.rbi new file mode 100644 index 00000000..732fe9b9 --- /dev/null +++ b/rbi/hanzoai/models/credential_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CredentialDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/credential_list_response.rbi b/rbi/hanzoai/models/credential_list_response.rbi new file mode 100644 index 00000000..f4868fb1 --- /dev/null +++ b/rbi/hanzoai/models/credential_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CredentialListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/customer_block_response.rbi b/rbi/hanzoai/models/customer_block_response.rbi new file mode 100644 index 00000000..4ed809a0 --- /dev/null +++ b/rbi/hanzoai/models/customer_block_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CustomerBlockResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/customer_create_response.rbi b/rbi/hanzoai/models/customer_create_response.rbi new file mode 100644 index 00000000..0ff338e1 --- /dev/null +++ b/rbi/hanzoai/models/customer_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CustomerCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/customer_delete_response.rbi b/rbi/hanzoai/models/customer_delete_response.rbi new file mode 100644 index 00000000..ae7c1b16 --- /dev/null +++ b/rbi/hanzoai/models/customer_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CustomerDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/customer_unblock_response.rbi b/rbi/hanzoai/models/customer_unblock_response.rbi new file mode 100644 index 00000000..58c9ea40 --- /dev/null +++ b/rbi/hanzoai/models/customer_unblock_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CustomerUnblockResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/customer_update_response.rbi b/rbi/hanzoai/models/customer_update_response.rbi new file mode 100644 index 00000000..d7ccf3d0 --- /dev/null +++ b/rbi/hanzoai/models/customer_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + CustomerUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/delete_create_allowed_ip_response.rbi b/rbi/hanzoai/models/delete_create_allowed_ip_response.rbi new file mode 100644 index 00000000..e926131b --- /dev/null +++ b/rbi/hanzoai/models/delete_create_allowed_ip_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + DeleteCreateAllowedIPResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/embedding_create_response.rbi b/rbi/hanzoai/models/embedding_create_response.rbi new file mode 100644 index 00000000..3a178d08 --- /dev/null +++ b/rbi/hanzoai/models/embedding_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EmbeddingCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/engine_complete_response.rbi b/rbi/hanzoai/models/engine_complete_response.rbi new file mode 100644 index 00000000..60662404 --- /dev/null +++ b/rbi/hanzoai/models/engine_complete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EngineCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/engine_embed_response.rbi b/rbi/hanzoai/models/engine_embed_response.rbi new file mode 100644 index 00000000..81dd6c96 --- /dev/null +++ b/rbi/hanzoai/models/engine_embed_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EngineEmbedResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/engines/chat_complete_response.rbi b/rbi/hanzoai/models/engines/chat_complete_response.rbi new file mode 100644 index 00000000..f500faad --- /dev/null +++ b/rbi/hanzoai/models/engines/chat_complete_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Engines + ChatCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/eu_assemblyai_create_response.rbi b/rbi/hanzoai/models/eu_assemblyai_create_response.rbi new file mode 100644 index 00000000..751a3cfa --- /dev/null +++ b/rbi/hanzoai/models/eu_assemblyai_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EuAssemblyaiCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/eu_assemblyai_delete_response.rbi b/rbi/hanzoai/models/eu_assemblyai_delete_response.rbi new file mode 100644 index 00000000..963bb33e --- /dev/null +++ b/rbi/hanzoai/models/eu_assemblyai_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EuAssemblyaiDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/eu_assemblyai_patch_response.rbi b/rbi/hanzoai/models/eu_assemblyai_patch_response.rbi new file mode 100644 index 00000000..8780bcd8 --- /dev/null +++ b/rbi/hanzoai/models/eu_assemblyai_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EuAssemblyaiPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi b/rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi new file mode 100644 index 00000000..c2576f7b --- /dev/null +++ b/rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EuAssemblyaiRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/eu_assemblyai_update_response.rbi b/rbi/hanzoai/models/eu_assemblyai_update_response.rbi new file mode 100644 index 00000000..62d32e31 --- /dev/null +++ b/rbi/hanzoai/models/eu_assemblyai_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + EuAssemblyaiUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/file_create_response.rbi b/rbi/hanzoai/models/file_create_response.rbi new file mode 100644 index 00000000..f489e2be --- /dev/null +++ b/rbi/hanzoai/models/file_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + FileCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/file_delete_response.rbi b/rbi/hanzoai/models/file_delete_response.rbi new file mode 100644 index 00000000..d0080585 --- /dev/null +++ b/rbi/hanzoai/models/file_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + FileDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/file_list_response.rbi b/rbi/hanzoai/models/file_list_response.rbi new file mode 100644 index 00000000..84d9af3e --- /dev/null +++ b/rbi/hanzoai/models/file_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + FileListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/file_retrieve_response.rbi b/rbi/hanzoai/models/file_retrieve_response.rbi new file mode 100644 index 00000000..399d94d9 --- /dev/null +++ b/rbi/hanzoai/models/file_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + FileRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/files/content_retrieve_response.rbi b/rbi/hanzoai/models/files/content_retrieve_response.rbi new file mode 100644 index 00000000..f7acfe44 --- /dev/null +++ b/rbi/hanzoai/models/files/content_retrieve_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Files + ContentRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/fine_tuning/job_create_response.rbi b/rbi/hanzoai/models/fine_tuning/job_create_response.rbi new file mode 100644 index 00000000..65f3cf5c --- /dev/null +++ b/rbi/hanzoai/models/fine_tuning/job_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module FineTuning + JobCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/fine_tuning/job_list_response.rbi b/rbi/hanzoai/models/fine_tuning/job_list_response.rbi new file mode 100644 index 00000000..4b508a57 --- /dev/null +++ b/rbi/hanzoai/models/fine_tuning/job_list_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module FineTuning + JobListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi b/rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi new file mode 100644 index 00000000..485020a4 --- /dev/null +++ b/rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module FineTuning + JobRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi new file mode 100644 index 00000000..1fab3cd8 --- /dev/null +++ b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Hanzoai + module Models + module FineTuning + module Jobs + CancelCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end + end +end diff --git a/rbi/hanzoai/models/gemini_create_response.rbi b/rbi/hanzoai/models/gemini_create_response.rbi new file mode 100644 index 00000000..6677d8e8 --- /dev/null +++ b/rbi/hanzoai/models/gemini_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + GeminiCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/gemini_delete_response.rbi b/rbi/hanzoai/models/gemini_delete_response.rbi new file mode 100644 index 00000000..53bcedfc --- /dev/null +++ b/rbi/hanzoai/models/gemini_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + GeminiDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/gemini_patch_response.rbi b/rbi/hanzoai/models/gemini_patch_response.rbi new file mode 100644 index 00000000..2b479bd7 --- /dev/null +++ b/rbi/hanzoai/models/gemini_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + GeminiPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/gemini_retrieve_response.rbi b/rbi/hanzoai/models/gemini_retrieve_response.rbi new file mode 100644 index 00000000..f9d82240 --- /dev/null +++ b/rbi/hanzoai/models/gemini_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + GeminiRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/gemini_update_response.rbi b/rbi/hanzoai/models/gemini_update_response.rbi new file mode 100644 index 00000000..2e7e7613 --- /dev/null +++ b/rbi/hanzoai/models/gemini_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + GeminiUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/get_home_response.rbi b/rbi/hanzoai/models/get_home_response.rbi new file mode 100644 index 00000000..6e327056 --- /dev/null +++ b/rbi/hanzoai/models/get_home_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + GetHomeResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/global/spend_reset_response.rbi b/rbi/hanzoai/models/global/spend_reset_response.rbi new file mode 100644 index 00000000..224de9e6 --- /dev/null +++ b/rbi/hanzoai/models/global/spend_reset_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Global + SpendResetResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/health_check_all_response.rbi b/rbi/hanzoai/models/health_check_all_response.rbi new file mode 100644 index 00000000..a859cd99 --- /dev/null +++ b/rbi/hanzoai/models/health_check_all_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + HealthCheckAllResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/health_check_liveliness_response.rbi b/rbi/hanzoai/models/health_check_liveliness_response.rbi new file mode 100644 index 00000000..6600eab2 --- /dev/null +++ b/rbi/hanzoai/models/health_check_liveliness_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + HealthCheckLivelinessResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/health_check_liveness_response.rbi b/rbi/hanzoai/models/health_check_liveness_response.rbi new file mode 100644 index 00000000..e888ce3d --- /dev/null +++ b/rbi/hanzoai/models/health_check_liveness_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + HealthCheckLivenessResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/health_check_readiness_response.rbi b/rbi/hanzoai/models/health_check_readiness_response.rbi new file mode 100644 index 00000000..3959e2d9 --- /dev/null +++ b/rbi/hanzoai/models/health_check_readiness_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + HealthCheckReadinessResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/health_check_services_response.rbi b/rbi/hanzoai/models/health_check_services_response.rbi new file mode 100644 index 00000000..37c38053 --- /dev/null +++ b/rbi/hanzoai/models/health_check_services_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + HealthCheckServicesResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/images/generation_create_response.rbi b/rbi/hanzoai/models/images/generation_create_response.rbi new file mode 100644 index 00000000..6b4e01aa --- /dev/null +++ b/rbi/hanzoai/models/images/generation_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Images + GenerationCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/key_delete_response.rbi b/rbi/hanzoai/models/key_delete_response.rbi new file mode 100644 index 00000000..c1a35084 --- /dev/null +++ b/rbi/hanzoai/models/key_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + KeyDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/key_retrieve_info_response.rbi b/rbi/hanzoai/models/key_retrieve_info_response.rbi new file mode 100644 index 00000000..80c8f89c --- /dev/null +++ b/rbi/hanzoai/models/key_retrieve_info_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + KeyRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/key_unblock_response.rbi b/rbi/hanzoai/models/key_unblock_response.rbi new file mode 100644 index 00000000..0e24c401 --- /dev/null +++ b/rbi/hanzoai/models/key_unblock_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + KeyUnblockResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/key_update_response.rbi b/rbi/hanzoai/models/key_update_response.rbi new file mode 100644 index 00000000..b00ed736 --- /dev/null +++ b/rbi/hanzoai/models/key_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + KeyUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/langfuse_create_response.rbi b/rbi/hanzoai/models/langfuse_create_response.rbi new file mode 100644 index 00000000..96635f21 --- /dev/null +++ b/rbi/hanzoai/models/langfuse_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + LangfuseCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/langfuse_delete_response.rbi b/rbi/hanzoai/models/langfuse_delete_response.rbi new file mode 100644 index 00000000..4847fe3e --- /dev/null +++ b/rbi/hanzoai/models/langfuse_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + LangfuseDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/langfuse_patch_response.rbi b/rbi/hanzoai/models/langfuse_patch_response.rbi new file mode 100644 index 00000000..deec8eac --- /dev/null +++ b/rbi/hanzoai/models/langfuse_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + LangfusePatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/langfuse_retrieve_response.rbi b/rbi/hanzoai/models/langfuse_retrieve_response.rbi new file mode 100644 index 00000000..30a07e60 --- /dev/null +++ b/rbi/hanzoai/models/langfuse_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + LangfuseRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/langfuse_update_response.rbi b/rbi/hanzoai/models/langfuse_update_response.rbi new file mode 100644 index 00000000..a8f13d76 --- /dev/null +++ b/rbi/hanzoai/models/langfuse_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + LangfuseUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/model/info_list_response.rbi b/rbi/hanzoai/models/model/info_list_response.rbi new file mode 100644 index 00000000..4d6b23f3 --- /dev/null +++ b/rbi/hanzoai/models/model/info_list_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Model + InfoListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/model/update_full_response.rbi b/rbi/hanzoai/models/model/update_full_response.rbi new file mode 100644 index 00000000..1c453603 --- /dev/null +++ b/rbi/hanzoai/models/model/update_full_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Model + UpdateFullResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/model/update_partial_response.rbi b/rbi/hanzoai/models/model/update_partial_response.rbi new file mode 100644 index 00000000..38c7ce62 --- /dev/null +++ b/rbi/hanzoai/models/model/update_partial_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Model + UpdatePartialResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/model_create_response.rbi b/rbi/hanzoai/models/model_create_response.rbi new file mode 100644 index 00000000..7c9076b8 --- /dev/null +++ b/rbi/hanzoai/models/model_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ModelCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/model_delete_response.rbi b/rbi/hanzoai/models/model_delete_response.rbi new file mode 100644 index 00000000..ccad07ea --- /dev/null +++ b/rbi/hanzoai/models/model_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ModelDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/model_group_retrieve_info_response.rbi b/rbi/hanzoai/models/model_group_retrieve_info_response.rbi new file mode 100644 index 00000000..fa85a495 --- /dev/null +++ b/rbi/hanzoai/models/model_group_retrieve_info_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ModelGroupRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/model_list_response.rbi b/rbi/hanzoai/models/model_list_response.rbi new file mode 100644 index 00000000..548237b1 --- /dev/null +++ b/rbi/hanzoai/models/model_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ModelListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/moderation_create_response.rbi b/rbi/hanzoai/models/moderation_create_response.rbi new file mode 100644 index 00000000..b1d412d6 --- /dev/null +++ b/rbi/hanzoai/models/moderation_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ModerationCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/openai/deployment_complete_response.rbi b/rbi/hanzoai/models/openai/deployment_complete_response.rbi new file mode 100644 index 00000000..45bb659c --- /dev/null +++ b/rbi/hanzoai/models/openai/deployment_complete_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module OpenAI + DeploymentCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/openai/deployment_embed_response.rbi b/rbi/hanzoai/models/openai/deployment_embed_response.rbi new file mode 100644 index 00000000..33233f76 --- /dev/null +++ b/rbi/hanzoai/models/openai/deployment_embed_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module OpenAI + DeploymentEmbedResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi b/rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi new file mode 100644 index 00000000..6e1b8b9c --- /dev/null +++ b/rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi @@ -0,0 +1,11 @@ +# typed: strong + +module Hanzoai + module Models + module OpenAI + module Deployments + ChatCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end + end +end diff --git a/rbi/hanzoai/models/openai_create_response.rbi b/rbi/hanzoai/models/openai_create_response.rbi new file mode 100644 index 00000000..c6033cfb --- /dev/null +++ b/rbi/hanzoai/models/openai_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + OpenAICreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/openai_delete_response.rbi b/rbi/hanzoai/models/openai_delete_response.rbi new file mode 100644 index 00000000..f1c22a57 --- /dev/null +++ b/rbi/hanzoai/models/openai_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + OpenAIDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/openai_patch_response.rbi b/rbi/hanzoai/models/openai_patch_response.rbi new file mode 100644 index 00000000..ef1a00f7 --- /dev/null +++ b/rbi/hanzoai/models/openai_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + OpenAIPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/openai_retrieve_response.rbi b/rbi/hanzoai/models/openai_retrieve_response.rbi new file mode 100644 index 00000000..b8603647 --- /dev/null +++ b/rbi/hanzoai/models/openai_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + OpenAIRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/openai_update_response.rbi b/rbi/hanzoai/models/openai_update_response.rbi new file mode 100644 index 00000000..2ee5d020 --- /dev/null +++ b/rbi/hanzoai/models/openai_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + OpenAIUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/organization/info_deprecated_response.rbi b/rbi/hanzoai/models/organization/info_deprecated_response.rbi new file mode 100644 index 00000000..7abffe1b --- /dev/null +++ b/rbi/hanzoai/models/organization/info_deprecated_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Organization + InfoDeprecatedResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/organization_delete_member_response.rbi b/rbi/hanzoai/models/organization_delete_member_response.rbi new file mode 100644 index 00000000..0a0b1103 --- /dev/null +++ b/rbi/hanzoai/models/organization_delete_member_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + OrganizationDeleteMemberResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/rerank_create_response.rbi b/rbi/hanzoai/models/rerank_create_response.rbi new file mode 100644 index 00000000..125938b8 --- /dev/null +++ b/rbi/hanzoai/models/rerank_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + RerankCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/rerank_create_v1_response.rbi b/rbi/hanzoai/models/rerank_create_v1_response.rbi new file mode 100644 index 00000000..7df23858 --- /dev/null +++ b/rbi/hanzoai/models/rerank_create_v1_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + RerankCreateV1Response = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/rerank_create_v2_response.rbi b/rbi/hanzoai/models/rerank_create_v2_response.rbi new file mode 100644 index 00000000..8f6bf1ff --- /dev/null +++ b/rbi/hanzoai/models/rerank_create_v2_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + RerankCreateV2Response = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/response_create_response.rbi b/rbi/hanzoai/models/response_create_response.rbi new file mode 100644 index 00000000..32db8ef6 --- /dev/null +++ b/rbi/hanzoai/models/response_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ResponseCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/response_delete_response.rbi b/rbi/hanzoai/models/response_delete_response.rbi new file mode 100644 index 00000000..9964d6bf --- /dev/null +++ b/rbi/hanzoai/models/response_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ResponseDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/response_retrieve_response.rbi b/rbi/hanzoai/models/response_retrieve_response.rbi new file mode 100644 index 00000000..20a65b65 --- /dev/null +++ b/rbi/hanzoai/models/response_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ResponseRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/responses/input_item_list_response.rbi b/rbi/hanzoai/models/responses/input_item_list_response.rbi new file mode 100644 index 00000000..df2eb6e3 --- /dev/null +++ b/rbi/hanzoai/models/responses/input_item_list_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Responses + InputItemListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/route_list_response.rbi b/rbi/hanzoai/models/route_list_response.rbi new file mode 100644 index 00000000..e398e214 --- /dev/null +++ b/rbi/hanzoai/models/route_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + RouteListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/setting_retrieve_response.rbi b/rbi/hanzoai/models/setting_retrieve_response.rbi new file mode 100644 index 00000000..f988fe3a --- /dev/null +++ b/rbi/hanzoai/models/setting_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + SettingRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/spend_calculate_spend_response.rbi b/rbi/hanzoai/models/spend_calculate_spend_response.rbi new file mode 100644 index 00000000..7b16657a --- /dev/null +++ b/rbi/hanzoai/models/spend_calculate_spend_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + SpendCalculateSpendResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team/callback_add_response.rbi b/rbi/hanzoai/models/team/callback_add_response.rbi new file mode 100644 index 00000000..d95a1d3a --- /dev/null +++ b/rbi/hanzoai/models/team/callback_add_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Team + CallbackAddResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/team/callback_retrieve_response.rbi b/rbi/hanzoai/models/team/callback_retrieve_response.rbi new file mode 100644 index 00000000..32940d4e --- /dev/null +++ b/rbi/hanzoai/models/team/callback_retrieve_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Team + CallbackRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/team/model_add_response.rbi b/rbi/hanzoai/models/team/model_add_response.rbi new file mode 100644 index 00000000..2bbd38b5 --- /dev/null +++ b/rbi/hanzoai/models/team/model_add_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Team + ModelAddResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/team/model_remove_response.rbi b/rbi/hanzoai/models/team/model_remove_response.rbi new file mode 100644 index 00000000..aa2c26bb --- /dev/null +++ b/rbi/hanzoai/models/team/model_remove_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Team + ModelRemoveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/team_block_response.rbi b/rbi/hanzoai/models/team_block_response.rbi new file mode 100644 index 00000000..bc4ab15c --- /dev/null +++ b/rbi/hanzoai/models/team_block_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamBlockResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_delete_response.rbi b/rbi/hanzoai/models/team_delete_response.rbi new file mode 100644 index 00000000..b9f882f7 --- /dev/null +++ b/rbi/hanzoai/models/team_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_disable_logging_response.rbi b/rbi/hanzoai/models/team_disable_logging_response.rbi new file mode 100644 index 00000000..1e68ea6e --- /dev/null +++ b/rbi/hanzoai/models/team_disable_logging_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamDisableLoggingResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_list_available_response.rbi b/rbi/hanzoai/models/team_list_available_response.rbi new file mode 100644 index 00000000..cfafd9ba --- /dev/null +++ b/rbi/hanzoai/models/team_list_available_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamListAvailableResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_list_response.rbi b/rbi/hanzoai/models/team_list_response.rbi new file mode 100644 index 00000000..1a32baf9 --- /dev/null +++ b/rbi/hanzoai/models/team_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_remove_member_response.rbi b/rbi/hanzoai/models/team_remove_member_response.rbi new file mode 100644 index 00000000..5f9e7999 --- /dev/null +++ b/rbi/hanzoai/models/team_remove_member_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamRemoveMemberResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_retrieve_info_response.rbi b/rbi/hanzoai/models/team_retrieve_info_response.rbi new file mode 100644 index 00000000..22d3a395 --- /dev/null +++ b/rbi/hanzoai/models/team_retrieve_info_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_unblock_response.rbi b/rbi/hanzoai/models/team_unblock_response.rbi new file mode 100644 index 00000000..1a99bf07 --- /dev/null +++ b/rbi/hanzoai/models/team_unblock_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamUnblockResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/team_update_response.rbi b/rbi/hanzoai/models/team_update_response.rbi new file mode 100644 index 00000000..322b06ca --- /dev/null +++ b/rbi/hanzoai/models/team_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TeamUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/test_ping_response.rbi b/rbi/hanzoai/models/test_ping_response.rbi new file mode 100644 index 00000000..3349e7ca --- /dev/null +++ b/rbi/hanzoai/models/test_ping_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + TestPingResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/thread_create_response.rbi b/rbi/hanzoai/models/thread_create_response.rbi new file mode 100644 index 00000000..73368c09 --- /dev/null +++ b/rbi/hanzoai/models/thread_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ThreadCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/thread_retrieve_response.rbi b/rbi/hanzoai/models/thread_retrieve_response.rbi new file mode 100644 index 00000000..d6824f8e --- /dev/null +++ b/rbi/hanzoai/models/thread_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + ThreadRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/threads/message_create_response.rbi b/rbi/hanzoai/models/threads/message_create_response.rbi new file mode 100644 index 00000000..09126bd9 --- /dev/null +++ b/rbi/hanzoai/models/threads/message_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Threads + MessageCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/threads/message_list_response.rbi b/rbi/hanzoai/models/threads/message_list_response.rbi new file mode 100644 index 00000000..329b05ed --- /dev/null +++ b/rbi/hanzoai/models/threads/message_list_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Threads + MessageListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/threads/run_create_response.rbi b/rbi/hanzoai/models/threads/run_create_response.rbi new file mode 100644 index 00000000..fdeff389 --- /dev/null +++ b/rbi/hanzoai/models/threads/run_create_response.rbi @@ -0,0 +1,9 @@ +# typed: strong + +module Hanzoai + module Models + module Threads + RunCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end + end +end diff --git a/rbi/hanzoai/models/user_delete_response.rbi b/rbi/hanzoai/models/user_delete_response.rbi new file mode 100644 index 00000000..67e91c4f --- /dev/null +++ b/rbi/hanzoai/models/user_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + UserDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/user_list_response.rbi b/rbi/hanzoai/models/user_list_response.rbi new file mode 100644 index 00000000..68035dc7 --- /dev/null +++ b/rbi/hanzoai/models/user_list_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + UserListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/user_retrieve_info_response.rbi b/rbi/hanzoai/models/user_retrieve_info_response.rbi new file mode 100644 index 00000000..27d87b10 --- /dev/null +++ b/rbi/hanzoai/models/user_retrieve_info_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + UserRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/user_update_response.rbi b/rbi/hanzoai/models/user_update_response.rbi new file mode 100644 index 00000000..932d7f74 --- /dev/null +++ b/rbi/hanzoai/models/user_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + UserUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/util_get_supported_openai_params_response.rbi b/rbi/hanzoai/models/util_get_supported_openai_params_response.rbi new file mode 100644 index 00000000..2bf5204a --- /dev/null +++ b/rbi/hanzoai/models/util_get_supported_openai_params_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + UtilGetSupportedOpenAIParamsResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/vertex_ai_create_response.rbi b/rbi/hanzoai/models/vertex_ai_create_response.rbi new file mode 100644 index 00000000..c2d03f72 --- /dev/null +++ b/rbi/hanzoai/models/vertex_ai_create_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + VertexAICreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/vertex_ai_delete_response.rbi b/rbi/hanzoai/models/vertex_ai_delete_response.rbi new file mode 100644 index 00000000..94b350e3 --- /dev/null +++ b/rbi/hanzoai/models/vertex_ai_delete_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + VertexAIDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/vertex_ai_patch_response.rbi b/rbi/hanzoai/models/vertex_ai_patch_response.rbi new file mode 100644 index 00000000..716642e1 --- /dev/null +++ b/rbi/hanzoai/models/vertex_ai_patch_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + VertexAIPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/vertex_ai_retrieve_response.rbi b/rbi/hanzoai/models/vertex_ai_retrieve_response.rbi new file mode 100644 index 00000000..f5235b45 --- /dev/null +++ b/rbi/hanzoai/models/vertex_ai_retrieve_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + VertexAIRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/rbi/hanzoai/models/vertex_ai_update_response.rbi b/rbi/hanzoai/models/vertex_ai_update_response.rbi new file mode 100644 index 00000000..8f1c3663 --- /dev/null +++ b/rbi/hanzoai/models/vertex_ai_update_response.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module Hanzoai + module Models + VertexAIUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + end +end diff --git a/sig/hanzoai/models/active_list_callbacks_response.rbs b/sig/hanzoai/models/active_list_callbacks_response.rbs new file mode 100644 index 00000000..92c17d11 --- /dev/null +++ b/sig/hanzoai/models/active_list_callbacks_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ActiveListCallbacksResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/add_add_allowed_ip_response.rbs b/sig/hanzoai/models/add_add_allowed_ip_response.rbs new file mode 100644 index 00000000..7b1170e3 --- /dev/null +++ b/sig/hanzoai/models/add_add_allowed_ip_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AddAddAllowedIPResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/anthropic_create_response.rbs b/sig/hanzoai/models/anthropic_create_response.rbs new file mode 100644 index 00000000..90522b8e --- /dev/null +++ b/sig/hanzoai/models/anthropic_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AnthropicCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/anthropic_delete_response.rbs b/sig/hanzoai/models/anthropic_delete_response.rbs new file mode 100644 index 00000000..2af0d421 --- /dev/null +++ b/sig/hanzoai/models/anthropic_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AnthropicDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/anthropic_modify_response.rbs b/sig/hanzoai/models/anthropic_modify_response.rbs new file mode 100644 index 00000000..c5efb8ea --- /dev/null +++ b/sig/hanzoai/models/anthropic_modify_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AnthropicModifyResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/anthropic_retrieve_response.rbs b/sig/hanzoai/models/anthropic_retrieve_response.rbs new file mode 100644 index 00000000..5a029621 --- /dev/null +++ b/sig/hanzoai/models/anthropic_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AnthropicRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/anthropic_update_response.rbs b/sig/hanzoai/models/anthropic_update_response.rbs new file mode 100644 index 00000000..a60b7afa --- /dev/null +++ b/sig/hanzoai/models/anthropic_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AnthropicUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assemblyai_create_response.rbs b/sig/hanzoai/models/assemblyai_create_response.rbs new file mode 100644 index 00000000..805a0f8e --- /dev/null +++ b/sig/hanzoai/models/assemblyai_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssemblyaiCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assemblyai_delete_response.rbs b/sig/hanzoai/models/assemblyai_delete_response.rbs new file mode 100644 index 00000000..a01fc431 --- /dev/null +++ b/sig/hanzoai/models/assemblyai_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssemblyaiDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assemblyai_patch_response.rbs b/sig/hanzoai/models/assemblyai_patch_response.rbs new file mode 100644 index 00000000..2b310f78 --- /dev/null +++ b/sig/hanzoai/models/assemblyai_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssemblyaiPatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assemblyai_retrieve_response.rbs b/sig/hanzoai/models/assemblyai_retrieve_response.rbs new file mode 100644 index 00000000..572813ef --- /dev/null +++ b/sig/hanzoai/models/assemblyai_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssemblyaiRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assemblyai_update_response.rbs b/sig/hanzoai/models/assemblyai_update_response.rbs new file mode 100644 index 00000000..5edc67f2 --- /dev/null +++ b/sig/hanzoai/models/assemblyai_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssemblyaiUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assistant_create_response.rbs b/sig/hanzoai/models/assistant_create_response.rbs new file mode 100644 index 00000000..c742852c --- /dev/null +++ b/sig/hanzoai/models/assistant_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssistantCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assistant_delete_response.rbs b/sig/hanzoai/models/assistant_delete_response.rbs new file mode 100644 index 00000000..40c1785e --- /dev/null +++ b/sig/hanzoai/models/assistant_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssistantDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/assistant_list_response.rbs b/sig/hanzoai/models/assistant_list_response.rbs new file mode 100644 index 00000000..c7873aa1 --- /dev/null +++ b/sig/hanzoai/models/assistant_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AssistantListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/audio/speech_create_response.rbs b/sig/hanzoai/models/audio/speech_create_response.rbs new file mode 100644 index 00000000..28aa390b --- /dev/null +++ b/sig/hanzoai/models/audio/speech_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Audio + SpeechCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/audio/transcription_create_response.rbs b/sig/hanzoai/models/audio/transcription_create_response.rbs new file mode 100644 index 00000000..5841a904 --- /dev/null +++ b/sig/hanzoai/models/audio/transcription_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Audio + TranscriptionCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/azure_call_response.rbs b/sig/hanzoai/models/azure_call_response.rbs new file mode 100644 index 00000000..5bcbf146 --- /dev/null +++ b/sig/hanzoai/models/azure_call_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AzureCallResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/azure_create_response.rbs b/sig/hanzoai/models/azure_create_response.rbs new file mode 100644 index 00000000..4169fb8e --- /dev/null +++ b/sig/hanzoai/models/azure_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AzureCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/azure_delete_response.rbs b/sig/hanzoai/models/azure_delete_response.rbs new file mode 100644 index 00000000..d5ca67a2 --- /dev/null +++ b/sig/hanzoai/models/azure_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AzureDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/azure_patch_response.rbs b/sig/hanzoai/models/azure_patch_response.rbs new file mode 100644 index 00000000..1ed6f1ec --- /dev/null +++ b/sig/hanzoai/models/azure_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AzurePatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/azure_update_response.rbs b/sig/hanzoai/models/azure_update_response.rbs new file mode 100644 index 00000000..708c99cf --- /dev/null +++ b/sig/hanzoai/models/azure_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + AzureUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batch_cancel_with_provider_response.rbs b/sig/hanzoai/models/batch_cancel_with_provider_response.rbs new file mode 100644 index 00000000..48b3e121 --- /dev/null +++ b/sig/hanzoai/models/batch_cancel_with_provider_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BatchCancelWithProviderResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batch_create_response.rbs b/sig/hanzoai/models/batch_create_response.rbs new file mode 100644 index 00000000..ec629584 --- /dev/null +++ b/sig/hanzoai/models/batch_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BatchCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batch_create_with_provider_response.rbs b/sig/hanzoai/models/batch_create_with_provider_response.rbs new file mode 100644 index 00000000..0b160e80 --- /dev/null +++ b/sig/hanzoai/models/batch_create_with_provider_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BatchCreateWithProviderResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batch_list_response.rbs b/sig/hanzoai/models/batch_list_response.rbs new file mode 100644 index 00000000..3aeaa2c7 --- /dev/null +++ b/sig/hanzoai/models/batch_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BatchListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batch_list_with_provider_response.rbs b/sig/hanzoai/models/batch_list_with_provider_response.rbs new file mode 100644 index 00000000..8d23bce9 --- /dev/null +++ b/sig/hanzoai/models/batch_list_with_provider_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BatchListWithProviderResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batch_retrieve_response.rbs b/sig/hanzoai/models/batch_retrieve_response.rbs new file mode 100644 index 00000000..a656d95a --- /dev/null +++ b/sig/hanzoai/models/batch_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BatchRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batch_retrieve_with_provider_response.rbs b/sig/hanzoai/models/batch_retrieve_with_provider_response.rbs new file mode 100644 index 00000000..9d28cb30 --- /dev/null +++ b/sig/hanzoai/models/batch_retrieve_with_provider_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BatchRetrieveWithProviderResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/batches/cancel_cancel_response.rbs b/sig/hanzoai/models/batches/cancel_cancel_response.rbs new file mode 100644 index 00000000..7154aa7c --- /dev/null +++ b/sig/hanzoai/models/batches/cancel_cancel_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Batches + CancelCancelResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/bedrock_create_response.rbs b/sig/hanzoai/models/bedrock_create_response.rbs new file mode 100644 index 00000000..f58a0f61 --- /dev/null +++ b/sig/hanzoai/models/bedrock_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BedrockCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/bedrock_delete_response.rbs b/sig/hanzoai/models/bedrock_delete_response.rbs new file mode 100644 index 00000000..35ad52be --- /dev/null +++ b/sig/hanzoai/models/bedrock_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BedrockDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/bedrock_patch_response.rbs b/sig/hanzoai/models/bedrock_patch_response.rbs new file mode 100644 index 00000000..0fae9fbc --- /dev/null +++ b/sig/hanzoai/models/bedrock_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BedrockPatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/bedrock_retrieve_response.rbs b/sig/hanzoai/models/bedrock_retrieve_response.rbs new file mode 100644 index 00000000..9ba6c8c9 --- /dev/null +++ b/sig/hanzoai/models/bedrock_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BedrockRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/bedrock_update_response.rbs b/sig/hanzoai/models/bedrock_update_response.rbs new file mode 100644 index 00000000..cf9c6777 --- /dev/null +++ b/sig/hanzoai/models/bedrock_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BedrockUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/budget_create_response.rbs b/sig/hanzoai/models/budget_create_response.rbs new file mode 100644 index 00000000..5d5ddd39 --- /dev/null +++ b/sig/hanzoai/models/budget_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BudgetCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/budget_delete_response.rbs b/sig/hanzoai/models/budget_delete_response.rbs new file mode 100644 index 00000000..b9774532 --- /dev/null +++ b/sig/hanzoai/models/budget_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BudgetDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/budget_info_response.rbs b/sig/hanzoai/models/budget_info_response.rbs new file mode 100644 index 00000000..0e71a3ec --- /dev/null +++ b/sig/hanzoai/models/budget_info_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BudgetInfoResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/budget_list_response.rbs b/sig/hanzoai/models/budget_list_response.rbs new file mode 100644 index 00000000..26b94461 --- /dev/null +++ b/sig/hanzoai/models/budget_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BudgetListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/budget_settings_response.rbs b/sig/hanzoai/models/budget_settings_response.rbs new file mode 100644 index 00000000..45c142ad --- /dev/null +++ b/sig/hanzoai/models/budget_settings_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BudgetSettingsResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/budget_update_response.rbs b/sig/hanzoai/models/budget_update_response.rbs new file mode 100644 index 00000000..397773ef --- /dev/null +++ b/sig/hanzoai/models/budget_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + BudgetUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/cache/redi_retrieve_info_response.rbs b/sig/hanzoai/models/cache/redi_retrieve_info_response.rbs new file mode 100644 index 00000000..ac049537 --- /dev/null +++ b/sig/hanzoai/models/cache/redi_retrieve_info_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Cache + RediRetrieveInfoResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/cache_delete_response.rbs b/sig/hanzoai/models/cache_delete_response.rbs new file mode 100644 index 00000000..48fed2bb --- /dev/null +++ b/sig/hanzoai/models/cache_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CacheDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/cache_flush_all_response.rbs b/sig/hanzoai/models/cache_flush_all_response.rbs new file mode 100644 index 00000000..406e0bc9 --- /dev/null +++ b/sig/hanzoai/models/cache_flush_all_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CacheFlushAllResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/chat/completion_create_response.rbs b/sig/hanzoai/models/chat/completion_create_response.rbs new file mode 100644 index 00000000..ba65c2c0 --- /dev/null +++ b/sig/hanzoai/models/chat/completion_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Chat + CompletionCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/cohere_create_response.rbs b/sig/hanzoai/models/cohere_create_response.rbs new file mode 100644 index 00000000..8c24b550 --- /dev/null +++ b/sig/hanzoai/models/cohere_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CohereCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/cohere_delete_response.rbs b/sig/hanzoai/models/cohere_delete_response.rbs new file mode 100644 index 00000000..d005e1c4 --- /dev/null +++ b/sig/hanzoai/models/cohere_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CohereDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/cohere_modify_response.rbs b/sig/hanzoai/models/cohere_modify_response.rbs new file mode 100644 index 00000000..540465a5 --- /dev/null +++ b/sig/hanzoai/models/cohere_modify_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CohereModifyResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/cohere_retrieve_response.rbs b/sig/hanzoai/models/cohere_retrieve_response.rbs new file mode 100644 index 00000000..1846fe01 --- /dev/null +++ b/sig/hanzoai/models/cohere_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CohereRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/cohere_update_response.rbs b/sig/hanzoai/models/cohere_update_response.rbs new file mode 100644 index 00000000..cc427f6b --- /dev/null +++ b/sig/hanzoai/models/cohere_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CohereUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/completion_create_response.rbs b/sig/hanzoai/models/completion_create_response.rbs new file mode 100644 index 00000000..7fe641a0 --- /dev/null +++ b/sig/hanzoai/models/completion_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CompletionCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_create_response.rbs b/sig/hanzoai/models/config/pass_through_endpoint_create_response.rbs new file mode 100644 index 00000000..7e2c7946 --- /dev/null +++ b/sig/hanzoai/models/config/pass_through_endpoint_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Config + PassThroughEndpointCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_update_response.rbs b/sig/hanzoai/models/config/pass_through_endpoint_update_response.rbs new file mode 100644 index 00000000..eb7f4589 --- /dev/null +++ b/sig/hanzoai/models/config/pass_through_endpoint_update_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Config + PassThroughEndpointUpdateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/credential_create_response.rbs b/sig/hanzoai/models/credential_create_response.rbs new file mode 100644 index 00000000..009c675b --- /dev/null +++ b/sig/hanzoai/models/credential_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CredentialCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/credential_delete_response.rbs b/sig/hanzoai/models/credential_delete_response.rbs new file mode 100644 index 00000000..29519e01 --- /dev/null +++ b/sig/hanzoai/models/credential_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CredentialDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/credential_list_response.rbs b/sig/hanzoai/models/credential_list_response.rbs new file mode 100644 index 00000000..cb2568ac --- /dev/null +++ b/sig/hanzoai/models/credential_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CredentialListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/customer_block_response.rbs b/sig/hanzoai/models/customer_block_response.rbs new file mode 100644 index 00000000..37dd3865 --- /dev/null +++ b/sig/hanzoai/models/customer_block_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CustomerBlockResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/customer_create_response.rbs b/sig/hanzoai/models/customer_create_response.rbs new file mode 100644 index 00000000..8f720485 --- /dev/null +++ b/sig/hanzoai/models/customer_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CustomerCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/customer_delete_response.rbs b/sig/hanzoai/models/customer_delete_response.rbs new file mode 100644 index 00000000..59e895d4 --- /dev/null +++ b/sig/hanzoai/models/customer_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CustomerDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/customer_unblock_response.rbs b/sig/hanzoai/models/customer_unblock_response.rbs new file mode 100644 index 00000000..e973d180 --- /dev/null +++ b/sig/hanzoai/models/customer_unblock_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CustomerUnblockResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/customer_update_response.rbs b/sig/hanzoai/models/customer_update_response.rbs new file mode 100644 index 00000000..d82ca17a --- /dev/null +++ b/sig/hanzoai/models/customer_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + CustomerUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/delete_create_allowed_ip_response.rbs b/sig/hanzoai/models/delete_create_allowed_ip_response.rbs new file mode 100644 index 00000000..cd726ab0 --- /dev/null +++ b/sig/hanzoai/models/delete_create_allowed_ip_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + DeleteCreateAllowedIPResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/embedding_create_response.rbs b/sig/hanzoai/models/embedding_create_response.rbs new file mode 100644 index 00000000..506e09c3 --- /dev/null +++ b/sig/hanzoai/models/embedding_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EmbeddingCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/engine_complete_response.rbs b/sig/hanzoai/models/engine_complete_response.rbs new file mode 100644 index 00000000..37de6bee --- /dev/null +++ b/sig/hanzoai/models/engine_complete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EngineCompleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/engine_embed_response.rbs b/sig/hanzoai/models/engine_embed_response.rbs new file mode 100644 index 00000000..a81ef501 --- /dev/null +++ b/sig/hanzoai/models/engine_embed_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EngineEmbedResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/engines/chat_complete_response.rbs b/sig/hanzoai/models/engines/chat_complete_response.rbs new file mode 100644 index 00000000..ec1e127a --- /dev/null +++ b/sig/hanzoai/models/engines/chat_complete_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Engines + ChatCompleteResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/eu_assemblyai_create_response.rbs b/sig/hanzoai/models/eu_assemblyai_create_response.rbs new file mode 100644 index 00000000..f2d9a7bf --- /dev/null +++ b/sig/hanzoai/models/eu_assemblyai_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EuAssemblyaiCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/eu_assemblyai_delete_response.rbs b/sig/hanzoai/models/eu_assemblyai_delete_response.rbs new file mode 100644 index 00000000..407e4b7e --- /dev/null +++ b/sig/hanzoai/models/eu_assemblyai_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EuAssemblyaiDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/eu_assemblyai_patch_response.rbs b/sig/hanzoai/models/eu_assemblyai_patch_response.rbs new file mode 100644 index 00000000..a9d4c8d2 --- /dev/null +++ b/sig/hanzoai/models/eu_assemblyai_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EuAssemblyaiPatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/eu_assemblyai_retrieve_response.rbs b/sig/hanzoai/models/eu_assemblyai_retrieve_response.rbs new file mode 100644 index 00000000..9454e5b5 --- /dev/null +++ b/sig/hanzoai/models/eu_assemblyai_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EuAssemblyaiRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/eu_assemblyai_update_response.rbs b/sig/hanzoai/models/eu_assemblyai_update_response.rbs new file mode 100644 index 00000000..0b18a1f9 --- /dev/null +++ b/sig/hanzoai/models/eu_assemblyai_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + EuAssemblyaiUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/file_create_response.rbs b/sig/hanzoai/models/file_create_response.rbs new file mode 100644 index 00000000..102db4b3 --- /dev/null +++ b/sig/hanzoai/models/file_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + FileCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/file_delete_response.rbs b/sig/hanzoai/models/file_delete_response.rbs new file mode 100644 index 00000000..fda43918 --- /dev/null +++ b/sig/hanzoai/models/file_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + FileDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/file_list_response.rbs b/sig/hanzoai/models/file_list_response.rbs new file mode 100644 index 00000000..3a5d549d --- /dev/null +++ b/sig/hanzoai/models/file_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + FileListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/file_retrieve_response.rbs b/sig/hanzoai/models/file_retrieve_response.rbs new file mode 100644 index 00000000..a9c21c8e --- /dev/null +++ b/sig/hanzoai/models/file_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + FileRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/files/content_retrieve_response.rbs b/sig/hanzoai/models/files/content_retrieve_response.rbs new file mode 100644 index 00000000..8ba2754e --- /dev/null +++ b/sig/hanzoai/models/files/content_retrieve_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Files + ContentRetrieveResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/fine_tuning/job_create_response.rbs b/sig/hanzoai/models/fine_tuning/job_create_response.rbs new file mode 100644 index 00000000..33ad93a4 --- /dev/null +++ b/sig/hanzoai/models/fine_tuning/job_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module FineTuning + JobCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/fine_tuning/job_list_response.rbs b/sig/hanzoai/models/fine_tuning/job_list_response.rbs new file mode 100644 index 00000000..df3afd24 --- /dev/null +++ b/sig/hanzoai/models/fine_tuning/job_list_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module FineTuning + JobListResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/fine_tuning/job_retrieve_response.rbs b/sig/hanzoai/models/fine_tuning/job_retrieve_response.rbs new file mode 100644 index 00000000..a491600f --- /dev/null +++ b/sig/hanzoai/models/fine_tuning/job_retrieve_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module FineTuning + JobRetrieveResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbs b/sig/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbs new file mode 100644 index 00000000..c9be0e5f --- /dev/null +++ b/sig/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbs @@ -0,0 +1,9 @@ +module Hanzoai + module Models + module FineTuning + module Jobs + CancelCreateResponse: Hanzoai::Internal::Type::Converter + end + end + end +end diff --git a/sig/hanzoai/models/gemini_create_response.rbs b/sig/hanzoai/models/gemini_create_response.rbs new file mode 100644 index 00000000..d10e8189 --- /dev/null +++ b/sig/hanzoai/models/gemini_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + GeminiCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/gemini_delete_response.rbs b/sig/hanzoai/models/gemini_delete_response.rbs new file mode 100644 index 00000000..80a7caa1 --- /dev/null +++ b/sig/hanzoai/models/gemini_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + GeminiDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/gemini_patch_response.rbs b/sig/hanzoai/models/gemini_patch_response.rbs new file mode 100644 index 00000000..f9b4cfd7 --- /dev/null +++ b/sig/hanzoai/models/gemini_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + GeminiPatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/gemini_retrieve_response.rbs b/sig/hanzoai/models/gemini_retrieve_response.rbs new file mode 100644 index 00000000..081848f2 --- /dev/null +++ b/sig/hanzoai/models/gemini_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + GeminiRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/gemini_update_response.rbs b/sig/hanzoai/models/gemini_update_response.rbs new file mode 100644 index 00000000..110d7645 --- /dev/null +++ b/sig/hanzoai/models/gemini_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + GeminiUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/get_home_response.rbs b/sig/hanzoai/models/get_home_response.rbs new file mode 100644 index 00000000..cf7eb04e --- /dev/null +++ b/sig/hanzoai/models/get_home_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + GetHomeResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/global/spend_reset_response.rbs b/sig/hanzoai/models/global/spend_reset_response.rbs new file mode 100644 index 00000000..09e9b855 --- /dev/null +++ b/sig/hanzoai/models/global/spend_reset_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Global + SpendResetResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/health_check_all_response.rbs b/sig/hanzoai/models/health_check_all_response.rbs new file mode 100644 index 00000000..8ba2dc56 --- /dev/null +++ b/sig/hanzoai/models/health_check_all_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + HealthCheckAllResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/health_check_liveliness_response.rbs b/sig/hanzoai/models/health_check_liveliness_response.rbs new file mode 100644 index 00000000..6dda550f --- /dev/null +++ b/sig/hanzoai/models/health_check_liveliness_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + HealthCheckLivelinessResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/health_check_liveness_response.rbs b/sig/hanzoai/models/health_check_liveness_response.rbs new file mode 100644 index 00000000..3782aba0 --- /dev/null +++ b/sig/hanzoai/models/health_check_liveness_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + HealthCheckLivenessResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/health_check_readiness_response.rbs b/sig/hanzoai/models/health_check_readiness_response.rbs new file mode 100644 index 00000000..63fe3e25 --- /dev/null +++ b/sig/hanzoai/models/health_check_readiness_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + HealthCheckReadinessResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/health_check_services_response.rbs b/sig/hanzoai/models/health_check_services_response.rbs new file mode 100644 index 00000000..64708f73 --- /dev/null +++ b/sig/hanzoai/models/health_check_services_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + HealthCheckServicesResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/images/generation_create_response.rbs b/sig/hanzoai/models/images/generation_create_response.rbs new file mode 100644 index 00000000..98731e73 --- /dev/null +++ b/sig/hanzoai/models/images/generation_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Images + GenerationCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/key_delete_response.rbs b/sig/hanzoai/models/key_delete_response.rbs new file mode 100644 index 00000000..a047cbf7 --- /dev/null +++ b/sig/hanzoai/models/key_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + KeyDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/key_retrieve_info_response.rbs b/sig/hanzoai/models/key_retrieve_info_response.rbs new file mode 100644 index 00000000..97a58d9e --- /dev/null +++ b/sig/hanzoai/models/key_retrieve_info_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + KeyRetrieveInfoResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/key_unblock_response.rbs b/sig/hanzoai/models/key_unblock_response.rbs new file mode 100644 index 00000000..474ec0a1 --- /dev/null +++ b/sig/hanzoai/models/key_unblock_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + KeyUnblockResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/key_update_response.rbs b/sig/hanzoai/models/key_update_response.rbs new file mode 100644 index 00000000..9aacf0c9 --- /dev/null +++ b/sig/hanzoai/models/key_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + KeyUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/langfuse_create_response.rbs b/sig/hanzoai/models/langfuse_create_response.rbs new file mode 100644 index 00000000..61f2fb04 --- /dev/null +++ b/sig/hanzoai/models/langfuse_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + LangfuseCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/langfuse_delete_response.rbs b/sig/hanzoai/models/langfuse_delete_response.rbs new file mode 100644 index 00000000..89dbe908 --- /dev/null +++ b/sig/hanzoai/models/langfuse_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + LangfuseDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/langfuse_patch_response.rbs b/sig/hanzoai/models/langfuse_patch_response.rbs new file mode 100644 index 00000000..17def868 --- /dev/null +++ b/sig/hanzoai/models/langfuse_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + LangfusePatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/langfuse_retrieve_response.rbs b/sig/hanzoai/models/langfuse_retrieve_response.rbs new file mode 100644 index 00000000..4797bbf7 --- /dev/null +++ b/sig/hanzoai/models/langfuse_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + LangfuseRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/langfuse_update_response.rbs b/sig/hanzoai/models/langfuse_update_response.rbs new file mode 100644 index 00000000..66ae80e3 --- /dev/null +++ b/sig/hanzoai/models/langfuse_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + LangfuseUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/model/info_list_response.rbs b/sig/hanzoai/models/model/info_list_response.rbs new file mode 100644 index 00000000..b05a1687 --- /dev/null +++ b/sig/hanzoai/models/model/info_list_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Model + InfoListResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/model/update_full_response.rbs b/sig/hanzoai/models/model/update_full_response.rbs new file mode 100644 index 00000000..41f866c0 --- /dev/null +++ b/sig/hanzoai/models/model/update_full_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Model + UpdateFullResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/model/update_partial_response.rbs b/sig/hanzoai/models/model/update_partial_response.rbs new file mode 100644 index 00000000..0b121ee3 --- /dev/null +++ b/sig/hanzoai/models/model/update_partial_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Model + UpdatePartialResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/model_create_response.rbs b/sig/hanzoai/models/model_create_response.rbs new file mode 100644 index 00000000..2b10c2b9 --- /dev/null +++ b/sig/hanzoai/models/model_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ModelCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/model_delete_response.rbs b/sig/hanzoai/models/model_delete_response.rbs new file mode 100644 index 00000000..9b724bfd --- /dev/null +++ b/sig/hanzoai/models/model_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ModelDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/model_group_retrieve_info_response.rbs b/sig/hanzoai/models/model_group_retrieve_info_response.rbs new file mode 100644 index 00000000..f85fc248 --- /dev/null +++ b/sig/hanzoai/models/model_group_retrieve_info_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ModelGroupRetrieveInfoResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/model_list_response.rbs b/sig/hanzoai/models/model_list_response.rbs new file mode 100644 index 00000000..3a65e35a --- /dev/null +++ b/sig/hanzoai/models/model_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ModelListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/moderation_create_response.rbs b/sig/hanzoai/models/moderation_create_response.rbs new file mode 100644 index 00000000..f9241c8d --- /dev/null +++ b/sig/hanzoai/models/moderation_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ModerationCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/openai/deployment_complete_response.rbs b/sig/hanzoai/models/openai/deployment_complete_response.rbs new file mode 100644 index 00000000..d1f6f613 --- /dev/null +++ b/sig/hanzoai/models/openai/deployment_complete_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module OpenAI + DeploymentCompleteResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/openai/deployment_embed_response.rbs b/sig/hanzoai/models/openai/deployment_embed_response.rbs new file mode 100644 index 00000000..31d98455 --- /dev/null +++ b/sig/hanzoai/models/openai/deployment_embed_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module OpenAI + DeploymentEmbedResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/openai/deployments/chat_complete_response.rbs b/sig/hanzoai/models/openai/deployments/chat_complete_response.rbs new file mode 100644 index 00000000..06f21942 --- /dev/null +++ b/sig/hanzoai/models/openai/deployments/chat_complete_response.rbs @@ -0,0 +1,9 @@ +module Hanzoai + module Models + module OpenAI + module Deployments + ChatCompleteResponse: Hanzoai::Internal::Type::Converter + end + end + end +end diff --git a/sig/hanzoai/models/openai_create_response.rbs b/sig/hanzoai/models/openai_create_response.rbs new file mode 100644 index 00000000..a04a68a6 --- /dev/null +++ b/sig/hanzoai/models/openai_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + OpenAICreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/openai_delete_response.rbs b/sig/hanzoai/models/openai_delete_response.rbs new file mode 100644 index 00000000..c44483a7 --- /dev/null +++ b/sig/hanzoai/models/openai_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + OpenAIDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/openai_patch_response.rbs b/sig/hanzoai/models/openai_patch_response.rbs new file mode 100644 index 00000000..80b5baa7 --- /dev/null +++ b/sig/hanzoai/models/openai_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + OpenAIPatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/openai_retrieve_response.rbs b/sig/hanzoai/models/openai_retrieve_response.rbs new file mode 100644 index 00000000..53157b6f --- /dev/null +++ b/sig/hanzoai/models/openai_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + OpenAIRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/openai_update_response.rbs b/sig/hanzoai/models/openai_update_response.rbs new file mode 100644 index 00000000..c2b61309 --- /dev/null +++ b/sig/hanzoai/models/openai_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + OpenAIUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/organization/info_deprecated_response.rbs b/sig/hanzoai/models/organization/info_deprecated_response.rbs new file mode 100644 index 00000000..13904c21 --- /dev/null +++ b/sig/hanzoai/models/organization/info_deprecated_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Organization + InfoDeprecatedResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/organization_delete_member_response.rbs b/sig/hanzoai/models/organization_delete_member_response.rbs new file mode 100644 index 00000000..8e1a9020 --- /dev/null +++ b/sig/hanzoai/models/organization_delete_member_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + OrganizationDeleteMemberResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/rerank_create_response.rbs b/sig/hanzoai/models/rerank_create_response.rbs new file mode 100644 index 00000000..ac31eb89 --- /dev/null +++ b/sig/hanzoai/models/rerank_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + RerankCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/rerank_create_v1_response.rbs b/sig/hanzoai/models/rerank_create_v1_response.rbs new file mode 100644 index 00000000..16d5a3f5 --- /dev/null +++ b/sig/hanzoai/models/rerank_create_v1_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + RerankCreateV1Response: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/rerank_create_v2_response.rbs b/sig/hanzoai/models/rerank_create_v2_response.rbs new file mode 100644 index 00000000..d773d385 --- /dev/null +++ b/sig/hanzoai/models/rerank_create_v2_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + RerankCreateV2Response: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/response_create_response.rbs b/sig/hanzoai/models/response_create_response.rbs new file mode 100644 index 00000000..b5c20c7c --- /dev/null +++ b/sig/hanzoai/models/response_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ResponseCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/response_delete_response.rbs b/sig/hanzoai/models/response_delete_response.rbs new file mode 100644 index 00000000..618e719f --- /dev/null +++ b/sig/hanzoai/models/response_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ResponseDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/response_retrieve_response.rbs b/sig/hanzoai/models/response_retrieve_response.rbs new file mode 100644 index 00000000..84063d37 --- /dev/null +++ b/sig/hanzoai/models/response_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ResponseRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/responses/input_item_list_response.rbs b/sig/hanzoai/models/responses/input_item_list_response.rbs new file mode 100644 index 00000000..1ef95712 --- /dev/null +++ b/sig/hanzoai/models/responses/input_item_list_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Responses + InputItemListResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/route_list_response.rbs b/sig/hanzoai/models/route_list_response.rbs new file mode 100644 index 00000000..67e42c9e --- /dev/null +++ b/sig/hanzoai/models/route_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + RouteListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/setting_retrieve_response.rbs b/sig/hanzoai/models/setting_retrieve_response.rbs new file mode 100644 index 00000000..13bdef4e --- /dev/null +++ b/sig/hanzoai/models/setting_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + SettingRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/spend_calculate_spend_response.rbs b/sig/hanzoai/models/spend_calculate_spend_response.rbs new file mode 100644 index 00000000..56f07ae2 --- /dev/null +++ b/sig/hanzoai/models/spend_calculate_spend_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + SpendCalculateSpendResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team/callback_add_response.rbs b/sig/hanzoai/models/team/callback_add_response.rbs new file mode 100644 index 00000000..2d5878f4 --- /dev/null +++ b/sig/hanzoai/models/team/callback_add_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Team + CallbackAddResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/team/callback_retrieve_response.rbs b/sig/hanzoai/models/team/callback_retrieve_response.rbs new file mode 100644 index 00000000..cc72ef13 --- /dev/null +++ b/sig/hanzoai/models/team/callback_retrieve_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Team + CallbackRetrieveResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/team/model_add_response.rbs b/sig/hanzoai/models/team/model_add_response.rbs new file mode 100644 index 00000000..6c3810b7 --- /dev/null +++ b/sig/hanzoai/models/team/model_add_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Team + ModelAddResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/team/model_remove_response.rbs b/sig/hanzoai/models/team/model_remove_response.rbs new file mode 100644 index 00000000..40b1482a --- /dev/null +++ b/sig/hanzoai/models/team/model_remove_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Team + ModelRemoveResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/team_block_response.rbs b/sig/hanzoai/models/team_block_response.rbs new file mode 100644 index 00000000..5998c87b --- /dev/null +++ b/sig/hanzoai/models/team_block_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamBlockResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_delete_response.rbs b/sig/hanzoai/models/team_delete_response.rbs new file mode 100644 index 00000000..de3c86d3 --- /dev/null +++ b/sig/hanzoai/models/team_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_disable_logging_response.rbs b/sig/hanzoai/models/team_disable_logging_response.rbs new file mode 100644 index 00000000..15917323 --- /dev/null +++ b/sig/hanzoai/models/team_disable_logging_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamDisableLoggingResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_list_available_response.rbs b/sig/hanzoai/models/team_list_available_response.rbs new file mode 100644 index 00000000..f7f4c9e6 --- /dev/null +++ b/sig/hanzoai/models/team_list_available_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamListAvailableResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_list_response.rbs b/sig/hanzoai/models/team_list_response.rbs new file mode 100644 index 00000000..ca700399 --- /dev/null +++ b/sig/hanzoai/models/team_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_remove_member_response.rbs b/sig/hanzoai/models/team_remove_member_response.rbs new file mode 100644 index 00000000..241dfd2c --- /dev/null +++ b/sig/hanzoai/models/team_remove_member_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamRemoveMemberResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_retrieve_info_response.rbs b/sig/hanzoai/models/team_retrieve_info_response.rbs new file mode 100644 index 00000000..43ecb71c --- /dev/null +++ b/sig/hanzoai/models/team_retrieve_info_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamRetrieveInfoResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_unblock_response.rbs b/sig/hanzoai/models/team_unblock_response.rbs new file mode 100644 index 00000000..05c0cd32 --- /dev/null +++ b/sig/hanzoai/models/team_unblock_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamUnblockResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/team_update_response.rbs b/sig/hanzoai/models/team_update_response.rbs new file mode 100644 index 00000000..6f450884 --- /dev/null +++ b/sig/hanzoai/models/team_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TeamUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/test_ping_response.rbs b/sig/hanzoai/models/test_ping_response.rbs new file mode 100644 index 00000000..6597b215 --- /dev/null +++ b/sig/hanzoai/models/test_ping_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + TestPingResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/thread_create_response.rbs b/sig/hanzoai/models/thread_create_response.rbs new file mode 100644 index 00000000..0dd623c1 --- /dev/null +++ b/sig/hanzoai/models/thread_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ThreadCreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/thread_retrieve_response.rbs b/sig/hanzoai/models/thread_retrieve_response.rbs new file mode 100644 index 00000000..31915337 --- /dev/null +++ b/sig/hanzoai/models/thread_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + ThreadRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/threads/message_create_response.rbs b/sig/hanzoai/models/threads/message_create_response.rbs new file mode 100644 index 00000000..d72facdd --- /dev/null +++ b/sig/hanzoai/models/threads/message_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Threads + MessageCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/threads/message_list_response.rbs b/sig/hanzoai/models/threads/message_list_response.rbs new file mode 100644 index 00000000..4e89bdb2 --- /dev/null +++ b/sig/hanzoai/models/threads/message_list_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Threads + MessageListResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/threads/run_create_response.rbs b/sig/hanzoai/models/threads/run_create_response.rbs new file mode 100644 index 00000000..40eac1ea --- /dev/null +++ b/sig/hanzoai/models/threads/run_create_response.rbs @@ -0,0 +1,7 @@ +module Hanzoai + module Models + module Threads + RunCreateResponse: Hanzoai::Internal::Type::Converter + end + end +end diff --git a/sig/hanzoai/models/user_delete_response.rbs b/sig/hanzoai/models/user_delete_response.rbs new file mode 100644 index 00000000..1ce5dd9b --- /dev/null +++ b/sig/hanzoai/models/user_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + UserDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/user_list_response.rbs b/sig/hanzoai/models/user_list_response.rbs new file mode 100644 index 00000000..5c177738 --- /dev/null +++ b/sig/hanzoai/models/user_list_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + UserListResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/user_retrieve_info_response.rbs b/sig/hanzoai/models/user_retrieve_info_response.rbs new file mode 100644 index 00000000..0725a5be --- /dev/null +++ b/sig/hanzoai/models/user_retrieve_info_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + UserRetrieveInfoResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/user_update_response.rbs b/sig/hanzoai/models/user_update_response.rbs new file mode 100644 index 00000000..3935bf5e --- /dev/null +++ b/sig/hanzoai/models/user_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + UserUpdateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/util_get_supported_openai_params_response.rbs b/sig/hanzoai/models/util_get_supported_openai_params_response.rbs new file mode 100644 index 00000000..38c96091 --- /dev/null +++ b/sig/hanzoai/models/util_get_supported_openai_params_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + UtilGetSupportedOpenAIParamsResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/vertex_ai_create_response.rbs b/sig/hanzoai/models/vertex_ai_create_response.rbs new file mode 100644 index 00000000..271e243d --- /dev/null +++ b/sig/hanzoai/models/vertex_ai_create_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + VertexAICreateResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/vertex_ai_delete_response.rbs b/sig/hanzoai/models/vertex_ai_delete_response.rbs new file mode 100644 index 00000000..b566cde6 --- /dev/null +++ b/sig/hanzoai/models/vertex_ai_delete_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + VertexAIDeleteResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/vertex_ai_patch_response.rbs b/sig/hanzoai/models/vertex_ai_patch_response.rbs new file mode 100644 index 00000000..77a76e53 --- /dev/null +++ b/sig/hanzoai/models/vertex_ai_patch_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + VertexAIPatchResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/vertex_ai_retrieve_response.rbs b/sig/hanzoai/models/vertex_ai_retrieve_response.rbs new file mode 100644 index 00000000..5988ef0f --- /dev/null +++ b/sig/hanzoai/models/vertex_ai_retrieve_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + VertexAIRetrieveResponse: Hanzoai::Internal::Type::Converter + end +end diff --git a/sig/hanzoai/models/vertex_ai_update_response.rbs b/sig/hanzoai/models/vertex_ai_update_response.rbs new file mode 100644 index 00000000..4999e7e7 --- /dev/null +++ b/sig/hanzoai/models/vertex_ai_update_response.rbs @@ -0,0 +1,5 @@ +module Hanzoai + module Models + VertexAIUpdateResponse: Hanzoai::Internal::Type::Converter + end +end From d346468f841a08d9c3c7fbda7a6564ad2492cd92 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 2 May 2025 03:27:58 +0000 Subject: [PATCH 062/139] chore: re-export top level models under library namespace --- lib/hanzoai/models.rb | 365 +++++++++++++++++++++++++++++++++++++++++ rbi/hanzoai/models.rbi | 365 +++++++++++++++++++++++++++++++++++++++++ sig/hanzoai/models.rbs | 363 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 1093 insertions(+) create mode 100644 lib/hanzoai/models.rb create mode 100644 rbi/hanzoai/models.rbi create mode 100644 sig/hanzoai/models.rbs diff --git a/lib/hanzoai/models.rb b/lib/hanzoai/models.rb new file mode 100644 index 00000000..d92d80c5 --- /dev/null +++ b/lib/hanzoai/models.rb @@ -0,0 +1,365 @@ +# frozen_string_literal: true + +module Hanzoai + ActiveListCallbacksParams = Hanzoai::Models::ActiveListCallbacksParams + + AddAddAllowedIPParams = Hanzoai::Models::AddAddAllowedIPParams + + AnthropicCreateParams = Hanzoai::Models::AnthropicCreateParams + + AnthropicDeleteParams = Hanzoai::Models::AnthropicDeleteParams + + AnthropicModifyParams = Hanzoai::Models::AnthropicModifyParams + + AnthropicRetrieveParams = Hanzoai::Models::AnthropicRetrieveParams + + AnthropicUpdateParams = Hanzoai::Models::AnthropicUpdateParams + + AssemblyaiCreateParams = Hanzoai::Models::AssemblyaiCreateParams + + AssemblyaiDeleteParams = Hanzoai::Models::AssemblyaiDeleteParams + + AssemblyaiPatchParams = Hanzoai::Models::AssemblyaiPatchParams + + AssemblyaiRetrieveParams = Hanzoai::Models::AssemblyaiRetrieveParams + + AssemblyaiUpdateParams = Hanzoai::Models::AssemblyaiUpdateParams + + AssistantCreateParams = Hanzoai::Models::AssistantCreateParams + + AssistantDeleteParams = Hanzoai::Models::AssistantDeleteParams + + AssistantListParams = Hanzoai::Models::AssistantListParams + + Audio = Hanzoai::Models::Audio + + AzureCallParams = Hanzoai::Models::AzureCallParams + + AzureCreateParams = Hanzoai::Models::AzureCreateParams + + AzureDeleteParams = Hanzoai::Models::AzureDeleteParams + + AzurePatchParams = Hanzoai::Models::AzurePatchParams + + AzureUpdateParams = Hanzoai::Models::AzureUpdateParams + + BatchCancelWithProviderParams = Hanzoai::Models::BatchCancelWithProviderParams + + BatchCreateParams = Hanzoai::Models::BatchCreateParams + + BatchCreateWithProviderParams = Hanzoai::Models::BatchCreateWithProviderParams + + Batches = Hanzoai::Models::Batches + + BatchListParams = Hanzoai::Models::BatchListParams + + BatchListWithProviderParams = Hanzoai::Models::BatchListWithProviderParams + + BatchRetrieveParams = Hanzoai::Models::BatchRetrieveParams + + BatchRetrieveWithProviderParams = Hanzoai::Models::BatchRetrieveWithProviderParams + + BedrockCreateParams = Hanzoai::Models::BedrockCreateParams + + BedrockDeleteParams = Hanzoai::Models::BedrockDeleteParams + + BedrockPatchParams = Hanzoai::Models::BedrockPatchParams + + BedrockRetrieveParams = Hanzoai::Models::BedrockRetrieveParams + + BedrockUpdateParams = Hanzoai::Models::BedrockUpdateParams + + BlockKeyRequest = Hanzoai::Models::BlockKeyRequest + + BlockTeamRequest = Hanzoai::Models::BlockTeamRequest + + BlockUsers = Hanzoai::Models::BlockUsers + + BudgetCreateParams = Hanzoai::Models::BudgetCreateParams + + BudgetDeleteParams = Hanzoai::Models::BudgetDeleteParams + + BudgetInfoParams = Hanzoai::Models::BudgetInfoParams + + BudgetListParams = Hanzoai::Models::BudgetListParams + + BudgetNew = Hanzoai::Models::BudgetNew + + BudgetSettingsParams = Hanzoai::Models::BudgetSettingsParams + + BudgetUpdateParams = Hanzoai::Models::BudgetUpdateParams + + Cache = Hanzoai::Models::Cache + + CacheDeleteParams = Hanzoai::Models::CacheDeleteParams + + CacheFlushAllParams = Hanzoai::Models::CacheFlushAllParams + + CachePingParams = Hanzoai::Models::CachePingParams + + Chat = Hanzoai::Models::Chat + + ClientGetHomeParams = Hanzoai::Models::ClientGetHomeParams + + CohereCreateParams = Hanzoai::Models::CohereCreateParams + + CohereDeleteParams = Hanzoai::Models::CohereDeleteParams + + CohereModifyParams = Hanzoai::Models::CohereModifyParams + + CohereRetrieveParams = Hanzoai::Models::CohereRetrieveParams + + CohereUpdateParams = Hanzoai::Models::CohereUpdateParams + + CompletionCreateParams = Hanzoai::Models::CompletionCreateParams + + Config = Hanzoai::Models::Config + + ConfigurableClientsideParamsCustomAuth = Hanzoai::Models::ConfigurableClientsideParamsCustomAuth + + CredentialCreateParams = Hanzoai::Models::CredentialCreateParams + + CredentialDeleteParams = Hanzoai::Models::CredentialDeleteParams + + CredentialItem = Hanzoai::Models::CredentialItem + + CredentialListParams = Hanzoai::Models::CredentialListParams + + CustomerBlockParams = Hanzoai::Models::CustomerBlockParams + + CustomerCreateParams = Hanzoai::Models::CustomerCreateParams + + CustomerDeleteParams = Hanzoai::Models::CustomerDeleteParams + + CustomerListParams = Hanzoai::Models::CustomerListParams + + CustomerRetrieveInfoParams = Hanzoai::Models::CustomerRetrieveInfoParams + + CustomerUnblockParams = Hanzoai::Models::CustomerUnblockParams + + CustomerUpdateParams = Hanzoai::Models::CustomerUpdateParams + + DeleteCreateAllowedIPParams = Hanzoai::Models::DeleteCreateAllowedIPParams + + EmbeddingCreateParams = Hanzoai::Models::EmbeddingCreateParams + + EngineCompleteParams = Hanzoai::Models::EngineCompleteParams + + EngineEmbedParams = Hanzoai::Models::EngineEmbedParams + + Engines = Hanzoai::Models::Engines + + EuAssemblyaiCreateParams = Hanzoai::Models::EuAssemblyaiCreateParams + + EuAssemblyaiDeleteParams = Hanzoai::Models::EuAssemblyaiDeleteParams + + EuAssemblyaiPatchParams = Hanzoai::Models::EuAssemblyaiPatchParams + + EuAssemblyaiRetrieveParams = Hanzoai::Models::EuAssemblyaiRetrieveParams + + EuAssemblyaiUpdateParams = Hanzoai::Models::EuAssemblyaiUpdateParams + + FileCreateParams = Hanzoai::Models::FileCreateParams + + FileDeleteParams = Hanzoai::Models::FileDeleteParams + + FileListParams = Hanzoai::Models::FileListParams + + FileRetrieveParams = Hanzoai::Models::FileRetrieveParams + + Files = Hanzoai::Models::Files + + FineTuning = Hanzoai::Models::FineTuning + + GeminiCreateParams = Hanzoai::Models::GeminiCreateParams + + GeminiDeleteParams = Hanzoai::Models::GeminiDeleteParams + + GeminiPatchParams = Hanzoai::Models::GeminiPatchParams + + GeminiRetrieveParams = Hanzoai::Models::GeminiRetrieveParams + + GeminiUpdateParams = Hanzoai::Models::GeminiUpdateParams + + GenerateKeyResponse = Hanzoai::Models::GenerateKeyResponse + + Global = Hanzoai::Models::Global + + GuardrailListParams = Hanzoai::Models::GuardrailListParams + + HealthCheckAllParams = Hanzoai::Models::HealthCheckAllParams + + HealthCheckLivelinessParams = Hanzoai::Models::HealthCheckLivelinessParams + + HealthCheckLivenessParams = Hanzoai::Models::HealthCheckLivenessParams + + HealthCheckReadinessParams = Hanzoai::Models::HealthCheckReadinessParams + + HealthCheckServicesParams = Hanzoai::Models::HealthCheckServicesParams + + Images = Hanzoai::Models::Images + + IPAddress = Hanzoai::Models::IPAddress + + Key = Hanzoai::Models::Key + + KeyBlockParams = Hanzoai::Models::KeyBlockParams + + KeyCheckHealthParams = Hanzoai::Models::KeyCheckHealthParams + + KeyDeleteParams = Hanzoai::Models::KeyDeleteParams + + KeyGenerateParams = Hanzoai::Models::KeyGenerateParams + + KeyListParams = Hanzoai::Models::KeyListParams + + KeyRegenerateByKeyParams = Hanzoai::Models::KeyRegenerateByKeyParams + + KeyRetrieveInfoParams = Hanzoai::Models::KeyRetrieveInfoParams + + KeyUnblockParams = Hanzoai::Models::KeyUnblockParams + + KeyUpdateParams = Hanzoai::Models::KeyUpdateParams + + LangfuseCreateParams = Hanzoai::Models::LangfuseCreateParams + + LangfuseDeleteParams = Hanzoai::Models::LangfuseDeleteParams + + LangfusePatchParams = Hanzoai::Models::LangfusePatchParams + + LangfuseRetrieveParams = Hanzoai::Models::LangfuseRetrieveParams + + LangfuseUpdateParams = Hanzoai::Models::LangfuseUpdateParams + + Member = Hanzoai::Models::Member + + Model = Hanzoai::Models::Model + + ModelCreateParams = Hanzoai::Models::ModelCreateParams + + ModelDeleteParams = Hanzoai::Models::ModelDeleteParams + + ModelGroupRetrieveInfoParams = Hanzoai::Models::ModelGroupRetrieveInfoParams + + ModelInfo = Hanzoai::Models::ModelInfo + + ModelListParams = Hanzoai::Models::ModelListParams + + ModerationCreateParams = Hanzoai::Models::ModerationCreateParams + + OpenAI = Hanzoai::Models::OpenAI + + OpenAICreateParams = Hanzoai::Models::OpenAICreateParams + + OpenAIDeleteParams = Hanzoai::Models::OpenAIDeleteParams + + OpenAIPatchParams = Hanzoai::Models::OpenAIPatchParams + + OpenAIRetrieveParams = Hanzoai::Models::OpenAIRetrieveParams + + OpenAIUpdateParams = Hanzoai::Models::OpenAIUpdateParams + + Organization = Hanzoai::Models::Organization + + OrganizationAddMemberParams = Hanzoai::Models::OrganizationAddMemberParams + + OrganizationCreateParams = Hanzoai::Models::OrganizationCreateParams + + OrganizationDeleteMemberParams = Hanzoai::Models::OrganizationDeleteMemberParams + + OrganizationDeleteParams = Hanzoai::Models::OrganizationDeleteParams + + OrganizationListParams = Hanzoai::Models::OrganizationListParams + + OrganizationUpdateMemberParams = Hanzoai::Models::OrganizationUpdateMemberParams + + OrganizationUpdateParams = Hanzoai::Models::OrganizationUpdateParams + + OrgMember = Hanzoai::Models::OrgMember + + ProviderListBudgetsParams = Hanzoai::Models::ProviderListBudgetsParams + + RerankCreateParams = Hanzoai::Models::RerankCreateParams + + RerankCreateV1Params = Hanzoai::Models::RerankCreateV1Params + + RerankCreateV2Params = Hanzoai::Models::RerankCreateV2Params + + ResponseCreateParams = Hanzoai::Models::ResponseCreateParams + + ResponseDeleteParams = Hanzoai::Models::ResponseDeleteParams + + ResponseRetrieveParams = Hanzoai::Models::ResponseRetrieveParams + + Responses = Hanzoai::Models::Responses + + RouteListParams = Hanzoai::Models::RouteListParams + + SettingRetrieveParams = Hanzoai::Models::SettingRetrieveParams + + SpendCalculateSpendParams = Hanzoai::Models::SpendCalculateSpendParams + + SpendListLogsParams = Hanzoai::Models::SpendListLogsParams + + SpendListTagsParams = Hanzoai::Models::SpendListTagsParams + + Team = Hanzoai::Models::Team + + TeamAddMemberParams = Hanzoai::Models::TeamAddMemberParams + + TeamBlockParams = Hanzoai::Models::TeamBlockParams + + TeamCreateParams = Hanzoai::Models::TeamCreateParams + + TeamDeleteParams = Hanzoai::Models::TeamDeleteParams + + TeamDisableLoggingParams = Hanzoai::Models::TeamDisableLoggingParams + + TeamListAvailableParams = Hanzoai::Models::TeamListAvailableParams + + TeamListParams = Hanzoai::Models::TeamListParams + + TeamRemoveMemberParams = Hanzoai::Models::TeamRemoveMemberParams + + TeamRetrieveInfoParams = Hanzoai::Models::TeamRetrieveInfoParams + + TeamUnblockParams = Hanzoai::Models::TeamUnblockParams + + TeamUpdateMemberParams = Hanzoai::Models::TeamUpdateMemberParams + + TeamUpdateParams = Hanzoai::Models::TeamUpdateParams + + TestPingParams = Hanzoai::Models::TestPingParams + + ThreadCreateParams = Hanzoai::Models::ThreadCreateParams + + ThreadRetrieveParams = Hanzoai::Models::ThreadRetrieveParams + + Threads = Hanzoai::Models::Threads + + UserCreateParams = Hanzoai::Models::UserCreateParams + + UserDeleteParams = Hanzoai::Models::UserDeleteParams + + UserListParams = Hanzoai::Models::UserListParams + + UserRetrieveInfoParams = Hanzoai::Models::UserRetrieveInfoParams + + UserUpdateParams = Hanzoai::Models::UserUpdateParams + + UtilGetSupportedOpenAIParamsParams = Hanzoai::Models::UtilGetSupportedOpenAIParamsParams + + UtilTokenCounterParams = Hanzoai::Models::UtilTokenCounterParams + + UtilTransformRequestParams = Hanzoai::Models::UtilTransformRequestParams + + VertexAICreateParams = Hanzoai::Models::VertexAICreateParams + + VertexAIDeleteParams = Hanzoai::Models::VertexAIDeleteParams + + VertexAIPatchParams = Hanzoai::Models::VertexAIPatchParams + + VertexAIRetrieveParams = Hanzoai::Models::VertexAIRetrieveParams + + VertexAIUpdateParams = Hanzoai::Models::VertexAIUpdateParams +end diff --git a/rbi/hanzoai/models.rbi b/rbi/hanzoai/models.rbi new file mode 100644 index 00000000..3fa252e7 --- /dev/null +++ b/rbi/hanzoai/models.rbi @@ -0,0 +1,365 @@ +# typed: strong + +module Hanzoai + ActiveListCallbacksParams = Hanzoai::Models::ActiveListCallbacksParams + + AddAddAllowedIPParams = Hanzoai::Models::AddAddAllowedIPParams + + AnthropicCreateParams = Hanzoai::Models::AnthropicCreateParams + + AnthropicDeleteParams = Hanzoai::Models::AnthropicDeleteParams + + AnthropicModifyParams = Hanzoai::Models::AnthropicModifyParams + + AnthropicRetrieveParams = Hanzoai::Models::AnthropicRetrieveParams + + AnthropicUpdateParams = Hanzoai::Models::AnthropicUpdateParams + + AssemblyaiCreateParams = Hanzoai::Models::AssemblyaiCreateParams + + AssemblyaiDeleteParams = Hanzoai::Models::AssemblyaiDeleteParams + + AssemblyaiPatchParams = Hanzoai::Models::AssemblyaiPatchParams + + AssemblyaiRetrieveParams = Hanzoai::Models::AssemblyaiRetrieveParams + + AssemblyaiUpdateParams = Hanzoai::Models::AssemblyaiUpdateParams + + AssistantCreateParams = Hanzoai::Models::AssistantCreateParams + + AssistantDeleteParams = Hanzoai::Models::AssistantDeleteParams + + AssistantListParams = Hanzoai::Models::AssistantListParams + + Audio = Hanzoai::Models::Audio + + AzureCallParams = Hanzoai::Models::AzureCallParams + + AzureCreateParams = Hanzoai::Models::AzureCreateParams + + AzureDeleteParams = Hanzoai::Models::AzureDeleteParams + + AzurePatchParams = Hanzoai::Models::AzurePatchParams + + AzureUpdateParams = Hanzoai::Models::AzureUpdateParams + + BatchCancelWithProviderParams = Hanzoai::Models::BatchCancelWithProviderParams + + BatchCreateParams = Hanzoai::Models::BatchCreateParams + + BatchCreateWithProviderParams = Hanzoai::Models::BatchCreateWithProviderParams + + Batches = Hanzoai::Models::Batches + + BatchListParams = Hanzoai::Models::BatchListParams + + BatchListWithProviderParams = Hanzoai::Models::BatchListWithProviderParams + + BatchRetrieveParams = Hanzoai::Models::BatchRetrieveParams + + BatchRetrieveWithProviderParams = Hanzoai::Models::BatchRetrieveWithProviderParams + + BedrockCreateParams = Hanzoai::Models::BedrockCreateParams + + BedrockDeleteParams = Hanzoai::Models::BedrockDeleteParams + + BedrockPatchParams = Hanzoai::Models::BedrockPatchParams + + BedrockRetrieveParams = Hanzoai::Models::BedrockRetrieveParams + + BedrockUpdateParams = Hanzoai::Models::BedrockUpdateParams + + BlockKeyRequest = Hanzoai::Models::BlockKeyRequest + + BlockTeamRequest = Hanzoai::Models::BlockTeamRequest + + BlockUsers = Hanzoai::Models::BlockUsers + + BudgetCreateParams = Hanzoai::Models::BudgetCreateParams + + BudgetDeleteParams = Hanzoai::Models::BudgetDeleteParams + + BudgetInfoParams = Hanzoai::Models::BudgetInfoParams + + BudgetListParams = Hanzoai::Models::BudgetListParams + + BudgetNew = Hanzoai::Models::BudgetNew + + BudgetSettingsParams = Hanzoai::Models::BudgetSettingsParams + + BudgetUpdateParams = Hanzoai::Models::BudgetUpdateParams + + Cache = Hanzoai::Models::Cache + + CacheDeleteParams = Hanzoai::Models::CacheDeleteParams + + CacheFlushAllParams = Hanzoai::Models::CacheFlushAllParams + + CachePingParams = Hanzoai::Models::CachePingParams + + Chat = Hanzoai::Models::Chat + + ClientGetHomeParams = Hanzoai::Models::ClientGetHomeParams + + CohereCreateParams = Hanzoai::Models::CohereCreateParams + + CohereDeleteParams = Hanzoai::Models::CohereDeleteParams + + CohereModifyParams = Hanzoai::Models::CohereModifyParams + + CohereRetrieveParams = Hanzoai::Models::CohereRetrieveParams + + CohereUpdateParams = Hanzoai::Models::CohereUpdateParams + + CompletionCreateParams = Hanzoai::Models::CompletionCreateParams + + Config = Hanzoai::Models::Config + + ConfigurableClientsideParamsCustomAuth = Hanzoai::Models::ConfigurableClientsideParamsCustomAuth + + CredentialCreateParams = Hanzoai::Models::CredentialCreateParams + + CredentialDeleteParams = Hanzoai::Models::CredentialDeleteParams + + CredentialItem = Hanzoai::Models::CredentialItem + + CredentialListParams = Hanzoai::Models::CredentialListParams + + CustomerBlockParams = Hanzoai::Models::CustomerBlockParams + + CustomerCreateParams = Hanzoai::Models::CustomerCreateParams + + CustomerDeleteParams = Hanzoai::Models::CustomerDeleteParams + + CustomerListParams = Hanzoai::Models::CustomerListParams + + CustomerRetrieveInfoParams = Hanzoai::Models::CustomerRetrieveInfoParams + + CustomerUnblockParams = Hanzoai::Models::CustomerUnblockParams + + CustomerUpdateParams = Hanzoai::Models::CustomerUpdateParams + + DeleteCreateAllowedIPParams = Hanzoai::Models::DeleteCreateAllowedIPParams + + EmbeddingCreateParams = Hanzoai::Models::EmbeddingCreateParams + + EngineCompleteParams = Hanzoai::Models::EngineCompleteParams + + EngineEmbedParams = Hanzoai::Models::EngineEmbedParams + + Engines = Hanzoai::Models::Engines + + EuAssemblyaiCreateParams = Hanzoai::Models::EuAssemblyaiCreateParams + + EuAssemblyaiDeleteParams = Hanzoai::Models::EuAssemblyaiDeleteParams + + EuAssemblyaiPatchParams = Hanzoai::Models::EuAssemblyaiPatchParams + + EuAssemblyaiRetrieveParams = Hanzoai::Models::EuAssemblyaiRetrieveParams + + EuAssemblyaiUpdateParams = Hanzoai::Models::EuAssemblyaiUpdateParams + + FileCreateParams = Hanzoai::Models::FileCreateParams + + FileDeleteParams = Hanzoai::Models::FileDeleteParams + + FileListParams = Hanzoai::Models::FileListParams + + FileRetrieveParams = Hanzoai::Models::FileRetrieveParams + + Files = Hanzoai::Models::Files + + FineTuning = Hanzoai::Models::FineTuning + + GeminiCreateParams = Hanzoai::Models::GeminiCreateParams + + GeminiDeleteParams = Hanzoai::Models::GeminiDeleteParams + + GeminiPatchParams = Hanzoai::Models::GeminiPatchParams + + GeminiRetrieveParams = Hanzoai::Models::GeminiRetrieveParams + + GeminiUpdateParams = Hanzoai::Models::GeminiUpdateParams + + GenerateKeyResponse = Hanzoai::Models::GenerateKeyResponse + + Global = Hanzoai::Models::Global + + GuardrailListParams = Hanzoai::Models::GuardrailListParams + + HealthCheckAllParams = Hanzoai::Models::HealthCheckAllParams + + HealthCheckLivelinessParams = Hanzoai::Models::HealthCheckLivelinessParams + + HealthCheckLivenessParams = Hanzoai::Models::HealthCheckLivenessParams + + HealthCheckReadinessParams = Hanzoai::Models::HealthCheckReadinessParams + + HealthCheckServicesParams = Hanzoai::Models::HealthCheckServicesParams + + Images = Hanzoai::Models::Images + + IPAddress = Hanzoai::Models::IPAddress + + Key = Hanzoai::Models::Key + + KeyBlockParams = Hanzoai::Models::KeyBlockParams + + KeyCheckHealthParams = Hanzoai::Models::KeyCheckHealthParams + + KeyDeleteParams = Hanzoai::Models::KeyDeleteParams + + KeyGenerateParams = Hanzoai::Models::KeyGenerateParams + + KeyListParams = Hanzoai::Models::KeyListParams + + KeyRegenerateByKeyParams = Hanzoai::Models::KeyRegenerateByKeyParams + + KeyRetrieveInfoParams = Hanzoai::Models::KeyRetrieveInfoParams + + KeyUnblockParams = Hanzoai::Models::KeyUnblockParams + + KeyUpdateParams = Hanzoai::Models::KeyUpdateParams + + LangfuseCreateParams = Hanzoai::Models::LangfuseCreateParams + + LangfuseDeleteParams = Hanzoai::Models::LangfuseDeleteParams + + LangfusePatchParams = Hanzoai::Models::LangfusePatchParams + + LangfuseRetrieveParams = Hanzoai::Models::LangfuseRetrieveParams + + LangfuseUpdateParams = Hanzoai::Models::LangfuseUpdateParams + + Member = Hanzoai::Models::Member + + Model = Hanzoai::Models::Model + + ModelCreateParams = Hanzoai::Models::ModelCreateParams + + ModelDeleteParams = Hanzoai::Models::ModelDeleteParams + + ModelGroupRetrieveInfoParams = Hanzoai::Models::ModelGroupRetrieveInfoParams + + ModelInfo = Hanzoai::Models::ModelInfo + + ModelListParams = Hanzoai::Models::ModelListParams + + ModerationCreateParams = Hanzoai::Models::ModerationCreateParams + + OpenAI = Hanzoai::Models::OpenAI + + OpenAICreateParams = Hanzoai::Models::OpenAICreateParams + + OpenAIDeleteParams = Hanzoai::Models::OpenAIDeleteParams + + OpenAIPatchParams = Hanzoai::Models::OpenAIPatchParams + + OpenAIRetrieveParams = Hanzoai::Models::OpenAIRetrieveParams + + OpenAIUpdateParams = Hanzoai::Models::OpenAIUpdateParams + + Organization = Hanzoai::Models::Organization + + OrganizationAddMemberParams = Hanzoai::Models::OrganizationAddMemberParams + + OrganizationCreateParams = Hanzoai::Models::OrganizationCreateParams + + OrganizationDeleteMemberParams = Hanzoai::Models::OrganizationDeleteMemberParams + + OrganizationDeleteParams = Hanzoai::Models::OrganizationDeleteParams + + OrganizationListParams = Hanzoai::Models::OrganizationListParams + + OrganizationUpdateMemberParams = Hanzoai::Models::OrganizationUpdateMemberParams + + OrganizationUpdateParams = Hanzoai::Models::OrganizationUpdateParams + + OrgMember = Hanzoai::Models::OrgMember + + ProviderListBudgetsParams = Hanzoai::Models::ProviderListBudgetsParams + + RerankCreateParams = Hanzoai::Models::RerankCreateParams + + RerankCreateV1Params = Hanzoai::Models::RerankCreateV1Params + + RerankCreateV2Params = Hanzoai::Models::RerankCreateV2Params + + ResponseCreateParams = Hanzoai::Models::ResponseCreateParams + + ResponseDeleteParams = Hanzoai::Models::ResponseDeleteParams + + ResponseRetrieveParams = Hanzoai::Models::ResponseRetrieveParams + + Responses = Hanzoai::Models::Responses + + RouteListParams = Hanzoai::Models::RouteListParams + + SettingRetrieveParams = Hanzoai::Models::SettingRetrieveParams + + SpendCalculateSpendParams = Hanzoai::Models::SpendCalculateSpendParams + + SpendListLogsParams = Hanzoai::Models::SpendListLogsParams + + SpendListTagsParams = Hanzoai::Models::SpendListTagsParams + + Team = Hanzoai::Models::Team + + TeamAddMemberParams = Hanzoai::Models::TeamAddMemberParams + + TeamBlockParams = Hanzoai::Models::TeamBlockParams + + TeamCreateParams = Hanzoai::Models::TeamCreateParams + + TeamDeleteParams = Hanzoai::Models::TeamDeleteParams + + TeamDisableLoggingParams = Hanzoai::Models::TeamDisableLoggingParams + + TeamListAvailableParams = Hanzoai::Models::TeamListAvailableParams + + TeamListParams = Hanzoai::Models::TeamListParams + + TeamRemoveMemberParams = Hanzoai::Models::TeamRemoveMemberParams + + TeamRetrieveInfoParams = Hanzoai::Models::TeamRetrieveInfoParams + + TeamUnblockParams = Hanzoai::Models::TeamUnblockParams + + TeamUpdateMemberParams = Hanzoai::Models::TeamUpdateMemberParams + + TeamUpdateParams = Hanzoai::Models::TeamUpdateParams + + TestPingParams = Hanzoai::Models::TestPingParams + + ThreadCreateParams = Hanzoai::Models::ThreadCreateParams + + ThreadRetrieveParams = Hanzoai::Models::ThreadRetrieveParams + + Threads = Hanzoai::Models::Threads + + UserCreateParams = Hanzoai::Models::UserCreateParams + + UserDeleteParams = Hanzoai::Models::UserDeleteParams + + UserListParams = Hanzoai::Models::UserListParams + + UserRetrieveInfoParams = Hanzoai::Models::UserRetrieveInfoParams + + UserUpdateParams = Hanzoai::Models::UserUpdateParams + + UtilGetSupportedOpenAIParamsParams = Hanzoai::Models::UtilGetSupportedOpenAIParamsParams + + UtilTokenCounterParams = Hanzoai::Models::UtilTokenCounterParams + + UtilTransformRequestParams = Hanzoai::Models::UtilTransformRequestParams + + VertexAICreateParams = Hanzoai::Models::VertexAICreateParams + + VertexAIDeleteParams = Hanzoai::Models::VertexAIDeleteParams + + VertexAIPatchParams = Hanzoai::Models::VertexAIPatchParams + + VertexAIRetrieveParams = Hanzoai::Models::VertexAIRetrieveParams + + VertexAIUpdateParams = Hanzoai::Models::VertexAIUpdateParams +end diff --git a/sig/hanzoai/models.rbs b/sig/hanzoai/models.rbs new file mode 100644 index 00000000..889b3678 --- /dev/null +++ b/sig/hanzoai/models.rbs @@ -0,0 +1,363 @@ +module Hanzoai + class ActiveListCallbacksParams = Hanzoai::Models::ActiveListCallbacksParams + + class AddAddAllowedIPParams = Hanzoai::Models::AddAddAllowedIPParams + + class AnthropicCreateParams = Hanzoai::Models::AnthropicCreateParams + + class AnthropicDeleteParams = Hanzoai::Models::AnthropicDeleteParams + + class AnthropicModifyParams = Hanzoai::Models::AnthropicModifyParams + + class AnthropicRetrieveParams = Hanzoai::Models::AnthropicRetrieveParams + + class AnthropicUpdateParams = Hanzoai::Models::AnthropicUpdateParams + + class AssemblyaiCreateParams = Hanzoai::Models::AssemblyaiCreateParams + + class AssemblyaiDeleteParams = Hanzoai::Models::AssemblyaiDeleteParams + + class AssemblyaiPatchParams = Hanzoai::Models::AssemblyaiPatchParams + + class AssemblyaiRetrieveParams = Hanzoai::Models::AssemblyaiRetrieveParams + + class AssemblyaiUpdateParams = Hanzoai::Models::AssemblyaiUpdateParams + + class AssistantCreateParams = Hanzoai::Models::AssistantCreateParams + + class AssistantDeleteParams = Hanzoai::Models::AssistantDeleteParams + + class AssistantListParams = Hanzoai::Models::AssistantListParams + + module Audio = Hanzoai::Models::Audio + + class AzureCallParams = Hanzoai::Models::AzureCallParams + + class AzureCreateParams = Hanzoai::Models::AzureCreateParams + + class AzureDeleteParams = Hanzoai::Models::AzureDeleteParams + + class AzurePatchParams = Hanzoai::Models::AzurePatchParams + + class AzureUpdateParams = Hanzoai::Models::AzureUpdateParams + + class BatchCancelWithProviderParams = Hanzoai::Models::BatchCancelWithProviderParams + + class BatchCreateParams = Hanzoai::Models::BatchCreateParams + + class BatchCreateWithProviderParams = Hanzoai::Models::BatchCreateWithProviderParams + + module Batches = Hanzoai::Models::Batches + + class BatchListParams = Hanzoai::Models::BatchListParams + + class BatchListWithProviderParams = Hanzoai::Models::BatchListWithProviderParams + + class BatchRetrieveParams = Hanzoai::Models::BatchRetrieveParams + + class BatchRetrieveWithProviderParams = Hanzoai::Models::BatchRetrieveWithProviderParams + + class BedrockCreateParams = Hanzoai::Models::BedrockCreateParams + + class BedrockDeleteParams = Hanzoai::Models::BedrockDeleteParams + + class BedrockPatchParams = Hanzoai::Models::BedrockPatchParams + + class BedrockRetrieveParams = Hanzoai::Models::BedrockRetrieveParams + + class BedrockUpdateParams = Hanzoai::Models::BedrockUpdateParams + + class BlockKeyRequest = Hanzoai::Models::BlockKeyRequest + + class BlockTeamRequest = Hanzoai::Models::BlockTeamRequest + + class BlockUsers = Hanzoai::Models::BlockUsers + + class BudgetCreateParams = Hanzoai::Models::BudgetCreateParams + + class BudgetDeleteParams = Hanzoai::Models::BudgetDeleteParams + + class BudgetInfoParams = Hanzoai::Models::BudgetInfoParams + + class BudgetListParams = Hanzoai::Models::BudgetListParams + + class BudgetNew = Hanzoai::Models::BudgetNew + + class BudgetSettingsParams = Hanzoai::Models::BudgetSettingsParams + + class BudgetUpdateParams = Hanzoai::Models::BudgetUpdateParams + + module Cache = Hanzoai::Models::Cache + + class CacheDeleteParams = Hanzoai::Models::CacheDeleteParams + + class CacheFlushAllParams = Hanzoai::Models::CacheFlushAllParams + + class CachePingParams = Hanzoai::Models::CachePingParams + + module Chat = Hanzoai::Models::Chat + + class ClientGetHomeParams = Hanzoai::Models::ClientGetHomeParams + + class CohereCreateParams = Hanzoai::Models::CohereCreateParams + + class CohereDeleteParams = Hanzoai::Models::CohereDeleteParams + + class CohereModifyParams = Hanzoai::Models::CohereModifyParams + + class CohereRetrieveParams = Hanzoai::Models::CohereRetrieveParams + + class CohereUpdateParams = Hanzoai::Models::CohereUpdateParams + + class CompletionCreateParams = Hanzoai::Models::CompletionCreateParams + + module Config = Hanzoai::Models::Config + + class ConfigurableClientsideParamsCustomAuth = Hanzoai::Models::ConfigurableClientsideParamsCustomAuth + + class CredentialCreateParams = Hanzoai::Models::CredentialCreateParams + + class CredentialDeleteParams = Hanzoai::Models::CredentialDeleteParams + + class CredentialItem = Hanzoai::Models::CredentialItem + + class CredentialListParams = Hanzoai::Models::CredentialListParams + + class CustomerBlockParams = Hanzoai::Models::CustomerBlockParams + + class CustomerCreateParams = Hanzoai::Models::CustomerCreateParams + + class CustomerDeleteParams = Hanzoai::Models::CustomerDeleteParams + + class CustomerListParams = Hanzoai::Models::CustomerListParams + + class CustomerRetrieveInfoParams = Hanzoai::Models::CustomerRetrieveInfoParams + + class CustomerUnblockParams = Hanzoai::Models::CustomerUnblockParams + + class CustomerUpdateParams = Hanzoai::Models::CustomerUpdateParams + + class DeleteCreateAllowedIPParams = Hanzoai::Models::DeleteCreateAllowedIPParams + + class EmbeddingCreateParams = Hanzoai::Models::EmbeddingCreateParams + + class EngineCompleteParams = Hanzoai::Models::EngineCompleteParams + + class EngineEmbedParams = Hanzoai::Models::EngineEmbedParams + + module Engines = Hanzoai::Models::Engines + + class EuAssemblyaiCreateParams = Hanzoai::Models::EuAssemblyaiCreateParams + + class EuAssemblyaiDeleteParams = Hanzoai::Models::EuAssemblyaiDeleteParams + + class EuAssemblyaiPatchParams = Hanzoai::Models::EuAssemblyaiPatchParams + + class EuAssemblyaiRetrieveParams = Hanzoai::Models::EuAssemblyaiRetrieveParams + + class EuAssemblyaiUpdateParams = Hanzoai::Models::EuAssemblyaiUpdateParams + + class FileCreateParams = Hanzoai::Models::FileCreateParams + + class FileDeleteParams = Hanzoai::Models::FileDeleteParams + + class FileListParams = Hanzoai::Models::FileListParams + + class FileRetrieveParams = Hanzoai::Models::FileRetrieveParams + + module Files = Hanzoai::Models::Files + + module FineTuning = Hanzoai::Models::FineTuning + + class GeminiCreateParams = Hanzoai::Models::GeminiCreateParams + + class GeminiDeleteParams = Hanzoai::Models::GeminiDeleteParams + + class GeminiPatchParams = Hanzoai::Models::GeminiPatchParams + + class GeminiRetrieveParams = Hanzoai::Models::GeminiRetrieveParams + + class GeminiUpdateParams = Hanzoai::Models::GeminiUpdateParams + + class GenerateKeyResponse = Hanzoai::Models::GenerateKeyResponse + + module Global = Hanzoai::Models::Global + + class GuardrailListParams = Hanzoai::Models::GuardrailListParams + + class HealthCheckAllParams = Hanzoai::Models::HealthCheckAllParams + + class HealthCheckLivelinessParams = Hanzoai::Models::HealthCheckLivelinessParams + + class HealthCheckLivenessParams = Hanzoai::Models::HealthCheckLivenessParams + + class HealthCheckReadinessParams = Hanzoai::Models::HealthCheckReadinessParams + + class HealthCheckServicesParams = Hanzoai::Models::HealthCheckServicesParams + + module Images = Hanzoai::Models::Images + + class IPAddress = Hanzoai::Models::IPAddress + + module Key = Hanzoai::Models::Key + + class KeyBlockParams = Hanzoai::Models::KeyBlockParams + + class KeyCheckHealthParams = Hanzoai::Models::KeyCheckHealthParams + + class KeyDeleteParams = Hanzoai::Models::KeyDeleteParams + + class KeyGenerateParams = Hanzoai::Models::KeyGenerateParams + + class KeyListParams = Hanzoai::Models::KeyListParams + + class KeyRegenerateByKeyParams = Hanzoai::Models::KeyRegenerateByKeyParams + + class KeyRetrieveInfoParams = Hanzoai::Models::KeyRetrieveInfoParams + + class KeyUnblockParams = Hanzoai::Models::KeyUnblockParams + + class KeyUpdateParams = Hanzoai::Models::KeyUpdateParams + + class LangfuseCreateParams = Hanzoai::Models::LangfuseCreateParams + + class LangfuseDeleteParams = Hanzoai::Models::LangfuseDeleteParams + + class LangfusePatchParams = Hanzoai::Models::LangfusePatchParams + + class LangfuseRetrieveParams = Hanzoai::Models::LangfuseRetrieveParams + + class LangfuseUpdateParams = Hanzoai::Models::LangfuseUpdateParams + + class Member = Hanzoai::Models::Member + + module Model = Hanzoai::Models::Model + + class ModelCreateParams = Hanzoai::Models::ModelCreateParams + + class ModelDeleteParams = Hanzoai::Models::ModelDeleteParams + + class ModelGroupRetrieveInfoParams = Hanzoai::Models::ModelGroupRetrieveInfoParams + + class ModelInfo = Hanzoai::Models::ModelInfo + + class ModelListParams = Hanzoai::Models::ModelListParams + + class ModerationCreateParams = Hanzoai::Models::ModerationCreateParams + + module OpenAI = Hanzoai::Models::OpenAI + + class OpenAICreateParams = Hanzoai::Models::OpenAICreateParams + + class OpenAIDeleteParams = Hanzoai::Models::OpenAIDeleteParams + + class OpenAIPatchParams = Hanzoai::Models::OpenAIPatchParams + + class OpenAIRetrieveParams = Hanzoai::Models::OpenAIRetrieveParams + + class OpenAIUpdateParams = Hanzoai::Models::OpenAIUpdateParams + + module Organization = Hanzoai::Models::Organization + + class OrganizationAddMemberParams = Hanzoai::Models::OrganizationAddMemberParams + + class OrganizationCreateParams = Hanzoai::Models::OrganizationCreateParams + + class OrganizationDeleteMemberParams = Hanzoai::Models::OrganizationDeleteMemberParams + + class OrganizationDeleteParams = Hanzoai::Models::OrganizationDeleteParams + + class OrganizationListParams = Hanzoai::Models::OrganizationListParams + + class OrganizationUpdateMemberParams = Hanzoai::Models::OrganizationUpdateMemberParams + + class OrganizationUpdateParams = Hanzoai::Models::OrganizationUpdateParams + + class OrgMember = Hanzoai::Models::OrgMember + + class ProviderListBudgetsParams = Hanzoai::Models::ProviderListBudgetsParams + + class RerankCreateParams = Hanzoai::Models::RerankCreateParams + + class RerankCreateV1Params = Hanzoai::Models::RerankCreateV1Params + + class RerankCreateV2Params = Hanzoai::Models::RerankCreateV2Params + + class ResponseCreateParams = Hanzoai::Models::ResponseCreateParams + + class ResponseDeleteParams = Hanzoai::Models::ResponseDeleteParams + + class ResponseRetrieveParams = Hanzoai::Models::ResponseRetrieveParams + + module Responses = Hanzoai::Models::Responses + + class RouteListParams = Hanzoai::Models::RouteListParams + + class SettingRetrieveParams = Hanzoai::Models::SettingRetrieveParams + + class SpendCalculateSpendParams = Hanzoai::Models::SpendCalculateSpendParams + + class SpendListLogsParams = Hanzoai::Models::SpendListLogsParams + + class SpendListTagsParams = Hanzoai::Models::SpendListTagsParams + + module Team = Hanzoai::Models::Team + + class TeamAddMemberParams = Hanzoai::Models::TeamAddMemberParams + + class TeamBlockParams = Hanzoai::Models::TeamBlockParams + + class TeamCreateParams = Hanzoai::Models::TeamCreateParams + + class TeamDeleteParams = Hanzoai::Models::TeamDeleteParams + + class TeamDisableLoggingParams = Hanzoai::Models::TeamDisableLoggingParams + + class TeamListAvailableParams = Hanzoai::Models::TeamListAvailableParams + + class TeamListParams = Hanzoai::Models::TeamListParams + + class TeamRemoveMemberParams = Hanzoai::Models::TeamRemoveMemberParams + + class TeamRetrieveInfoParams = Hanzoai::Models::TeamRetrieveInfoParams + + class TeamUnblockParams = Hanzoai::Models::TeamUnblockParams + + class TeamUpdateMemberParams = Hanzoai::Models::TeamUpdateMemberParams + + class TeamUpdateParams = Hanzoai::Models::TeamUpdateParams + + class TestPingParams = Hanzoai::Models::TestPingParams + + class ThreadCreateParams = Hanzoai::Models::ThreadCreateParams + + class ThreadRetrieveParams = Hanzoai::Models::ThreadRetrieveParams + + module Threads = Hanzoai::Models::Threads + + class UserCreateParams = Hanzoai::Models::UserCreateParams + + class UserDeleteParams = Hanzoai::Models::UserDeleteParams + + class UserListParams = Hanzoai::Models::UserListParams + + class UserRetrieveInfoParams = Hanzoai::Models::UserRetrieveInfoParams + + class UserUpdateParams = Hanzoai::Models::UserUpdateParams + + class UtilGetSupportedOpenAIParamsParams = Hanzoai::Models::UtilGetSupportedOpenAIParamsParams + + class UtilTokenCounterParams = Hanzoai::Models::UtilTokenCounterParams + + class UtilTransformRequestParams = Hanzoai::Models::UtilTransformRequestParams + + class VertexAICreateParams = Hanzoai::Models::VertexAICreateParams + + class VertexAIDeleteParams = Hanzoai::Models::VertexAIDeleteParams + + class VertexAIPatchParams = Hanzoai::Models::VertexAIPatchParams + + class VertexAIRetrieveParams = Hanzoai::Models::VertexAIRetrieveParams + + class VertexAIUpdateParams = Hanzoai::Models::VertexAIUpdateParams +end From 041d9f2fed2c23453cf5d24b9b3a8e7c6e47c55e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 2 May 2025 03:34:03 +0000 Subject: [PATCH 063/139] chore: validate request option coercion correctness --- lib/hanzoai/internal/type/base_model.rb | 10 +--------- lib/hanzoai/internal/type/request_parameters.rb | 10 ++-------- lib/hanzoai/internal/util.rb | 16 ++++++++++++++++ rbi/hanzoai/internal/util.rbi | 4 ++++ sig/hanzoai/internal/util.rbs | 2 ++ 5 files changed, 25 insertions(+), 17 deletions(-) diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index c68bcee5..ffd379b0 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -397,15 +397,7 @@ def to_yaml(*a) = Hanzoai::Internal::Type::Converter.dump(self.class, self).to_y # Create a new instance of a model. # # @param data [Hash{Symbol=>Object}, self] - def initialize(data = {}) - case Hanzoai::Internal::Util.coerce_hash(data) - in Hash => coerced - @data = coerced - else - message = "Expected a #{Hash} or #{Hanzoai::Internal::Type::BaseModel}, got #{data.inspect}" - raise ArgumentError.new(message) - end - end + def initialize(data = {}) = (@data = Hanzoai::Internal::Util.coerce_hash!(data).to_h) class << self # @api private diff --git a/lib/hanzoai/internal/type/request_parameters.rb b/lib/hanzoai/internal/type/request_parameters.rb index a9f95b50..424ab1f3 100644 --- a/lib/hanzoai/internal/type/request_parameters.rb +++ b/lib/hanzoai/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 = Hanzoai::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 = Hanzoai::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/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 02e3fa18..b774b413 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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 #{Hanzoai::Internal::Type::BaseModel}, got #{data.inspect}" + raise ArgumentError.new(message) + end + end end class << self diff --git a/rbi/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi index 69e01c7f..22a8448b 100644 --- a/rbi/hanzoai/internal/util.rbi +++ b/rbi/hanzoai/internal/util.rbi @@ -42,6 +42,10 @@ module Hanzoai # @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/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index 4ec54f02..0c75cda2 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -19,6 +19,8 @@ module Hanzoai 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 b533d7250ae3edab570fcb0ed66ef906368c702f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 3 May 2025 02:56:01 +0000 Subject: [PATCH 064/139] chore(internal): codegen related update --- Gemfile.lock | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index bdfadae3..505ef259 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -121,13 +121,13 @@ GEM 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) + sorbet (0.5.12053) + sorbet-static (= 0.5.12053) + sorbet-runtime (0.5.12053) + sorbet-static (0.5.12053-x86_64-linux) + sorbet-static-and-runtime (0.5.12053) + sorbet (= 0.5.12053) + sorbet-runtime (= 0.5.12053) spoom (1.6.1) erubi (>= 1.10.0) prism (>= 0.28.0) From 8b0412deb9ff80baa9068a9a53f07b63a71841cb Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 04:09:06 +0000 Subject: [PATCH 065/139] chore(internal): codegen related update --- Gemfile.lock | 20 +++++++++---------- lib/hanzoai/internal/transport/base_client.rb | 4 ++-- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 505ef259..b3fc9b62 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -33,7 +33,7 @@ GEM addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) ast (2.4.3) - async (2.23.1) + async (2.24.0) console (~> 1.29) fiber-annotation io-event (~> 1.9) @@ -105,7 +105,7 @@ GEM redcarpet (3.6.1) regexp_parser (2.10.0) rexml (3.4.1) - rubocop (1.75.4) + rubocop (1.75.5) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -121,13 +121,13 @@ GEM prism (~> 1.4) ruby-progressbar (1.13.0) securerandom (0.4.1) - sorbet (0.5.12053) - sorbet-static (= 0.5.12053) - sorbet-runtime (0.5.12053) - sorbet-static (0.5.12053-x86_64-linux) - sorbet-static-and-runtime (0.5.12053) - sorbet (= 0.5.12053) - sorbet-runtime (= 0.5.12053) + sorbet (0.5.12060) + sorbet-static (= 0.5.12060) + sorbet-runtime (0.5.12060) + sorbet-static (0.5.12060-x86_64-linux) + sorbet-static-and-runtime (0.5.12060) + sorbet (= 0.5.12060) + sorbet-runtime (= 0.5.12060) spoom (1.6.1) erubi (>= 1.10.0) prism (>= 0.28.0) @@ -151,7 +151,7 @@ GEM strscan (>= 1.0.0) terminal-table (>= 2, < 5) uri (>= 0.12.0) - strscan (3.1.4) + strscan (3.1.5) syntax_tree (6.2.0) prettier_print (>= 1.2.0) tapioca (0.16.11) diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 5f572516..5c7a1e9d 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -458,9 +458,9 @@ def request(req) decoded = Hanzoai::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 = Hanzoai::Internal::Util.dig(decoded, req[:unwrap]) From ad86138f9737623578a60ad32ab1aabbb6b360c5 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 04:15:14 +0000 Subject: [PATCH 066/139] 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 0089a92f..54ce06c4 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ require "bundler/setup" require "hanzoai" hanzo = Hanzoai::Client.new( - api_key: "My API Key", # defaults to ENV["HANZO_API_KEY"] + api_key: ENV["HANZO_API_KEY"], # This is the default and can be omitted environment: "sandbox" # defaults to "production" ) From 3350dc9b0da57b765a4e075f03064857fe0b51bf Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 04:22:13 +0000 Subject: [PATCH 067/139] chore: accept all nd-json mimetype variants --- lib/hanzoai/internal/util.rb | 2 +- rbi/hanzoai/internal/util.rbi | 2 +- test/hanzoai/internal/util_test.rb | 16 ++++++++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index b774b413..15bda3b1 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi index 22a8448b..c5a15ec2 100644 --- a/rbi/hanzoai/internal/util.rbi +++ b/rbi/hanzoai/internal/util.rbi @@ -187,7 +187,7 @@ module Hanzoai 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/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index 1b364b1c..fa416d72 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/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 + Hanzoai::Internal::Util::JSONL_CONTENT.match?(header) => ^verdict + end + end + end end class Hanzoai::Test::UtilFormDataEncodingTest < Minitest::Test From d84983c400accb33dff31abab59d78f85df9894d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 7 May 2025 05:04:44 +0000 Subject: [PATCH 068/139] chore(internal): codegen related update --- Gemfile.lock | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index b3fc9b62..1b5ec86a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -121,13 +121,13 @@ GEM prism (~> 1.4) ruby-progressbar (1.13.0) securerandom (0.4.1) - sorbet (0.5.12060) - sorbet-static (= 0.5.12060) - sorbet-runtime (0.5.12060) - sorbet-static (0.5.12060-x86_64-linux) - sorbet-static-and-runtime (0.5.12060) - sorbet (= 0.5.12060) - sorbet-runtime (= 0.5.12060) + 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) From beb4a3bc052da8e9b3d4f4dbe848a9b41f746f5a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 7 May 2025 05:08:52 +0000 Subject: [PATCH 069/139] 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 ecdab13029b1863b4e84d8edfe486f03dec55016 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 7 May 2025 05:11:40 +0000 Subject: [PATCH 070/139] chore: revert ignoring Gemfile.lock --- .gitignore | 1 - Gemfile.lock | 2 +- Rakefile | 2 +- scripts/bootstrap | 1 - 4 files changed, 2 insertions(+), 4 deletions(-) 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 index 1b5ec86a..884ac9d1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,6 +1,6 @@ GIT remote: https://github.com/stainless-api/syntax_tree-rbs.git - revision: c30b50219918be7cfe3ef803a00b59d1e77fcada + revision: 140eb3ba2ff4b959b345ac2a7927cd758a9f1284 branch: main specs: syntax_tree-rbs (1.0.0) 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 63636d2faa87890d78928dfa29536bbc91b37ced Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 8 May 2025 04:07:33 +0000 Subject: [PATCH 071/139] fix(internal): ensure formatting always uses c.utf-8 locale --- .rubocop.yml | 10 + Gemfile.lock | 2 +- Rakefile | 27 +- lib/hanzoai.rb | 1 + lib/hanzoai/file_part.rb | 4 +- .../internal/type/request_parameters.rb | 8 +- lib/hanzoai/internal/util.rb | 2 +- lib/hanzoai/models/budget_new.rb | 11 +- .../config/pass_through_endpoint_response.rb | 8 +- .../config/pass_through_generic_endpoint.rb | 3 +- lib/hanzoai/models/customer_create_params.rb | 15 +- lib/hanzoai/models/customer_update_params.rb | 8 +- .../models/fine_tuning/job_create_params.rb | 29 +- .../models/fine_tuning/job_list_params.rb | 6 +- .../models/fine_tuning/job_retrieve_params.rb | 7 +- .../global/spend_retrieve_report_params.rb | 7 +- .../models/health_check_services_params.rb | 22 +- lib/hanzoai/models/key_block_params.rb | 1 - lib/hanzoai/models/key_delete_params.rb | 1 - lib/hanzoai/models/key_generate_params.rb | 1 - lib/hanzoai/models/key_list_response.rb | 8 +- .../models/key_regenerate_by_key_params.rb | 1 - lib/hanzoai/models/key_unblock_params.rb | 1 - lib/hanzoai/models/key_update_params.rb | 1 - lib/hanzoai/models/member.rb | 8 +- lib/hanzoai/models/model/update_deployment.rb | 38 +- lib/hanzoai/models/model_create_params.rb | 38 +- lib/hanzoai/models/model_info.rb | 8 +- lib/hanzoai/models/org_member.rb | 8 +- .../organization/info_retrieve_response.rb | 6 +- .../models/organization_add_member_params.rb | 14 +- .../models/organization_delete_response.rb | 6 +- .../models/organization_list_response.rb | 6 +- .../organization_update_member_params.rb | 6 +- .../models/organization_update_response.rb | 6 +- lib/hanzoai/models/spend_list_logs_params.rb | 1 - .../models/team/callback_add_params.rb | 7 +- lib/hanzoai/models/team_add_member_params.rb | 14 +- .../models/team_add_member_response.rb | 6 +- lib/hanzoai/models/team_create_params.rb | 7 +- lib/hanzoai/models/team_create_response.rb | 6 +- lib/hanzoai/models/team_delete_params.rb | 1 - .../models/team_update_member_params.rb | 6 +- lib/hanzoai/models/team_update_params.rb | 1 - lib/hanzoai/models/user_create_params.rb | 6 +- lib/hanzoai/models/user_delete_params.rb | 1 - lib/hanzoai/models/user_update_params.rb | 6 +- .../models/util_transform_request_params.rb | 6 +- lib/hanzoai/resources/add.rb | 2 +- lib/hanzoai/resources/audio/transcriptions.rb | 2 +- lib/hanzoai/resources/batches.rb | 12 +- lib/hanzoai/resources/batches/cancel.rb | 2 +- lib/hanzoai/resources/budget.rb | 16 +- lib/hanzoai/resources/chat/completions.rb | 2 +- lib/hanzoai/resources/completions.rb | 2 +- .../resources/config/pass_through_endpoint.rb | 15 +- lib/hanzoai/resources/credentials.rb | 2 +- lib/hanzoai/resources/customer.rb | 19 +- lib/hanzoai/resources/delete.rb | 2 +- lib/hanzoai/resources/embeddings.rb | 2 +- lib/hanzoai/resources/files.rb | 8 +- lib/hanzoai/resources/files/content.rb | 2 +- lib/hanzoai/resources/fine_tuning/jobs.rb | 14 +- lib/hanzoai/resources/global/spend.rb | 7 +- lib/hanzoai/resources/health.rb | 6 +- lib/hanzoai/resources/key.rb | 30 +- lib/hanzoai/resources/model.rb | 8 +- lib/hanzoai/resources/model/info.rb | 2 +- lib/hanzoai/resources/model/update.rb | 12 +- lib/hanzoai/resources/model_group.rb | 2 +- lib/hanzoai/resources/models.rb | 2 +- lib/hanzoai/resources/organization.rb | 16 +- lib/hanzoai/resources/organization/info.rb | 4 +- lib/hanzoai/resources/spend.rb | 7 +- lib/hanzoai/resources/team.rb | 31 +- lib/hanzoai/resources/team/callback.rb | 5 +- lib/hanzoai/resources/team/model.rb | 4 +- lib/hanzoai/resources/user.rb | 15 +- lib/hanzoai/resources/utils.rb | 8 +- rbi/hanzoai/client.rbi | 23 +- rbi/hanzoai/errors.rbi | 51 +- rbi/hanzoai/file_part.rbi | 15 +- .../internal/transport/base_client.rbi | 215 ++++++--- .../transport/pooled_net_requester.rbi | 38 +- rbi/hanzoai/internal/type/array_of.rbi | 58 ++- rbi/hanzoai/internal/type/base_model.rbi | 193 +++++--- rbi/hanzoai/internal/type/base_page.rbi | 21 +- rbi/hanzoai/internal/type/boolean.rbi | 30 +- rbi/hanzoai/internal/type/converter.rbi | 96 ++-- rbi/hanzoai/internal/type/enum.rbi | 42 +- rbi/hanzoai/internal/type/file_input.rbi | 22 +- rbi/hanzoai/internal/type/hash_of.rbi | 58 ++- .../internal/type/request_parameters.rbi | 16 +- rbi/hanzoai/internal/type/union.rbi | 78 +++- rbi/hanzoai/internal/type/unknown.rbi | 27 +- rbi/hanzoai/internal/util.rbi | 301 ++++++++---- rbi/hanzoai/models.rbi | 15 +- .../models/active_list_callbacks_params.rbi | 15 +- .../models/active_list_callbacks_response.rbi | 3 +- .../models/add_add_allowed_ip_params.rbi | 15 +- .../models/add_add_allowed_ip_response.rbi | 3 +- .../models/anthropic_create_params.rbi | 15 +- .../models/anthropic_create_response.rbi | 3 +- .../models/anthropic_delete_params.rbi | 15 +- .../models/anthropic_delete_response.rbi | 3 +- .../models/anthropic_modify_params.rbi | 15 +- .../models/anthropic_modify_response.rbi | 3 +- .../models/anthropic_retrieve_params.rbi | 15 +- .../models/anthropic_retrieve_response.rbi | 3 +- .../models/anthropic_update_params.rbi | 15 +- .../models/anthropic_update_response.rbi | 3 +- .../models/assemblyai_create_params.rbi | 15 +- .../models/assemblyai_create_response.rbi | 3 +- .../models/assemblyai_delete_params.rbi | 15 +- .../models/assemblyai_delete_response.rbi | 3 +- .../models/assemblyai_patch_params.rbi | 15 +- .../models/assemblyai_patch_response.rbi | 3 +- .../models/assemblyai_retrieve_params.rbi | 15 +- .../models/assemblyai_retrieve_response.rbi | 3 +- .../models/assemblyai_update_params.rbi | 15 +- .../models/assemblyai_update_response.rbi | 3 +- .../models/assistant_create_params.rbi | 15 +- .../models/assistant_create_response.rbi | 3 +- .../models/assistant_delete_params.rbi | 15 +- .../models/assistant_delete_response.rbi | 3 +- rbi/hanzoai/models/assistant_list_params.rbi | 15 +- .../models/assistant_list_response.rbi | 3 +- .../models/audio/speech_create_params.rbi | 15 +- .../models/audio/speech_create_response.rbi | 3 +- .../audio/transcription_create_params.rbi | 26 +- .../audio/transcription_create_response.rbi | 3 +- rbi/hanzoai/models/azure_call_params.rbi | 15 +- rbi/hanzoai/models/azure_create_params.rbi | 15 +- rbi/hanzoai/models/azure_delete_params.rbi | 15 +- rbi/hanzoai/models/azure_patch_params.rbi | 15 +- rbi/hanzoai/models/azure_update_params.rbi | 15 +- .../batch_cancel_with_provider_params.rbi | 20 +- .../batch_cancel_with_provider_response.rbi | 3 +- rbi/hanzoai/models/batch_create_params.rbi | 22 +- .../batch_create_with_provider_params.rbi | 15 +- .../batch_create_with_provider_response.rbi | 3 +- rbi/hanzoai/models/batch_list_params.rbi | 30 +- .../batch_list_with_provider_params.rbi | 26 +- .../batch_list_with_provider_response.rbi | 3 +- rbi/hanzoai/models/batch_retrieve_params.rbi | 22 +- .../models/batch_retrieve_response.rbi | 3 +- .../batch_retrieve_with_provider_params.rbi | 20 +- .../batch_retrieve_with_provider_response.rbi | 3 +- .../models/batches/cancel_cancel_params.rbi | 22 +- .../models/batches/cancel_cancel_response.rbi | 3 +- rbi/hanzoai/models/bedrock_create_params.rbi | 15 +- .../models/bedrock_create_response.rbi | 3 +- rbi/hanzoai/models/bedrock_delete_params.rbi | 15 +- .../models/bedrock_delete_response.rbi | 3 +- rbi/hanzoai/models/bedrock_patch_params.rbi | 15 +- .../models/bedrock_retrieve_params.rbi | 15 +- .../models/bedrock_retrieve_response.rbi | 3 +- rbi/hanzoai/models/bedrock_update_params.rbi | 15 +- .../models/bedrock_update_response.rbi | 3 +- rbi/hanzoai/models/block_key_request.rbi | 10 +- rbi/hanzoai/models/block_team_request.rbi | 10 +- rbi/hanzoai/models/block_users.rbi | 10 +- rbi/hanzoai/models/budget_create_params.rbi | 15 +- rbi/hanzoai/models/budget_delete_params.rbi | 20 +- rbi/hanzoai/models/budget_info_params.rbi | 22 +- rbi/hanzoai/models/budget_list_params.rbi | 15 +- rbi/hanzoai/models/budget_new.rbi | 80 ++-- rbi/hanzoai/models/budget_settings_params.rbi | 20 +- .../models/budget_settings_response.rbi | 3 +- rbi/hanzoai/models/budget_update_params.rbi | 15 +- .../cache/redi_retrieve_info_params.rbi | 15 +- .../cache/redi_retrieve_info_response.rbi | 3 +- rbi/hanzoai/models/cache_delete_params.rbi | 15 +- rbi/hanzoai/models/cache_flush_all_params.rbi | 15 +- .../models/cache_flush_all_response.rbi | 3 +- rbi/hanzoai/models/cache_ping_params.rbi | 15 +- rbi/hanzoai/models/cache_ping_response.rbi | 33 +- .../models/chat/completion_create_params.rbi | 22 +- .../chat/completion_create_response.rbi | 3 +- rbi/hanzoai/models/client_get_home_params.rbi | 15 +- rbi/hanzoai/models/cohere_create_params.rbi | 15 +- rbi/hanzoai/models/cohere_delete_params.rbi | 15 +- rbi/hanzoai/models/cohere_modify_params.rbi | 15 +- rbi/hanzoai/models/cohere_retrieve_params.rbi | 15 +- .../models/cohere_retrieve_response.rbi | 3 +- rbi/hanzoai/models/cohere_update_params.rbi | 15 +- .../models/completion_create_params.rbi | 19 +- .../models/completion_create_response.rbi | 3 +- .../pass_through_endpoint_create_params.rbi | 15 +- .../pass_through_endpoint_create_response.rbi | 3 +- .../pass_through_endpoint_delete_params.rbi | 19 +- .../pass_through_endpoint_list_params.rbi | 22 +- .../config/pass_through_endpoint_response.rbi | 22 +- .../pass_through_endpoint_update_params.rbi | 15 +- .../pass_through_endpoint_update_response.rbi | 3 +- .../config/pass_through_generic_endpoint.rbi | 21 +- ...igurable_clientside_params_custom_auth.rbi | 10 +- .../models/credential_create_params.rbi | 29 +- .../models/credential_create_response.rbi | 3 +- .../models/credential_delete_params.rbi | 15 +- .../models/credential_delete_response.rbi | 3 +- rbi/hanzoai/models/credential_item.rbi | 15 +- rbi/hanzoai/models/credential_list_params.rbi | 15 +- .../models/credential_list_response.rbi | 3 +- rbi/hanzoai/models/customer_block_params.rbi | 15 +- .../models/customer_block_response.rbi | 3 +- rbi/hanzoai/models/customer_create_params.rbi | 147 ++++-- .../models/customer_create_response.rbi | 3 +- rbi/hanzoai/models/customer_delete_params.rbi | 22 +- .../models/customer_delete_response.rbi | 3 +- rbi/hanzoai/models/customer_list_params.rbi | 15 +- rbi/hanzoai/models/customer_list_response.rbi | 142 ++++-- .../models/customer_retrieve_info_params.rbi | 20 +- .../customer_retrieve_info_response.rbi | 142 ++++-- .../models/customer_unblock_params.rbi | 15 +- .../models/customer_unblock_response.rbi | 3 +- rbi/hanzoai/models/customer_update_params.rbi | 81 +++- .../models/customer_update_response.rbi | 3 +- .../delete_create_allowed_ip_params.rbi | 15 +- .../delete_create_allowed_ip_response.rbi | 3 +- .../models/embedding_create_params.rbi | 19 +- .../models/embedding_create_response.rbi | 3 +- rbi/hanzoai/models/engine_complete_params.rbi | 15 +- .../models/engine_complete_response.rbi | 3 +- rbi/hanzoai/models/engine_embed_params.rbi | 15 +- .../models/engines/chat_complete_params.rbi | 15 +- .../models/engines/chat_complete_response.rbi | 3 +- .../models/eu_assemblyai_create_params.rbi | 15 +- .../models/eu_assemblyai_create_response.rbi | 3 +- .../models/eu_assemblyai_delete_params.rbi | 15 +- .../models/eu_assemblyai_delete_response.rbi | 3 +- .../models/eu_assemblyai_patch_params.rbi | 15 +- .../models/eu_assemblyai_patch_response.rbi | 3 +- .../models/eu_assemblyai_retrieve_params.rbi | 15 +- .../eu_assemblyai_retrieve_response.rbi | 3 +- .../models/eu_assemblyai_update_params.rbi | 15 +- .../models/eu_assemblyai_update_response.rbi | 3 +- rbi/hanzoai/models/file_create_params.rbi | 35 +- rbi/hanzoai/models/file_delete_params.rbi | 20 +- rbi/hanzoai/models/file_list_params.rbi | 22 +- rbi/hanzoai/models/file_retrieve_params.rbi | 20 +- .../models/files/content_retrieve_params.rbi | 19 +- .../files/content_retrieve_response.rbi | 3 +- .../models/fine_tuning/job_create_params.rbi | 182 +++++--- .../models/fine_tuning/job_list_params.rbi | 75 ++- .../fine_tuning/job_retrieve_params.rbi | 64 ++- .../fine_tuning/job_retrieve_response.rbi | 3 +- .../fine_tuning/jobs/cancel_create_params.rbi | 16 +- .../jobs/cancel_create_response.rbi | 3 +- rbi/hanzoai/models/gemini_create_params.rbi | 15 +- rbi/hanzoai/models/gemini_delete_params.rbi | 15 +- rbi/hanzoai/models/gemini_patch_params.rbi | 15 +- rbi/hanzoai/models/gemini_retrieve_params.rbi | 15 +- .../models/gemini_retrieve_response.rbi | 3 +- rbi/hanzoai/models/gemini_update_params.rbi | 15 +- rbi/hanzoai/models/generate_key_response.rbi | 85 ++-- .../models/global/spend_list_tags_params.rbi | 31 +- .../global/spend_list_tags_response.rbi | 141 ++++-- .../models/global/spend_reset_params.rbi | 15 +- .../global/spend_retrieve_report_params.rbi | 88 ++-- .../global/spend_retrieve_report_response.rbi | 141 ++++-- rbi/hanzoai/models/guardrail_list_params.rbi | 15 +- .../models/guardrail_list_response.rbi | 105 +++-- .../models/health_check_all_params.rbi | 20 +- .../models/health_check_all_response.rbi | 3 +- .../models/health_check_liveliness_params.rbi | 15 +- .../health_check_liveliness_response.rbi | 3 +- .../models/health_check_liveness_params.rbi | 15 +- .../models/health_check_liveness_response.rbi | 3 +- .../models/health_check_readiness_params.rbi | 15 +- .../health_check_readiness_response.rbi | 3 +- .../models/health_check_services_params.rbi | 112 ++++- .../models/health_check_services_response.rbi | 3 +- .../images/generation_create_params.rbi | 15 +- .../images/generation_create_response.rbi | 3 +- rbi/hanzoai/models/ip_address.rbi | 10 +- .../models/key/regenerate_key_request.rbi | 77 +-- rbi/hanzoai/models/key_block_params.rbi | 20 +- rbi/hanzoai/models/key_block_response.rbi | 90 ++-- .../models/key_check_health_params.rbi | 15 +- .../models/key_check_health_response.rbi | 153 ++++-- rbi/hanzoai/models/key_delete_params.rbi | 31 +- rbi/hanzoai/models/key_generate_params.rbi | 81 ++-- rbi/hanzoai/models/key_list_params.rbi | 41 +- rbi/hanzoai/models/key_list_response.rbi | 342 +++++++++----- .../models/key_regenerate_by_key_params.rbi | 20 +- .../models/key_retrieve_info_params.rbi | 20 +- .../models/key_retrieve_info_response.rbi | 3 +- rbi/hanzoai/models/key_unblock_params.rbi | 20 +- rbi/hanzoai/models/key_update_params.rbi | 81 ++-- rbi/hanzoai/models/langfuse_create_params.rbi | 15 +- .../models/langfuse_create_response.rbi | 3 +- rbi/hanzoai/models/langfuse_delete_params.rbi | 15 +- .../models/langfuse_delete_response.rbi | 3 +- rbi/hanzoai/models/langfuse_patch_params.rbi | 15 +- .../models/langfuse_patch_response.rbi | 3 +- .../models/langfuse_retrieve_params.rbi | 15 +- .../models/langfuse_retrieve_response.rbi | 3 +- rbi/hanzoai/models/langfuse_update_params.rbi | 15 +- .../models/langfuse_update_response.rbi | 3 +- rbi/hanzoai/models/member.rbi | 37 +- rbi/hanzoai/models/model/info_list_params.rbi | 22 +- .../models/model/update_deployment.rbi | 213 ++++++--- .../models/model/update_full_params.rbi | 15 +- .../models/model/update_partial_params.rbi | 15 +- .../models/model/update_partial_response.rbi | 3 +- rbi/hanzoai/models/model_create_params.rbi | 211 ++++++--- rbi/hanzoai/models/model_delete_params.rbi | 20 +- .../model_group_retrieve_info_params.rbi | 22 +- .../model_group_retrieve_info_response.rbi | 3 +- rbi/hanzoai/models/model_info.rbi | 58 +-- rbi/hanzoai/models/model_list_params.rbi | 32 +- .../models/moderation_create_params.rbi | 15 +- .../models/moderation_create_response.rbi | 3 +- .../openai/deployment_complete_params.rbi | 15 +- .../openai/deployment_complete_response.rbi | 3 +- .../models/openai/deployment_embed_params.rbi | 15 +- .../openai/deployment_embed_response.rbi | 3 +- .../deployments/chat_complete_params.rbi | 16 +- .../deployments/chat_complete_response.rbi | 3 +- rbi/hanzoai/models/openai_create_params.rbi | 15 +- rbi/hanzoai/models/openai_delete_params.rbi | 15 +- rbi/hanzoai/models/openai_patch_params.rbi | 15 +- rbi/hanzoai/models/openai_retrieve_params.rbi | 15 +- .../models/openai_retrieve_response.rbi | 3 +- rbi/hanzoai/models/openai_update_params.rbi | 15 +- rbi/hanzoai/models/org_member.rbi | 45 +- .../organization/info_deprecated_params.rbi | 22 +- .../organization/info_deprecated_response.rbi | 3 +- .../organization/info_retrieve_params.rbi | 22 +- .../organization/info_retrieve_response.rbi | 409 +++++++++------- .../models/organization_add_member_params.rbi | 66 ++- .../organization_add_member_response.rbi | 344 ++++++++------ .../models/organization_create_params.rbi | 49 +- .../models/organization_create_response.rbi | 41 +- .../organization_delete_member_params.rbi | 35 +- .../organization_delete_member_response.rbi | 3 +- .../models/organization_delete_params.rbi | 22 +- .../models/organization_delete_response.rbi | 394 ++++++++++------ .../models/organization_list_params.rbi | 15 +- .../models/organization_list_response.rbi | 393 ++++++++++------ .../organization_update_member_params.rbi | 102 ++-- .../organization_update_member_response.rbi | 102 ++-- .../models/organization_update_params.rbi | 39 +- .../models/organization_update_response.rbi | 377 +++++++++------ .../models/provider_list_budgets_params.rbi | 15 +- .../models/provider_list_budgets_response.rbi | 82 +++- rbi/hanzoai/models/rerank_create_params.rbi | 15 +- .../models/rerank_create_v1_params.rbi | 15 +- .../models/rerank_create_v1_response.rbi | 3 +- .../models/rerank_create_v2_params.rbi | 15 +- .../models/rerank_create_v2_response.rbi | 3 +- rbi/hanzoai/models/response_create_params.rbi | 15 +- .../models/response_create_response.rbi | 3 +- rbi/hanzoai/models/response_delete_params.rbi | 15 +- .../models/response_delete_response.rbi | 3 +- .../models/response_retrieve_params.rbi | 15 +- .../models/response_retrieve_response.rbi | 3 +- .../responses/input_item_list_params.rbi | 15 +- .../responses/input_item_list_response.rbi | 3 +- rbi/hanzoai/models/route_list_params.rbi | 15 +- .../models/setting_retrieve_params.rbi | 15 +- .../models/setting_retrieve_response.rbi | 3 +- .../models/spend_calculate_spend_params.rbi | 35 +- .../models/spend_calculate_spend_response.rbi | 3 +- rbi/hanzoai/models/spend_list_logs_params.rbi | 35 +- .../models/spend_list_logs_response.rbi | 127 +++-- rbi/hanzoai/models/spend_list_tags_params.rbi | 29 +- .../models/spend_list_tags_response.rbi | 127 +++-- .../models/team/callback_add_params.rbi | 80 +++- .../models/team/callback_add_response.rbi | 3 +- .../models/team/callback_retrieve_params.rbi | 15 +- .../team/callback_retrieve_response.rbi | 3 +- rbi/hanzoai/models/team/model_add_params.rbi | 13 +- .../models/team/model_remove_params.rbi | 13 +- .../models/team/model_remove_response.rbi | 3 +- rbi/hanzoai/models/team_add_member_params.rbi | 61 ++- .../models/team_add_member_response.rbi | 439 +++++++++++------- rbi/hanzoai/models/team_block_params.rbi | 15 +- rbi/hanzoai/models/team_create_params.rbi | 65 +-- rbi/hanzoai/models/team_create_response.rbi | 124 +++-- rbi/hanzoai/models/team_delete_params.rbi | 27 +- .../models/team_disable_logging_params.rbi | 15 +- .../models/team_disable_logging_response.rbi | 3 +- .../models/team_list_available_params.rbi | 22 +- .../models/team_list_available_response.rbi | 3 +- rbi/hanzoai/models/team_list_params.rbi | 29 +- .../models/team_remove_member_params.rbi | 30 +- .../models/team_remove_member_response.rbi | 3 +- .../models/team_retrieve_info_params.rbi | 21 +- .../models/team_retrieve_info_response.rbi | 3 +- rbi/hanzoai/models/team_unblock_params.rbi | 15 +- .../models/team_update_member_params.rbi | 54 ++- .../models/team_update_member_response.rbi | 28 +- rbi/hanzoai/models/team_update_params.rbi | 53 ++- rbi/hanzoai/models/test_ping_params.rbi | 15 +- rbi/hanzoai/models/thread_create_params.rbi | 15 +- rbi/hanzoai/models/thread_retrieve_params.rbi | 15 +- .../models/thread_retrieve_response.rbi | 3 +- .../models/threads/message_create_params.rbi | 15 +- .../threads/message_create_response.rbi | 3 +- .../models/threads/message_list_params.rbi | 15 +- .../models/threads/message_list_response.rbi | 3 +- .../models/threads/run_create_params.rbi | 15 +- rbi/hanzoai/models/user_create_params.rbi | 114 +++-- rbi/hanzoai/models/user_create_response.rbi | 143 +++--- rbi/hanzoai/models/user_delete_params.rbi | 27 +- rbi/hanzoai/models/user_list_params.rbi | 33 +- .../models/user_retrieve_info_params.rbi | 23 +- .../models/user_retrieve_info_response.rbi | 3 +- rbi/hanzoai/models/user_update_params.rbi | 108 +++-- ...til_get_supported_openai_params_params.rbi | 20 +- ...l_get_supported_openai_params_response.rbi | 3 +- .../models/util_token_counter_params.rbi | 30 +- .../models/util_token_counter_response.rbi | 26 +- .../models/util_transform_request_params.rbi | 380 +++++++++++---- .../util_transform_request_response.rbi | 32 +- .../models/vertex_ai_create_params.rbi | 15 +- .../models/vertex_ai_create_response.rbi | 3 +- .../models/vertex_ai_delete_params.rbi | 15 +- .../models/vertex_ai_delete_response.rbi | 3 +- rbi/hanzoai/models/vertex_ai_patch_params.rbi | 15 +- .../models/vertex_ai_patch_response.rbi | 3 +- .../models/vertex_ai_retrieve_params.rbi | 15 +- .../models/vertex_ai_retrieve_response.rbi | 3 +- .../models/vertex_ai_update_params.rbi | 15 +- .../models/vertex_ai_update_response.rbi | 3 +- rbi/hanzoai/request_options.rbi | 18 +- rbi/hanzoai/resources/active.rbi | 12 +- rbi/hanzoai/resources/add.rbi | 13 +- rbi/hanzoai/resources/anthropic.rbi | 53 ++- rbi/hanzoai/resources/assemblyai.rbi | 53 ++- rbi/hanzoai/resources/assistants.rbi | 31 +- rbi/hanzoai/resources/audio.rbi | 3 +- rbi/hanzoai/resources/audio/speech.rbi | 12 +- .../resources/audio/transcriptions.rbi | 11 +- rbi/hanzoai/resources/azure.rbi | 53 ++- rbi/hanzoai/resources/batches.rbi | 74 ++- rbi/hanzoai/resources/batches/cancel.rbi | 13 +- rbi/hanzoai/resources/bedrock.rbi | 53 ++- rbi/hanzoai/resources/budget.rbi | 70 ++- rbi/hanzoai/resources/cache.rbi | 30 +- rbi/hanzoai/resources/cache/redis.rbi | 12 +- rbi/hanzoai/resources/chat.rbi | 3 +- rbi/hanzoai/resources/chat/completions.rbi | 13 +- rbi/hanzoai/resources/cohere.rbi | 53 ++- rbi/hanzoai/resources/completions.rbi | 13 +- rbi/hanzoai/resources/config.rbi | 3 +- .../config/pass_through_endpoint.rbi | 43 +- rbi/hanzoai/resources/credentials.rbi | 27 +- rbi/hanzoai/resources/customer.rbi | 90 +++- rbi/hanzoai/resources/delete.rbi | 13 +- rbi/hanzoai/resources/embeddings.rbi | 13 +- rbi/hanzoai/resources/engines.rbi | 23 +- rbi/hanzoai/resources/engines/chat.rbi | 13 +- rbi/hanzoai/resources/eu_assemblyai.rbi | 53 ++- rbi/hanzoai/resources/files.rbi | 45 +- rbi/hanzoai/resources/files/content.rbi | 12 +- rbi/hanzoai/resources/fine_tuning.rbi | 3 +- rbi/hanzoai/resources/fine_tuning/jobs.rbi | 53 ++- .../resources/fine_tuning/jobs/cancel.rbi | 11 +- rbi/hanzoai/resources/gemini.rbi | 53 ++- rbi/hanzoai/resources/global.rbi | 3 +- rbi/hanzoai/resources/global/spend.rbi | 35 +- rbi/hanzoai/resources/guardrails.rbi | 12 +- rbi/hanzoai/resources/health.rbi | 56 ++- rbi/hanzoai/resources/images.rbi | 3 +- rbi/hanzoai/resources/images/generations.rbi | 12 +- rbi/hanzoai/resources/key.rbi | 89 ++-- rbi/hanzoai/resources/key/regenerate.rbi | 3 +- rbi/hanzoai/resources/langfuse.rbi | 53 ++- rbi/hanzoai/resources/model.rbi | 26 +- rbi/hanzoai/resources/model/info.rbi | 11 +- rbi/hanzoai/resources/model/update.rbi | 40 +- rbi/hanzoai/resources/model_group.rbi | 11 +- rbi/hanzoai/resources/models.rbi | 11 +- rbi/hanzoai/resources/moderations.rbi | 12 +- rbi/hanzoai/resources/openai.rbi | 53 ++- rbi/hanzoai/resources/openai/deployments.rbi | 23 +- .../resources/openai/deployments/chat.rbi | 13 +- rbi/hanzoai/resources/organization.rbi | 86 ++-- rbi/hanzoai/resources/organization/info.rbi | 20 +- rbi/hanzoai/resources/provider.rbi | 12 +- rbi/hanzoai/resources/rerank.rbi | 30 +- rbi/hanzoai/resources/responses.rbi | 32 +- .../resources/responses/input_items.rbi | 13 +- rbi/hanzoai/resources/routes.rbi | 12 +- rbi/hanzoai/resources/settings.rbi | 12 +- rbi/hanzoai/resources/spend.rbi | 34 +- rbi/hanzoai/resources/team.rbi | 134 ++++-- rbi/hanzoai/resources/team/callback.rbi | 27 +- rbi/hanzoai/resources/team/model.rbi | 23 +- rbi/hanzoai/resources/test.rbi | 12 +- rbi/hanzoai/resources/threads.rbi | 22 +- rbi/hanzoai/resources/threads/messages.rbi | 23 +- rbi/hanzoai/resources/threads/runs.rbi | 13 +- rbi/hanzoai/resources/user.rbi | 56 ++- rbi/hanzoai/resources/utils.rbi | 31 +- rbi/hanzoai/resources/vertex_ai.rbi | 53 ++- .../internal/type/request_parameters.rbs | 4 +- .../models/active_list_callbacks_params.rbs | 2 - .../models/add_add_allowed_ip_params.rbs | 2 - .../models/anthropic_create_params.rbs | 2 - .../models/anthropic_delete_params.rbs | 2 - .../models/anthropic_modify_params.rbs | 2 - .../models/anthropic_retrieve_params.rbs | 2 - .../models/anthropic_update_params.rbs | 2 - .../models/assemblyai_create_params.rbs | 2 - .../models/assemblyai_delete_params.rbs | 2 - .../models/assemblyai_patch_params.rbs | 2 - .../models/assemblyai_retrieve_params.rbs | 2 - .../models/assemblyai_update_params.rbs | 2 - .../models/assistant_create_params.rbs | 2 - .../models/assistant_delete_params.rbs | 2 - sig/hanzoai/models/assistant_list_params.rbs | 2 - .../models/audio/speech_create_params.rbs | 2 - .../audio/transcription_create_params.rbs | 2 - sig/hanzoai/models/azure_call_params.rbs | 2 - sig/hanzoai/models/azure_create_params.rbs | 2 - sig/hanzoai/models/azure_delete_params.rbs | 2 - sig/hanzoai/models/azure_patch_params.rbs | 2 - sig/hanzoai/models/azure_update_params.rbs | 2 - .../batch_cancel_with_provider_params.rbs | 2 - sig/hanzoai/models/batch_create_params.rbs | 2 - .../batch_create_with_provider_params.rbs | 2 - sig/hanzoai/models/batch_list_params.rbs | 2 - .../batch_list_with_provider_params.rbs | 2 - sig/hanzoai/models/batch_retrieve_params.rbs | 2 - .../batch_retrieve_with_provider_params.rbs | 2 - .../models/batches/cancel_cancel_params.rbs | 2 - sig/hanzoai/models/bedrock_create_params.rbs | 2 - sig/hanzoai/models/bedrock_delete_params.rbs | 2 - sig/hanzoai/models/bedrock_patch_params.rbs | 2 - .../models/bedrock_retrieve_params.rbs | 2 - sig/hanzoai/models/bedrock_update_params.rbs | 2 - sig/hanzoai/models/block_key_request.rbs | 2 - sig/hanzoai/models/block_team_request.rbs | 2 - sig/hanzoai/models/block_users.rbs | 2 - sig/hanzoai/models/budget_create_params.rbs | 2 - sig/hanzoai/models/budget_delete_params.rbs | 2 - sig/hanzoai/models/budget_info_params.rbs | 2 - sig/hanzoai/models/budget_list_params.rbs | 2 - sig/hanzoai/models/budget_new.rbs | 10 +- sig/hanzoai/models/budget_settings_params.rbs | 2 - sig/hanzoai/models/budget_update_params.rbs | 2 - .../cache/redi_retrieve_info_params.rbs | 2 - sig/hanzoai/models/cache_delete_params.rbs | 2 - sig/hanzoai/models/cache_flush_all_params.rbs | 2 - sig/hanzoai/models/cache_ping_params.rbs | 2 - sig/hanzoai/models/cache_ping_response.rbs | 2 - .../models/chat/completion_create_params.rbs | 2 - sig/hanzoai/models/client_get_home_params.rbs | 2 - sig/hanzoai/models/cohere_create_params.rbs | 2 - sig/hanzoai/models/cohere_delete_params.rbs | 2 - sig/hanzoai/models/cohere_modify_params.rbs | 2 - sig/hanzoai/models/cohere_retrieve_params.rbs | 2 - sig/hanzoai/models/cohere_update_params.rbs | 2 - .../models/completion_create_params.rbs | 2 - .../pass_through_endpoint_create_params.rbs | 2 - .../pass_through_endpoint_delete_params.rbs | 2 - .../pass_through_endpoint_list_params.rbs | 2 - .../config/pass_through_endpoint_response.rbs | 10 +- .../pass_through_endpoint_update_params.rbs | 2 - .../config/pass_through_generic_endpoint.rbs | 2 - ...igurable_clientside_params_custom_auth.rbs | 2 - .../models/credential_create_params.rbs | 2 - .../models/credential_delete_params.rbs | 2 - sig/hanzoai/models/credential_item.rbs | 2 - sig/hanzoai/models/credential_list_params.rbs | 2 - sig/hanzoai/models/customer_block_params.rbs | 2 - sig/hanzoai/models/customer_create_params.rbs | 10 +- sig/hanzoai/models/customer_delete_params.rbs | 2 - sig/hanzoai/models/customer_list_params.rbs | 2 - sig/hanzoai/models/customer_list_response.rbs | 4 - .../models/customer_retrieve_info_params.rbs | 2 - .../customer_retrieve_info_response.rbs | 4 - .../models/customer_unblock_params.rbs | 2 - sig/hanzoai/models/customer_update_params.rbs | 2 - .../delete_create_allowed_ip_params.rbs | 2 - .../models/embedding_create_params.rbs | 2 - sig/hanzoai/models/engine_complete_params.rbs | 2 - sig/hanzoai/models/engine_embed_params.rbs | 2 - .../models/engines/chat_complete_params.rbs | 2 - .../models/eu_assemblyai_create_params.rbs | 2 - .../models/eu_assemblyai_delete_params.rbs | 2 - .../models/eu_assemblyai_patch_params.rbs | 2 - .../models/eu_assemblyai_retrieve_params.rbs | 2 - .../models/eu_assemblyai_update_params.rbs | 2 - sig/hanzoai/models/file_create_params.rbs | 2 - sig/hanzoai/models/file_delete_params.rbs | 2 - sig/hanzoai/models/file_list_params.rbs | 2 - sig/hanzoai/models/file_retrieve_params.rbs | 2 - .../models/files/content_retrieve_params.rbs | 2 - .../models/fine_tuning/job_create_params.rbs | 34 +- .../models/fine_tuning/job_list_params.rbs | 2 - .../fine_tuning/job_retrieve_params.rbs | 2 - .../fine_tuning/jobs/cancel_create_params.rbs | 2 - sig/hanzoai/models/gemini_create_params.rbs | 2 - sig/hanzoai/models/gemini_delete_params.rbs | 2 - sig/hanzoai/models/gemini_patch_params.rbs | 2 - sig/hanzoai/models/gemini_retrieve_params.rbs | 2 - sig/hanzoai/models/gemini_update_params.rbs | 2 - sig/hanzoai/models/generate_key_response.rbs | 2 - .../models/global/spend_list_tags_params.rbs | 2 - .../global/spend_list_tags_response.rbs | 10 +- .../models/global/spend_reset_params.rbs | 2 - .../global/spend_retrieve_report_params.rbs | 2 - .../global/spend_retrieve_report_response.rbs | 10 +- sig/hanzoai/models/guardrail_list_params.rbs | 2 - .../models/guardrail_list_response.rbs | 8 +- .../models/health_check_all_params.rbs | 2 - .../models/health_check_liveliness_params.rbs | 2 - .../models/health_check_liveness_params.rbs | 2 - .../models/health_check_readiness_params.rbs | 2 - .../models/health_check_services_params.rbs | 11 +- .../images/generation_create_params.rbs | 2 - sig/hanzoai/models/ip_address.rbs | 2 - .../models/key/regenerate_key_request.rbs | 2 - sig/hanzoai/models/key_block_params.rbs | 2 - sig/hanzoai/models/key_block_response.rbs | 4 +- .../models/key_check_health_params.rbs | 2 - .../models/key_check_health_response.rbs | 4 - sig/hanzoai/models/key_delete_params.rbs | 2 - sig/hanzoai/models/key_generate_params.rbs | 2 - sig/hanzoai/models/key_list_params.rbs | 2 - sig/hanzoai/models/key_list_response.rbs | 14 +- .../models/key_regenerate_by_key_params.rbs | 2 - .../models/key_retrieve_info_params.rbs | 2 - sig/hanzoai/models/key_unblock_params.rbs | 2 - sig/hanzoai/models/key_update_params.rbs | 2 - sig/hanzoai/models/langfuse_create_params.rbs | 2 - sig/hanzoai/models/langfuse_delete_params.rbs | 2 - sig/hanzoai/models/langfuse_patch_params.rbs | 2 - .../models/langfuse_retrieve_params.rbs | 2 - sig/hanzoai/models/langfuse_update_params.rbs | 2 - sig/hanzoai/models/member.rbs | 14 +- sig/hanzoai/models/model/info_list_params.rbs | 2 - .../models/model/update_deployment.rbs | 50 +- .../models/model/update_full_params.rbs | 2 - .../models/model/update_partial_params.rbs | 2 - sig/hanzoai/models/model_create_params.rbs | 50 +- sig/hanzoai/models/model_delete_params.rbs | 2 - .../model_group_retrieve_info_params.rbs | 2 - sig/hanzoai/models/model_info.rbs | 10 +- sig/hanzoai/models/model_list_params.rbs | 2 - .../models/moderation_create_params.rbs | 2 - .../openai/deployment_complete_params.rbs | 2 - .../models/openai/deployment_embed_params.rbs | 2 - .../deployments/chat_complete_params.rbs | 2 - sig/hanzoai/models/openai_create_params.rbs | 2 - sig/hanzoai/models/openai_delete_params.rbs | 2 - sig/hanzoai/models/openai_patch_params.rbs | 2 - sig/hanzoai/models/openai_retrieve_params.rbs | 2 - sig/hanzoai/models/openai_update_params.rbs | 2 - sig/hanzoai/models/org_member.rbs | 14 +- .../organization/info_deprecated_params.rbs | 2 - .../organization/info_retrieve_params.rbs | 2 - .../organization/info_retrieve_response.rbs | 24 +- .../models/organization_add_member_params.rbs | 7 +- .../organization_add_member_response.rbs | 12 - .../models/organization_create_params.rbs | 2 - .../models/organization_create_response.rbs | 2 - .../organization_delete_member_params.rbs | 2 - .../models/organization_delete_params.rbs | 2 - .../models/organization_delete_response.rbs | 24 +- .../models/organization_list_params.rbs | 2 - .../models/organization_list_response.rbs | 24 +- .../organization_update_member_params.rbs | 2 - .../organization_update_member_response.rbs | 4 - .../models/organization_update_params.rbs | 2 - .../models/organization_update_response.rbs | 24 +- .../models/provider_list_budgets_params.rbs | 2 - .../models/provider_list_budgets_response.rbs | 4 - sig/hanzoai/models/rerank_create_params.rbs | 2 - .../models/rerank_create_v1_params.rbs | 2 - .../models/rerank_create_v2_params.rbs | 2 - sig/hanzoai/models/response_create_params.rbs | 2 - sig/hanzoai/models/response_delete_params.rbs | 2 - .../models/response_retrieve_params.rbs | 2 - .../responses/input_item_list_params.rbs | 2 - sig/hanzoai/models/route_list_params.rbs | 2 - .../models/setting_retrieve_params.rbs | 2 - .../models/spend_calculate_spend_params.rbs | 2 - sig/hanzoai/models/spend_list_logs_params.rbs | 2 - .../models/spend_list_logs_response.rbs | 10 +- sig/hanzoai/models/spend_list_tags_params.rbs | 2 - .../models/spend_list_tags_response.rbs | 10 +- .../models/team/callback_add_params.rbs | 2 - .../models/team/callback_retrieve_params.rbs | 2 - sig/hanzoai/models/team/model_add_params.rbs | 2 - .../models/team/model_remove_params.rbs | 2 - sig/hanzoai/models/team_add_member_params.rbs | 6 +- .../models/team_add_member_response.rbs | 26 +- sig/hanzoai/models/team_block_params.rbs | 2 - sig/hanzoai/models/team_create_params.rbs | 12 +- sig/hanzoai/models/team_create_response.rbs | 16 +- sig/hanzoai/models/team_delete_params.rbs | 2 - .../models/team_disable_logging_params.rbs | 2 - .../models/team_list_available_params.rbs | 2 - sig/hanzoai/models/team_list_params.rbs | 2 - .../models/team_remove_member_params.rbs | 2 - .../models/team_retrieve_info_params.rbs | 2 - sig/hanzoai/models/team_unblock_params.rbs | 2 - .../models/team_update_member_params.rbs | 2 - .../models/team_update_member_response.rbs | 2 - sig/hanzoai/models/team_update_params.rbs | 2 - sig/hanzoai/models/test_ping_params.rbs | 2 - sig/hanzoai/models/thread_create_params.rbs | 2 - sig/hanzoai/models/thread_retrieve_params.rbs | 2 - .../models/threads/message_create_params.rbs | 2 - .../models/threads/message_list_params.rbs | 2 - .../models/threads/run_create_params.rbs | 2 - sig/hanzoai/models/user_create_params.rbs | 2 - sig/hanzoai/models/user_create_response.rbs | 2 - sig/hanzoai/models/user_delete_params.rbs | 2 - sig/hanzoai/models/user_list_params.rbs | 2 - .../models/user_retrieve_info_params.rbs | 2 - sig/hanzoai/models/user_update_params.rbs | 2 - ...til_get_supported_openai_params_params.rbs | 2 - .../models/util_token_counter_params.rbs | 2 - .../models/util_token_counter_response.rbs | 2 - .../models/util_transform_request_params.rbs | 2 - .../util_transform_request_response.rbs | 2 - .../models/vertex_ai_create_params.rbs | 2 - .../models/vertex_ai_delete_params.rbs | 2 - sig/hanzoai/models/vertex_ai_patch_params.rbs | 2 - .../models/vertex_ai_retrieve_params.rbs | 2 - .../models/vertex_ai_update_params.rbs | 2 - sig/hanzoai/request_options.rbs | 2 +- sig/hanzoai/resources/budget.rbs | 4 +- .../config/pass_through_endpoint.rbs | 4 +- sig/hanzoai/resources/customer.rbs | 2 +- sig/hanzoai/resources/fine_tuning/jobs.rbs | 2 +- sig/hanzoai/resources/key.rbs | 4 +- sig/hanzoai/resources/model.rbs | 4 +- sig/hanzoai/resources/model/update.rbs | 8 +- sig/hanzoai/resources/team.rbs | 2 +- .../config/pass_through_endpoint_test.rb | 8 +- test/hanzoai/resources/key_test.rb | 4 +- test/hanzoai/resources/team_test.rb | 4 +- 740 files changed, 9910 insertions(+), 5894 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 50844e68..2453ec5c 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/Gemfile.lock b/Gemfile.lock index 884ac9d1..1b5ec86a 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) 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/hanzoai.rb b/lib/hanzoai.rb index fb1bb977..64d7a8b3 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -433,6 +433,7 @@ require_relative "hanzoai/models/vertex_ai_retrieve_response" require_relative "hanzoai/models/vertex_ai_update_params" require_relative "hanzoai/models/vertex_ai_update_response" +require_relative "hanzoai/models" require_relative "hanzoai/resources/active" require_relative "hanzoai/resources/add" require_relative "hanzoai/resources/anthropic" diff --git a/lib/hanzoai/file_part.rb b/lib/hanzoai/file_part.rb index 38139b91..ebd4d91d 100644 --- a/lib/hanzoai/file_part.rb +++ b/lib/hanzoai/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/hanzoai/internal/type/request_parameters.rb b/lib/hanzoai/internal/type/request_parameters.rb index 424ab1f3..5dacd1a1 100644 --- a/lib/hanzoai/internal/type/request_parameters.rb +++ b/lib/hanzoai/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 [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - # attr_accessor :request_options + # @!attribute request_options + # Options to specify HTTP behaviour for this request. + # + # @return [Hanzoai::RequestOptions, Hash{Symbol=>Object}] # @param mod [Module] def self.included(mod) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 15bda3b1..8c8bbb51 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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/hanzoai/models/budget_new.rb b/lib/hanzoai/models/budget_new.rb index 73b5c3ac..c74eae4f 100644 --- a/lib/hanzoai/models/budget_new.rb +++ b/lib/hanzoai/models/budget_new.rb @@ -31,9 +31,9 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) # - # @return [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] + # @return [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] optional :model_max_budget, - -> { Hanzoai::Internal::Type::HashOf[Hanzoai::Models::BudgetNew::ModelMaxBudget] }, + -> { Hanzoai::Internal::Type::HashOf[Hanzoai::BudgetNew::ModelMaxBudget] }, nil?: true # @!attribute rpm_limit @@ -55,8 +55,8 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel optional :tpm_limit, Integer, nil?: true # @!method initialize(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Some parameter documentations has been truncated, see - # {Hanzoai::Models::BudgetNew} for more details. + # Some parameter documentations has been truncated, see {Hanzoai::BudgetNew} for + # more details. # # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') # @@ -66,8 +66,7 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d - # ... + # @param model_max_budget [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # diff --git a/lib/hanzoai/models/config/pass_through_endpoint_response.rb b/lib/hanzoai/models/config/pass_through_endpoint_response.rb index 62dcf0eb..244f7a0f 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_response.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_response.rb @@ -7,12 +7,14 @@ module Config class PassThroughEndpointResponse < Hanzoai::Internal::Type::BaseModel # @!attribute endpoints # - # @return [Array] + # @return [Array] required :endpoints, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Config::PassThroughGenericEndpoint] } + -> { + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Config::PassThroughGenericEndpoint] + } # @!method initialize(endpoints:) - # @param endpoints [Array] + # @param endpoints [Array] end end end diff --git a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb index a9aafeee..89905edb 100644 --- a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb +++ b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb @@ -25,10 +25,9 @@ class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel # @!method initialize(headers:, path:, target:) # Some parameter documentations has been truncated, see - # {Hanzoai::Models::Config::PassThroughGenericEndpoint} for more details. + # {Hanzoai::Config::PassThroughGenericEndpoint} for more details. # # @param headers [Object] Key-value pairs of headers to be forwarded with the request. You can set any key - # ... # # @param path [String] The route to be added to the LLM Proxy Server. # diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index 02e2218a..9872078c 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -19,9 +19,11 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute allowed_model_region # - # @return [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] + # @return [Symbol, Hanzoai::CustomerCreateParams::AllowedModelRegion, nil] optional :allowed_model_region, - enum: -> { Hanzoai::Models::CustomerCreateParams::AllowedModelRegion }, + enum: -> { + Hanzoai::CustomerCreateParams::AllowedModelRegion + }, nil?: true # @!attribute blocked @@ -61,9 +63,9 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) # - # @return [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] + # @return [Hash{Symbol=>Hanzoai::CustomerCreateParams::ModelMaxBudget}, nil] optional :model_max_budget, - -> { Hanzoai::Internal::Type::HashOf[Hanzoai::Models::CustomerCreateParams::ModelMaxBudget] }, + -> { Hanzoai::Internal::Type::HashOf[Hanzoai::CustomerCreateParams::ModelMaxBudget] }, nil?: true # @!attribute rpm_limit @@ -92,7 +94,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # # @param alias_ [String, nil] # - # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::CustomerCreateParams::AllowedModelRegion, nil] # # @param blocked [Boolean] # @@ -106,8 +108,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d - # ... + # @param model_max_budget [Hash{Symbol=>Hanzoai::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # diff --git a/lib/hanzoai/models/customer_update_params.rb b/lib/hanzoai/models/customer_update_params.rb index faa0c68f..f83bfee0 100644 --- a/lib/hanzoai/models/customer_update_params.rb +++ b/lib/hanzoai/models/customer_update_params.rb @@ -19,9 +19,11 @@ class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute allowed_model_region # - # @return [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] + # @return [Symbol, Hanzoai::CustomerUpdateParams::AllowedModelRegion, nil] optional :allowed_model_region, - enum: -> { Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion }, + enum: -> { + Hanzoai::CustomerUpdateParams::AllowedModelRegion + }, nil?: true # @!attribute blocked @@ -47,7 +49,7 @@ class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel # @!method initialize(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_id: nil, default_model: nil, max_budget: nil, request_options: {}) # @param user_id [String] # @param alias_ [String, nil] - # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::CustomerUpdateParams::AllowedModelRegion, nil] # @param blocked [Boolean] # @param budget_id [String, nil] # @param default_model [String, nil] diff --git a/lib/hanzoai/models/fine_tuning/job_create_params.rb b/lib/hanzoai/models/fine_tuning/job_create_params.rb index 19c051c9..e7db910c 100644 --- a/lib/hanzoai/models/fine_tuning/job_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_create_params.rb @@ -10,9 +10,8 @@ class JobCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute custom_llm_provider # - # @return [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] - required :custom_llm_provider, - enum: -> { Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider } + # @return [Symbol, Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider] + required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider } # @!attribute model # @@ -26,10 +25,8 @@ class JobCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute hyperparameters # - # @return [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] - optional :hyperparameters, - -> { Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters }, - nil?: true + # @return [Hanzoai::FineTuning::JobCreateParams::Hyperparameters, nil] + optional :hyperparameters, -> { Hanzoai::FineTuning::JobCreateParams::Hyperparameters }, nil?: true # @!attribute integrations # @@ -52,10 +49,10 @@ class JobCreateParams < Hanzoai::Internal::Type::BaseModel optional :validation_file, String, nil?: true # @!method initialize(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider] # @param model [String] # @param training_file [String] - # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] + # @param hyperparameters [Hanzoai::FineTuning::JobCreateParams::Hyperparameters, nil] # @param integrations [Array, nil] # @param seed [Integer, nil] # @param suffix [String, nil] @@ -78,21 +75,23 @@ class Hyperparameters < Hanzoai::Internal::Type::BaseModel # # @return [String, Integer, nil] optional :batch_size, - union: -> { Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::BatchSize }, + union: -> { Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize }, nil?: true # @!attribute learning_rate_multiplier # # @return [String, Float, nil] optional :learning_rate_multiplier, - union: -> { Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier }, + union: -> { + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier + }, nil?: true # @!attribute n_epochs # # @return [String, Integer, nil] optional :n_epochs, - union: -> { Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::NEpochs }, + union: -> { Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs }, nil?: true # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) @@ -100,7 +99,7 @@ class Hyperparameters < Hanzoai::Internal::Type::BaseModel # @param learning_rate_multiplier [String, Float, nil] # @param n_epochs [String, Integer, nil] - # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#batch_size + # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#batch_size module BatchSize extend Hanzoai::Internal::Type::Union @@ -112,7 +111,7 @@ module BatchSize # @return [Array(String, Integer)] end - # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier + # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend Hanzoai::Internal::Type::Union @@ -124,7 +123,7 @@ module LearningRateMultiplier # @return [Array(String, Float)] end - # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#n_epochs + # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#n_epochs module NEpochs extend Hanzoai::Internal::Type::Union diff --git a/lib/hanzoai/models/fine_tuning/job_list_params.rb b/lib/hanzoai/models/fine_tuning/job_list_params.rb index 10475c04..4189ddc5 100644 --- a/lib/hanzoai/models/fine_tuning/job_list_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_list_params.rb @@ -10,8 +10,8 @@ class JobListParams < Hanzoai::Internal::Type::BaseModel # @!attribute custom_llm_provider # - # @return [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] - required :custom_llm_provider, enum: -> { Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider } + # @return [Symbol, Hanzoai::FineTuning::JobListParams::CustomLlmProvider] + required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobListParams::CustomLlmProvider } # @!attribute after # @@ -24,7 +24,7 @@ class JobListParams < Hanzoai::Internal::Type::BaseModel optional :limit, Integer, nil?: true # @!method initialize(custom_llm_provider:, after: nil, limit: nil, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobListParams::CustomLlmProvider] # @param after [String, nil] # @param limit [Integer, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb index 78be842b..182dd2d7 100644 --- a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb @@ -10,12 +10,11 @@ class JobRetrieveParams < Hanzoai::Internal::Type::BaseModel # @!attribute custom_llm_provider # - # @return [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] - required :custom_llm_provider, - enum: -> { Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider } + # @return [Symbol, Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider] + required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider } # @!method initialize(custom_llm_provider:, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CustomLlmProvider diff --git a/lib/hanzoai/models/global/spend_retrieve_report_params.rb b/lib/hanzoai/models/global/spend_retrieve_report_params.rb index 878d94db..ec36af3a 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_params.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_params.rb @@ -30,8 +30,8 @@ class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel # @!attribute group_by # Group spend by internal team or customer or api_key # - # @return [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] - optional :group_by, enum: -> { Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy }, nil?: true + # @return [Symbol, Hanzoai::Global::SpendRetrieveReportParams::GroupBy, nil] + optional :group_by, enum: -> { Hanzoai::Global::SpendRetrieveReportParams::GroupBy }, nil?: true # @!attribute internal_user_id # View spend for a specific internal_user_id. Example internal_user_id='1234 @@ -58,11 +58,10 @@ class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel # @param api_key [String, nil] View spend for a specific api_key. Example api_key='sk-1234 # # @param customer_id [String, nil] View spend for a specific customer_id. Example customer_id='1234. Can be used in - # ... # # @param end_date [String, nil] Time till which to view spend # - # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key + # @param group_by [Symbol, Hanzoai::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key # # @param internal_user_id [String, nil] View spend for a specific internal_user_id. Example internal_user_id='1234 # diff --git a/lib/hanzoai/models/health_check_services_params.rb b/lib/hanzoai/models/health_check_services_params.rb index d39db119..52e636ea 100644 --- a/lib/hanzoai/models/health_check_services_params.rb +++ b/lib/hanzoai/models/health_check_services_params.rb @@ -10,11 +10,11 @@ class HealthCheckServicesParams < Hanzoai::Internal::Type::BaseModel # @!attribute service # Specify the service being hit. # - # @return [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] - required :service, union: -> { Hanzoai::Models::HealthCheckServicesParams::Service } + # @return [Symbol, String, Hanzoai::HealthCheckServicesParams::Service] + required :service, union: -> { Hanzoai::HealthCheckServicesParams::Service } # @!method initialize(service:, request_options: {}) - # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] Specify the service being hit. + # @param service [Symbol, String, Hanzoai::HealthCheckServicesParams::Service] Specify the service being hit. # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] @@ -22,21 +22,21 @@ class HealthCheckServicesParams < Hanzoai::Internal::Type::BaseModel module Service extend Hanzoai::Internal::Type::Union - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::SLACK_BUDGET_ALERTS } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::SLACK_BUDGET_ALERTS } - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::LANGFUSE } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::LANGFUSE } - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::SLACK } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::SLACK } - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::OPENMETER } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::OPENMETER } - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::WEBHOOK } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::WEBHOOK } - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::EMAIL } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::EMAIL } - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::BRAINTRUST } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::BRAINTRUST } - variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::DATADOG } + variant const: -> { Hanzoai::HealthCheckServicesParams::Service::DATADOG } variant String diff --git a/lib/hanzoai/models/key_block_params.rb b/lib/hanzoai/models/key_block_params.rb index 5700b1b6..9e1cd68b 100644 --- a/lib/hanzoai/models/key_block_params.rb +++ b/lib/hanzoai/models/key_block_params.rb @@ -19,7 +19,6 @@ class KeyBlockParams < Hanzoai::Models::BlockKeyRequest # {Hanzoai::Models::KeyBlockParams} for more details. # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_delete_params.rb b/lib/hanzoai/models/key_delete_params.rb index f0310a0f..bd7942c3 100644 --- a/lib/hanzoai/models/key_delete_params.rb +++ b/lib/hanzoai/models/key_delete_params.rb @@ -33,7 +33,6 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel # @param keys [Array, nil] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index 8cb02cb9..b8f504ba 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -210,7 +210,6 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @param user_id [String, nil] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index e78c3b15..c90aa678 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -238,8 +238,8 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute team_member # - # @return [Hanzoai::Models::Member, nil] - optional :team_member, -> { Hanzoai::Models::Member }, nil?: true + # @return [Hanzoai::Member, nil] + optional :team_member, -> { Hanzoai::Member }, nil?: true # @!attribute team_member_spend # @@ -416,7 +416,7 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # @param team_max_budget [Float, nil] # - # @param team_member [Hanzoai::Models::Member, nil] + # @param team_member [Hanzoai::Member, nil] # # @param team_member_spend [Float, nil] # @@ -444,7 +444,7 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # @param user_id [String, nil] # - # @param user_role [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] Admin Roles: ... + # @param user_role [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] Admin Roles: # # @param user_rpm_limit [Integer, nil] # diff --git a/lib/hanzoai/models/key_regenerate_by_key_params.rb b/lib/hanzoai/models/key_regenerate_by_key_params.rb index 59e28d6c..9f1f3e5a 100644 --- a/lib/hanzoai/models/key_regenerate_by_key_params.rb +++ b/lib/hanzoai/models/key_regenerate_by_key_params.rb @@ -19,7 +19,6 @@ class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest # {Hanzoai::Models::KeyRegenerateByKeyParams} for more details. # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_unblock_params.rb b/lib/hanzoai/models/key_unblock_params.rb index 583e6162..0a0b330f 100644 --- a/lib/hanzoai/models/key_unblock_params.rb +++ b/lib/hanzoai/models/key_unblock_params.rb @@ -19,7 +19,6 @@ class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest # {Hanzoai::Models::KeyUnblockParams} for more details. # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index f90866c0..4806241b 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -210,7 +210,6 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @param user_id [String, nil] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/member.rb b/lib/hanzoai/models/member.rb index a1c20ec0..7af36dd0 100644 --- a/lib/hanzoai/models/member.rb +++ b/lib/hanzoai/models/member.rb @@ -5,8 +5,8 @@ module Models class Member < Hanzoai::Internal::Type::BaseModel # @!attribute role # - # @return [Symbol, Hanzoai::Models::Member::Role] - required :role, enum: -> { Hanzoai::Models::Member::Role } + # @return [Symbol, Hanzoai::Member::Role] + required :role, enum: -> { Hanzoai::Member::Role } # @!attribute user_email # @@ -19,11 +19,11 @@ class Member < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(role:, user_email: nil, user_id: nil) - # @param role [Symbol, Hanzoai::Models::Member::Role] + # @param role [Symbol, Hanzoai::Member::Role] # @param user_email [String, nil] # @param user_id [String, nil] - # @see Hanzoai::Models::Member#role + # @see Hanzoai::Member#role module Role extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/model/update_deployment.rb b/lib/hanzoai/models/model/update_deployment.rb index 4926bf19..66e8a71f 100644 --- a/lib/hanzoai/models/model/update_deployment.rb +++ b/lib/hanzoai/models/model/update_deployment.rb @@ -6,13 +6,13 @@ module Model class UpdateDeployment < Hanzoai::Internal::Type::BaseModel # @!attribute llm_params # - # @return [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] - optional :llm_params, -> { Hanzoai::Models::Model::UpdateDeployment::LlmParams }, nil?: true + # @return [Hanzoai::Model::UpdateDeployment::LlmParams, nil] + optional :llm_params, -> { Hanzoai::Model::UpdateDeployment::LlmParams }, nil?: true # @!attribute model_info # - # @return [Hanzoai::Models::ModelInfo, nil] - optional :model_info, -> { Hanzoai::Models::ModelInfo }, nil?: true + # @return [Hanzoai::ModelInfo, nil] + optional :model_info, -> { Hanzoai::ModelInfo }, nil?: true # @!attribute model_name # @@ -20,11 +20,11 @@ class UpdateDeployment < Hanzoai::Internal::Type::BaseModel optional :model_name, String, nil?: true # @!method initialize(llm_params: nil, model_info: nil, model_name: nil) - # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] - # @param model_info [Hanzoai::Models::ModelInfo, nil] + # @param llm_params [Hanzoai::Model::UpdateDeployment::LlmParams, nil] + # @param model_info [Hanzoai::ModelInfo, nil] # @param model_name [String, nil] - # @see Hanzoai::Models::Model::UpdateDeployment#llm_params + # @see Hanzoai::Model::UpdateDeployment#llm_params class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute api_base # @@ -63,9 +63,11 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute configurable_clientside_auth_params # - # @return [Array, nil] + # @return [Array, nil] optional :configurable_clientside_auth_params, - -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Models::Model::UpdateDeployment::LlmParams::ConfigurableClientsideAuthParam] }, + -> { + Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Model::UpdateDeployment::LlmParams::ConfigurableClientsideAuthParam] + }, nil?: true # @!attribute custom_llm_provider @@ -147,13 +149,13 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # # @return [Float, String, nil] optional :stream_timeout, - union: -> { Hanzoai::Models::Model::UpdateDeployment::LlmParams::StreamTimeout }, + union: -> { Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout }, nil?: true # @!attribute timeout # # @return [Float, String, nil] - optional :timeout, union: -> { Hanzoai::Models::Model::UpdateDeployment::LlmParams::Timeout }, nil?: true + optional :timeout, union: -> { Hanzoai::Model::UpdateDeployment::LlmParams::Timeout }, nil?: true # @!attribute tpm # @@ -169,7 +171,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # # @return [Object, String, nil] optional :vertex_credentials, - union: -> { Hanzoai::Models::Model::UpdateDeployment::LlmParams::VertexCredentials }, + union: -> { Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials }, nil?: true # @!attribute vertex_location @@ -195,7 +197,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @param aws_region_name [String, nil] # @param aws_secret_access_key [String, nil] # @param budget_duration [String, nil] - # @param configurable_clientside_auth_params [Array, nil] + # @param configurable_clientside_auth_params [Array, nil] # @param custom_llm_provider [String, nil] # @param input_cost_per_second [Float, nil] # @param input_cost_per_token [Float, nil] @@ -225,13 +227,13 @@ module ConfigurableClientsideAuthParam variant String - variant -> { Hanzoai::Models::ConfigurableClientsideParamsCustomAuth } + variant -> { Hanzoai::ConfigurableClientsideParamsCustomAuth } # @!method self.variants - # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] + # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] end - # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#stream_timeout + # @see Hanzoai::Model::UpdateDeployment::LlmParams#stream_timeout module StreamTimeout extend Hanzoai::Internal::Type::Union @@ -243,7 +245,7 @@ module StreamTimeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#timeout + # @see Hanzoai::Model::UpdateDeployment::LlmParams#timeout module Timeout extend Hanzoai::Internal::Type::Union @@ -255,7 +257,7 @@ module Timeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#vertex_credentials + # @see Hanzoai::Model::UpdateDeployment::LlmParams#vertex_credentials module VertexCredentials extend Hanzoai::Internal::Type::Union diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index 48d7575d..62ab843c 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -10,13 +10,13 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute llm_params # LLM Params with 'model' requirement - used for completions # - # @return [Hanzoai::Models::ModelCreateParams::LlmParams] - required :llm_params, -> { Hanzoai::Models::ModelCreateParams::LlmParams } + # @return [Hanzoai::ModelCreateParams::LlmParams] + required :llm_params, -> { Hanzoai::ModelCreateParams::LlmParams } # @!attribute model_info # - # @return [Hanzoai::Models::ModelInfo] - required :model_info, -> { Hanzoai::Models::ModelInfo } + # @return [Hanzoai::ModelInfo] + required :model_info, -> { Hanzoai::ModelInfo } # @!attribute model_name # @@ -24,9 +24,9 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel required :model_name, String # @!method initialize(llm_params:, model_info:, model_name:, request_options: {}) - # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # @param llm_params [Hanzoai::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions # - # @param model_info [Hanzoai::Models::ModelInfo] + # @param model_info [Hanzoai::ModelInfo] # # @param model_name [String] # @@ -75,9 +75,11 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute configurable_clientside_auth_params # - # @return [Array, nil] + # @return [Array, nil] optional :configurable_clientside_auth_params, - -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Models::ModelCreateParams::LlmParams::ConfigurableClientsideAuthParam] }, + -> { + Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::ModelCreateParams::LlmParams::ConfigurableClientsideAuthParam] + }, nil?: true # @!attribute custom_llm_provider @@ -154,13 +156,15 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # # @return [Float, String, nil] optional :stream_timeout, - union: -> { Hanzoai::Models::ModelCreateParams::LlmParams::StreamTimeout }, + union: -> { + Hanzoai::ModelCreateParams::LlmParams::StreamTimeout + }, nil?: true # @!attribute timeout # # @return [Float, String, nil] - optional :timeout, union: -> { Hanzoai::Models::ModelCreateParams::LlmParams::Timeout }, nil?: true + optional :timeout, union: -> { Hanzoai::ModelCreateParams::LlmParams::Timeout }, nil?: true # @!attribute tpm # @@ -176,7 +180,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # # @return [Object, String, nil] optional :vertex_credentials, - union: -> { Hanzoai::Models::ModelCreateParams::LlmParams::VertexCredentials }, + union: -> { Hanzoai::ModelCreateParams::LlmParams::VertexCredentials }, nil?: true # @!attribute vertex_location @@ -205,7 +209,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @param aws_region_name [String, nil] # @param aws_secret_access_key [String, nil] # @param budget_duration [String, nil] - # @param configurable_clientside_auth_params [Array, nil] + # @param configurable_clientside_auth_params [Array, nil] # @param custom_llm_provider [String, nil] # @param input_cost_per_second [Float, nil] # @param input_cost_per_token [Float, nil] @@ -234,13 +238,13 @@ module ConfigurableClientsideAuthParam variant String - variant -> { Hanzoai::Models::ConfigurableClientsideParamsCustomAuth } + variant -> { Hanzoai::ConfigurableClientsideParamsCustomAuth } # @!method self.variants - # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] + # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] end - # @see Hanzoai::Models::ModelCreateParams::LlmParams#stream_timeout + # @see Hanzoai::ModelCreateParams::LlmParams#stream_timeout module StreamTimeout extend Hanzoai::Internal::Type::Union @@ -252,7 +256,7 @@ module StreamTimeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::ModelCreateParams::LlmParams#timeout + # @see Hanzoai::ModelCreateParams::LlmParams#timeout module Timeout extend Hanzoai::Internal::Type::Union @@ -264,7 +268,7 @@ module Timeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::ModelCreateParams::LlmParams#vertex_credentials + # @see Hanzoai::ModelCreateParams::LlmParams#vertex_credentials module VertexCredentials extend Hanzoai::Internal::Type::Union diff --git a/lib/hanzoai/models/model_info.rb b/lib/hanzoai/models/model_info.rb index 69195ee3..f6a3220f 100644 --- a/lib/hanzoai/models/model_info.rb +++ b/lib/hanzoai/models/model_info.rb @@ -40,8 +40,8 @@ class ModelInfo < Hanzoai::Internal::Type::BaseModel # @!attribute tier # - # @return [Symbol, Hanzoai::Models::ModelInfo::Tier, nil] - optional :tier, enum: -> { Hanzoai::Models::ModelInfo::Tier }, nil?: true + # @return [Symbol, Hanzoai::ModelInfo::Tier, nil] + optional :tier, enum: -> { Hanzoai::ModelInfo::Tier }, nil?: true # @!attribute updated_at # @@ -61,11 +61,11 @@ class ModelInfo < Hanzoai::Internal::Type::BaseModel # @param db_model [Boolean] # @param team_id [String, nil] # @param team_public_model_name [String, nil] - # @param tier [Symbol, Hanzoai::Models::ModelInfo::Tier, nil] + # @param tier [Symbol, Hanzoai::ModelInfo::Tier, nil] # @param updated_at [Time, nil] # @param updated_by [String, nil] - # @see Hanzoai::Models::ModelInfo#tier + # @see Hanzoai::ModelInfo#tier module Tier extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/org_member.rb b/lib/hanzoai/models/org_member.rb index cace64f9..033c4ad6 100644 --- a/lib/hanzoai/models/org_member.rb +++ b/lib/hanzoai/models/org_member.rb @@ -5,8 +5,8 @@ module Models class OrgMember < Hanzoai::Internal::Type::BaseModel # @!attribute role # - # @return [Symbol, Hanzoai::Models::OrgMember::Role] - required :role, enum: -> { Hanzoai::Models::OrgMember::Role } + # @return [Symbol, Hanzoai::OrgMember::Role] + required :role, enum: -> { Hanzoai::OrgMember::Role } # @!attribute user_email # @@ -19,11 +19,11 @@ class OrgMember < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(role:, user_email: nil, user_id: nil) - # @param role [Symbol, Hanzoai::Models::OrgMember::Role] + # @param role [Symbol, Hanzoai::OrgMember::Role] # @param user_email [String, nil] # @param user_id [String, nil] - # @see Hanzoai::Models::OrgMember#role + # @see Hanzoai::OrgMember#role module Role extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index 4ac9b89c..ef82c598 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -329,8 +329,8 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata # @@ -383,7 +383,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/organization_add_member_params.rb b/lib/hanzoai/models/organization_add_member_params.rb index 7b8a07b0..07aae01f 100644 --- a/lib/hanzoai/models/organization_add_member_params.rb +++ b/lib/hanzoai/models/organization_add_member_params.rb @@ -9,8 +9,8 @@ class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel # @!attribute member # - # @return [Array, Hanzoai::Models::OrgMember] - required :member, union: -> { Hanzoai::Models::OrganizationAddMemberParams::Member } + # @return [Array, Hanzoai::OrgMember] + required :member, union: -> { Hanzoai::OrganizationAddMemberParams::Member } # @!attribute organization_id # @@ -23,7 +23,7 @@ class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel optional :max_budget_in_organization, Float, nil?: true # @!method initialize(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) - # @param member [Array, Hanzoai::Models::OrgMember] + # @param member [Array, Hanzoai::OrgMember] # @param organization_id [String] # @param max_budget_in_organization [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] @@ -31,15 +31,15 @@ class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel module Member extend Hanzoai::Internal::Type::Union - variant -> { Hanzoai::Models::OrganizationAddMemberParams::Member::OrgMemberArray } + variant -> { Hanzoai::OrganizationAddMemberParams::Member::OrgMemberArray } - variant -> { Hanzoai::Models::OrgMember } + variant -> { Hanzoai::OrgMember } # @!method self.variants - # @return [Array(Array, Hanzoai::Models::OrgMember)] + # @return [Array(Array, Hanzoai::OrgMember)] # @type [Hanzoai::Internal::Type::Converter] - OrgMemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::OrgMember }] + OrgMemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::OrgMember }] end end end diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index 42332182..b089df63 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -327,8 +327,8 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata # @@ -381,7 +381,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index cfc79156..d70dba95 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -327,8 +327,8 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata # @@ -381,7 +381,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/organization_update_member_params.rb b/lib/hanzoai/models/organization_update_member_params.rb index ac545ac6..573714fa 100644 --- a/lib/hanzoai/models/organization_update_member_params.rb +++ b/lib/hanzoai/models/organization_update_member_params.rb @@ -30,8 +30,8 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # # Customer Roles: CUSTOMER: External users -> these are customers # - # @return [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] - optional :role, enum: -> { Hanzoai::Models::OrganizationUpdateMemberParams::Role }, nil?: true + # @return [Symbol, Hanzoai::OrganizationUpdateMemberParams::Role, nil] + optional :role, enum: -> { Hanzoai::OrganizationUpdateMemberParams::Role }, nil?: true # @!attribute user_email # @@ -51,7 +51,7 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # # @param max_budget_in_organization [Float, nil] # - # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: ... + # @param role [Symbol, Hanzoai::OrganizationUpdateMemberParams::Role, nil] Admin Roles: # # @param user_email [String, nil] # diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index 9e6de3e6..caabc12b 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -326,8 +326,8 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata # @@ -380,7 +380,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/spend_list_logs_params.rb b/lib/hanzoai/models/spend_list_logs_params.rb index 08599b70..487ca4f7 100644 --- a/lib/hanzoai/models/spend_list_logs_params.rb +++ b/lib/hanzoai/models/spend_list_logs_params.rb @@ -47,7 +47,6 @@ class SpendListLogsParams < Hanzoai::Internal::Type::BaseModel # @param end_date [String, nil] Time till which to view key spend # # @param request_id [String, nil] request_id to get spend logs for specific request_id. If none passed then pass s - # ... # # @param start_date [String, nil] Time from which to start viewing key spend # diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index 679e0a66..929e39f0 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -20,8 +20,8 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # @!attribute callback_type # - # @return [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] - optional :callback_type, enum: -> { Hanzoai::Models::Team::CallbackAddParams::CallbackType }, nil?: true + # @return [Symbol, Hanzoai::Team::CallbackAddParams::CallbackType, nil] + optional :callback_type, enum: -> { Hanzoai::Team::CallbackAddParams::CallbackType }, nil?: true # @!attribute llm_changed_by # The llm-changed-by header enables tracking of actions performed by authorized @@ -38,10 +38,9 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # # @param callback_vars [Hash{Symbol=>String}] # - # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] + # @param callback_type [Symbol, Hanzoai::Team::CallbackAddParams::CallbackType, nil] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index c0d21d2f..1fa19be2 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -9,8 +9,8 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel # @!attribute member # - # @return [Array, Hanzoai::Models::Member] - required :member, union: -> { Hanzoai::Models::TeamAddMemberParams::Member } + # @return [Array, Hanzoai::Member] + required :member, union: -> { Hanzoai::TeamAddMemberParams::Member } # @!attribute team_id # @@ -23,7 +23,7 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel optional :max_budget_in_team, Float, nil?: true # @!method initialize(member:, team_id:, max_budget_in_team: nil, request_options: {}) - # @param member [Array, Hanzoai::Models::Member] + # @param member [Array, Hanzoai::Member] # @param team_id [String] # @param max_budget_in_team [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] @@ -31,15 +31,15 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel module Member extend Hanzoai::Internal::Type::Union - variant -> { Hanzoai::Models::TeamAddMemberParams::Member::MemberArray } + variant -> { Hanzoai::TeamAddMemberParams::Member::MemberArray } - variant -> { Hanzoai::Models::Member } + variant -> { Hanzoai::Member } # @!method self.variants - # @return [Array(Array, Hanzoai::Models::Member)] + # @return [Array(Array, Hanzoai::Member)] # @type [Hanzoai::Internal::Type::Converter] - MemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::Member }] + MemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Member }] end end end diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index fa1d9c42..2787081d 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -68,8 +68,8 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata # @@ -124,7 +124,7 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index ecfd719c..d4dfd014 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -39,8 +39,8 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata # @@ -110,7 +110,7 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # # @param members [Array] # - # @param members_with_roles [Array] + # @param members_with_roles [Array] # # @param metadata [Object, nil] # @@ -131,7 +131,6 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @param tpm_limit [Integer, nil] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index 59b64898..159dfa8b 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -56,8 +56,8 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member] } + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata # @@ -110,7 +110,7 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/team_delete_params.rb b/lib/hanzoai/models/team_delete_params.rb index 9845adeb..e070f96f 100644 --- a/lib/hanzoai/models/team_delete_params.rb +++ b/lib/hanzoai/models/team_delete_params.rb @@ -26,7 +26,6 @@ class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel # @param team_ids [Array] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/team_update_member_params.rb b/lib/hanzoai/models/team_update_member_params.rb index a1a5c207..ad21d5ca 100644 --- a/lib/hanzoai/models/team_update_member_params.rb +++ b/lib/hanzoai/models/team_update_member_params.rb @@ -19,8 +19,8 @@ class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @!attribute role # - # @return [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] - optional :role, enum: -> { Hanzoai::Models::TeamUpdateMemberParams::Role }, nil?: true + # @return [Symbol, Hanzoai::TeamUpdateMemberParams::Role, nil] + optional :role, enum: -> { Hanzoai::TeamUpdateMemberParams::Role }, nil?: true # @!attribute user_email # @@ -35,7 +35,7 @@ class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @!method initialize(team_id:, max_budget_in_team: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) # @param team_id [String] # @param max_budget_in_team [Float, nil] - # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] + # @param role [Symbol, Hanzoai::TeamUpdateMemberParams::Role, nil] # @param user_email [String, nil] # @param user_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index f3f64106..23aa84ca 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -110,7 +110,6 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # @param tpm_limit [Integer, nil] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/user_create_params.rb b/lib/hanzoai/models/user_create_params.rb index 8704f224..a268cf53 100644 --- a/lib/hanzoai/models/user_create_params.rb +++ b/lib/hanzoai/models/user_create_params.rb @@ -141,8 +141,8 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute user_role # - # @return [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] - optional :user_role, enum: -> { Hanzoai::Models::UserCreateParams::UserRole }, nil?: true + # @return [Symbol, Hanzoai::UserCreateParams::UserRole, nil] + optional :user_role, enum: -> { Hanzoai::UserCreateParams::UserRole }, nil?: true # @!method initialize(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) # @param aliases [Object, nil] @@ -171,7 +171,7 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @param user_alias [String, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::UserCreateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module UserRole diff --git a/lib/hanzoai/models/user_delete_params.rb b/lib/hanzoai/models/user_delete_params.rb index 8e4c40af..46cb793c 100644 --- a/lib/hanzoai/models/user_delete_params.rb +++ b/lib/hanzoai/models/user_delete_params.rb @@ -26,7 +26,6 @@ class UserDeleteParams < Hanzoai::Internal::Type::BaseModel # @param user_ids [Array] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/user_update_params.rb b/lib/hanzoai/models/user_update_params.rb index 0dea9465..33579f52 100644 --- a/lib/hanzoai/models/user_update_params.rb +++ b/lib/hanzoai/models/user_update_params.rb @@ -126,8 +126,8 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute user_role # - # @return [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] - optional :user_role, enum: -> { Hanzoai::Models::UserUpdateParams::UserRole }, nil?: true + # @return [Symbol, Hanzoai::UserUpdateParams::UserRole, nil] + optional :user_role, enum: -> { Hanzoai::UserUpdateParams::UserRole }, nil?: true # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, password: nil, permissions: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) # @param aliases [Object, nil] @@ -153,7 +153,7 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @param tpm_limit [Integer, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::UserUpdateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module UserRole diff --git a/lib/hanzoai/models/util_transform_request_params.rb b/lib/hanzoai/models/util_transform_request_params.rb index 5b35b5b3..a6b79e0e 100644 --- a/lib/hanzoai/models/util_transform_request_params.rb +++ b/lib/hanzoai/models/util_transform_request_params.rb @@ -9,8 +9,8 @@ class UtilTransformRequestParams < Hanzoai::Internal::Type::BaseModel # @!attribute call_type # - # @return [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] - required :call_type, enum: -> { Hanzoai::Models::UtilTransformRequestParams::CallType } + # @return [Symbol, Hanzoai::UtilTransformRequestParams::CallType] + required :call_type, enum: -> { Hanzoai::UtilTransformRequestParams::CallType } # @!attribute request_body # @@ -18,7 +18,7 @@ class UtilTransformRequestParams < Hanzoai::Internal::Type::BaseModel required :request_body, Hanzoai::Internal::Type::Unknown # @!method initialize(call_type:, request_body:, request_options: {}) - # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] + # @param call_type [Symbol, Hanzoai::UtilTransformRequestParams::CallType] # @param request_body [Object] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/resources/add.rb b/lib/hanzoai/resources/add.rb index a2872d9b..3546ae1d 100644 --- a/lib/hanzoai/resources/add.rb +++ b/lib/hanzoai/resources/add.rb @@ -14,7 +14,7 @@ class Add # # @see Hanzoai::Models::AddAddAllowedIPParams def add_allowed_ip(params) - parsed, options = Hanzoai::Models::AddAddAllowedIPParams.dump_request(params) + parsed, options = Hanzoai::AddAddAllowedIPParams.dump_request(params) @client.request( method: :post, path: "add/allowed_ip", diff --git a/lib/hanzoai/resources/audio/transcriptions.rb b/lib/hanzoai/resources/audio/transcriptions.rb index eee20163..9d100e1a 100644 --- a/lib/hanzoai/resources/audio/transcriptions.rb +++ b/lib/hanzoai/resources/audio/transcriptions.rb @@ -17,7 +17,7 @@ class Transcriptions # # @see Hanzoai::Models::Audio::TranscriptionCreateParams def create(params) - parsed, options = Hanzoai::Models::Audio::TranscriptionCreateParams.dump_request(params) + parsed, options = Hanzoai::Audio::TranscriptionCreateParams.dump_request(params) @client.request( method: :post, path: "v1/audio/transcriptions", diff --git a/lib/hanzoai/resources/batches.rb b/lib/hanzoai/resources/batches.rb index 195e0b0b..60d338b3 100644 --- a/lib/hanzoai/resources/batches.rb +++ b/lib/hanzoai/resources/batches.rb @@ -29,7 +29,7 @@ class Batches # # @see Hanzoai::Models::BatchCreateParams def create(params = {}) - parsed, options = Hanzoai::Models::BatchCreateParams.dump_request(params) + parsed, options = Hanzoai::BatchCreateParams.dump_request(params) @client.request( method: :post, path: "v1/batches", @@ -61,7 +61,7 @@ def create(params = {}) # # @see Hanzoai::Models::BatchRetrieveParams def retrieve(batch_id, params = {}) - parsed, options = Hanzoai::Models::BatchRetrieveParams.dump_request(params) + parsed, options = Hanzoai::BatchRetrieveParams.dump_request(params) @client.request( method: :get, path: ["v1/batches/%1$s", batch_id], @@ -91,7 +91,7 @@ def retrieve(batch_id, params = {}) # # @see Hanzoai::Models::BatchListParams def list(params = {}) - parsed, options = Hanzoai::Models::BatchListParams.dump_request(params) + parsed, options = Hanzoai::BatchListParams.dump_request(params) @client.request( method: :get, path: "v1/batches", @@ -124,7 +124,7 @@ def list(params = {}) # # @see Hanzoai::Models::BatchCancelWithProviderParams def cancel_with_provider(batch_id, params) - parsed, options = Hanzoai::Models::BatchCancelWithProviderParams.dump_request(params) + parsed, options = Hanzoai::BatchCancelWithProviderParams.dump_request(params) provider = parsed.delete(:provider) do raise ArgumentError.new("missing required path argument #{_1}") @@ -188,7 +188,7 @@ def create_with_provider(provider, params = {}) # # @see Hanzoai::Models::BatchListWithProviderParams def list_with_provider(provider, params = {}) - parsed, options = Hanzoai::Models::BatchListWithProviderParams.dump_request(params) + parsed, options = Hanzoai::BatchListWithProviderParams.dump_request(params) @client.request( method: :get, path: ["%1$s/v1/batches", provider], @@ -220,7 +220,7 @@ def list_with_provider(provider, params = {}) # # @see Hanzoai::Models::BatchRetrieveWithProviderParams def retrieve_with_provider(batch_id, params) - parsed, options = Hanzoai::Models::BatchRetrieveWithProviderParams.dump_request(params) + parsed, options = Hanzoai::BatchRetrieveWithProviderParams.dump_request(params) provider = parsed.delete(:provider) do raise ArgumentError.new("missing required path argument #{_1}") diff --git a/lib/hanzoai/resources/batches/cancel.rb b/lib/hanzoai/resources/batches/cancel.rb index df15c117..f7776e90 100644 --- a/lib/hanzoai/resources/batches/cancel.rb +++ b/lib/hanzoai/resources/batches/cancel.rb @@ -27,7 +27,7 @@ class Cancel # # @see Hanzoai::Models::Batches::CancelCancelParams def cancel(batch_id, params = {}) - parsed, options = Hanzoai::Models::Batches::CancelCancelParams.dump_request(params) + parsed, options = Hanzoai::Batches::CancelCancelParams.dump_request(params) @client.request( method: :post, path: ["batches/%1$s/cancel", batch_id], diff --git a/lib/hanzoai/resources/budget.rb b/lib/hanzoai/resources/budget.rb index fae0c1ad..0c4614df 100644 --- a/lib/hanzoai/resources/budget.rb +++ b/lib/hanzoai/resources/budget.rb @@ -33,8 +33,7 @@ class Budget # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d - # ... + # @param model_max_budget [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # @@ -48,7 +47,7 @@ class Budget # # @see Hanzoai::Models::BudgetCreateParams def create(params = {}) - parsed, options = Hanzoai::Models::BudgetCreateParams.dump_request(params) + parsed, options = Hanzoai::BudgetCreateParams.dump_request(params) @client.request( method: :post, path: "budget/new", @@ -88,8 +87,7 @@ def create(params = {}) # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d - # ... + # @param model_max_budget [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # @@ -103,7 +101,7 @@ def create(params = {}) # # @see Hanzoai::Models::BudgetUpdateParams def update(params = {}) - parsed, options = Hanzoai::Models::BudgetUpdateParams.dump_request(params) + parsed, options = Hanzoai::BudgetUpdateParams.dump_request(params) @client.request( method: :post, path: "budget/update", @@ -146,7 +144,7 @@ def list(params = {}) # # @see Hanzoai::Models::BudgetDeleteParams def delete(params) - parsed, options = Hanzoai::Models::BudgetDeleteParams.dump_request(params) + parsed, options = Hanzoai::BudgetDeleteParams.dump_request(params) @client.request( method: :post, path: "budget/delete", @@ -171,7 +169,7 @@ def delete(params) # # @see Hanzoai::Models::BudgetInfoParams def info(params) - parsed, options = Hanzoai::Models::BudgetInfoParams.dump_request(params) + parsed, options = Hanzoai::BudgetInfoParams.dump_request(params) @client.request( method: :post, path: "budget/info", @@ -199,7 +197,7 @@ def info(params) # # @see Hanzoai::Models::BudgetSettingsParams def settings(params) - parsed, options = Hanzoai::Models::BudgetSettingsParams.dump_request(params) + parsed, options = Hanzoai::BudgetSettingsParams.dump_request(params) @client.request( method: :get, path: "budget/settings", diff --git a/lib/hanzoai/resources/chat/completions.rb b/lib/hanzoai/resources/chat/completions.rb index 8ad7851b..d037bf30 100644 --- a/lib/hanzoai/resources/chat/completions.rb +++ b/lib/hanzoai/resources/chat/completions.rb @@ -31,7 +31,7 @@ class Completions # # @see Hanzoai::Models::Chat::CompletionCreateParams def create(params = {}) - parsed, options = Hanzoai::Models::Chat::CompletionCreateParams.dump_request(params) + parsed, options = Hanzoai::Chat::CompletionCreateParams.dump_request(params) @client.request( method: :post, path: "v1/chat/completions", diff --git a/lib/hanzoai/resources/completions.rb b/lib/hanzoai/resources/completions.rb index e9d4a166..240d577e 100644 --- a/lib/hanzoai/resources/completions.rb +++ b/lib/hanzoai/resources/completions.rb @@ -27,7 +27,7 @@ class Completions # # @see Hanzoai::Models::CompletionCreateParams def create(params = {}) - parsed, options = Hanzoai::Models::CompletionCreateParams.dump_request(params) + parsed, options = Hanzoai::CompletionCreateParams.dump_request(params) @client.request( method: :post, path: "completions", diff --git a/lib/hanzoai/resources/config/pass_through_endpoint.rb b/lib/hanzoai/resources/config/pass_through_endpoint.rb index e366f8eb..fbbbf693 100644 --- a/lib/hanzoai/resources/config/pass_through_endpoint.rb +++ b/lib/hanzoai/resources/config/pass_through_endpoint.rb @@ -12,7 +12,6 @@ class PassThroughEndpoint # @overload create(headers:, path:, target:, request_options: {}) # # @param headers [Object] Key-value pairs of headers to be forwarded with the request. You can set any key - # ... # # @param path [String] The route to be added to the LLM Proxy Server. # @@ -24,7 +23,7 @@ class PassThroughEndpoint # # @see Hanzoai::Models::Config::PassThroughEndpointCreateParams def create(params) - parsed, options = Hanzoai::Models::Config::PassThroughEndpointCreateParams.dump_request(params) + parsed, options = Hanzoai::Config::PassThroughEndpointCreateParams.dump_request(params) @client.request( method: :post, path: "config/pass_through_endpoint", @@ -62,16 +61,16 @@ def update(endpoint_id, params = {}) # @param endpoint_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::Config::PassThroughEndpointResponse] + # @return [Hanzoai::Config::PassThroughEndpointResponse] # # @see Hanzoai::Models::Config::PassThroughEndpointListParams def list(params = {}) - parsed, options = Hanzoai::Models::Config::PassThroughEndpointListParams.dump_request(params) + parsed, options = Hanzoai::Config::PassThroughEndpointListParams.dump_request(params) @client.request( method: :get, path: "config/pass_through_endpoint", query: parsed, - model: Hanzoai::Models::Config::PassThroughEndpointResponse, + model: Hanzoai::Config::PassThroughEndpointResponse, options: options ) end @@ -85,16 +84,16 @@ def list(params = {}) # @param endpoint_id [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::Config::PassThroughEndpointResponse] + # @return [Hanzoai::Config::PassThroughEndpointResponse] # # @see Hanzoai::Models::Config::PassThroughEndpointDeleteParams def delete(params) - parsed, options = Hanzoai::Models::Config::PassThroughEndpointDeleteParams.dump_request(params) + parsed, options = Hanzoai::Config::PassThroughEndpointDeleteParams.dump_request(params) @client.request( method: :delete, path: "config/pass_through_endpoint", query: parsed, - model: Hanzoai::Models::Config::PassThroughEndpointResponse, + model: Hanzoai::Config::PassThroughEndpointResponse, options: options ) end diff --git a/lib/hanzoai/resources/credentials.rb b/lib/hanzoai/resources/credentials.rb index 316ef48b..a5090130 100644 --- a/lib/hanzoai/resources/credentials.rb +++ b/lib/hanzoai/resources/credentials.rb @@ -18,7 +18,7 @@ class Credentials # # @see Hanzoai::Models::CredentialCreateParams def create(params) - parsed, options = Hanzoai::Models::CredentialCreateParams.dump_request(params) + parsed, options = Hanzoai::CredentialCreateParams.dump_request(params) @client.request( method: :post, path: "credentials", diff --git a/lib/hanzoai/resources/customer.rb b/lib/hanzoai/resources/customer.rb index 2d61193e..543b83f8 100644 --- a/lib/hanzoai/resources/customer.rb +++ b/lib/hanzoai/resources/customer.rb @@ -64,7 +64,7 @@ class Customer # # @param alias_ [String, nil] # - # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::CustomerCreateParams::AllowedModelRegion, nil] # # @param blocked [Boolean] # @@ -78,8 +78,7 @@ class Customer # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d - # ... + # @param model_max_budget [Hash{Symbol=>Hanzoai::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # @@ -93,7 +92,7 @@ class Customer # # @see Hanzoai::Models::CustomerCreateParams def create(params) - parsed, options = Hanzoai::Models::CustomerCreateParams.dump_request(params) + parsed, options = Hanzoai::CustomerCreateParams.dump_request(params) @client.request( method: :post, path: "customer/new", @@ -132,7 +131,7 @@ def create(params) # # @param user_id [String] # @param alias_ [String, nil] - # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::CustomerUpdateParams::AllowedModelRegion, nil] # @param blocked [Boolean] # @param budget_id [String, nil] # @param default_model [String, nil] @@ -143,7 +142,7 @@ def create(params) # # @see Hanzoai::Models::CustomerUpdateParams def update(params) - parsed, options = Hanzoai::Models::CustomerUpdateParams.dump_request(params) + parsed, options = Hanzoai::CustomerUpdateParams.dump_request(params) @client.request( method: :post, path: "customer/update", @@ -202,7 +201,7 @@ def list(params = {}) # # @see Hanzoai::Models::CustomerDeleteParams def delete(params) - parsed, options = Hanzoai::Models::CustomerDeleteParams.dump_request(params) + parsed, options = Hanzoai::CustomerDeleteParams.dump_request(params) @client.request( method: :post, path: "customer/delete", @@ -238,7 +237,7 @@ def delete(params) # # @see Hanzoai::Models::CustomerBlockParams def block(params) - parsed, options = Hanzoai::Models::CustomerBlockParams.dump_request(params) + parsed, options = Hanzoai::CustomerBlockParams.dump_request(params) @client.request( method: :post, path: "customer/block", @@ -271,7 +270,7 @@ def block(params) # # @see Hanzoai::Models::CustomerRetrieveInfoParams def retrieve_info(params) - parsed, options = Hanzoai::Models::CustomerRetrieveInfoParams.dump_request(params) + parsed, options = Hanzoai::CustomerRetrieveInfoParams.dump_request(params) @client.request( method: :get, path: "customer/info", @@ -302,7 +301,7 @@ def retrieve_info(params) # # @see Hanzoai::Models::CustomerUnblockParams def unblock(params) - parsed, options = Hanzoai::Models::CustomerUnblockParams.dump_request(params) + parsed, options = Hanzoai::CustomerUnblockParams.dump_request(params) @client.request( method: :post, path: "customer/unblock", diff --git a/lib/hanzoai/resources/delete.rb b/lib/hanzoai/resources/delete.rb index 79830ead..5fdcc179 100644 --- a/lib/hanzoai/resources/delete.rb +++ b/lib/hanzoai/resources/delete.rb @@ -14,7 +14,7 @@ class Delete # # @see Hanzoai::Models::DeleteCreateAllowedIPParams def create_allowed_ip(params) - parsed, options = Hanzoai::Models::DeleteCreateAllowedIPParams.dump_request(params) + parsed, options = Hanzoai::DeleteCreateAllowedIPParams.dump_request(params) @client.request( method: :post, path: "delete/allowed_ip", diff --git a/lib/hanzoai/resources/embeddings.rb b/lib/hanzoai/resources/embeddings.rb index d2c56bc9..024958e0 100644 --- a/lib/hanzoai/resources/embeddings.rb +++ b/lib/hanzoai/resources/embeddings.rb @@ -25,7 +25,7 @@ class Embeddings # # @see Hanzoai::Models::EmbeddingCreateParams def create(params = {}) - parsed, options = Hanzoai::Models::EmbeddingCreateParams.dump_request(params) + parsed, options = Hanzoai::EmbeddingCreateParams.dump_request(params) @client.request( method: :post, path: "embeddings", diff --git a/lib/hanzoai/resources/files.rb b/lib/hanzoai/resources/files.rb index 2d617ddc..e78dd739 100644 --- a/lib/hanzoai/resources/files.rb +++ b/lib/hanzoai/resources/files.rb @@ -31,7 +31,7 @@ class Files # # @see Hanzoai::Models::FileCreateParams def create(provider, params) - parsed, options = Hanzoai::Models::FileCreateParams.dump_request(params) + parsed, options = Hanzoai::FileCreateParams.dump_request(params) @client.request( method: :post, path: ["%1$s/v1/files", provider], @@ -66,7 +66,7 @@ def create(provider, params) # # @see Hanzoai::Models::FileRetrieveParams def retrieve(file_id, params) - parsed, options = Hanzoai::Models::FileRetrieveParams.dump_request(params) + parsed, options = Hanzoai::FileRetrieveParams.dump_request(params) provider = parsed.delete(:provider) do raise ArgumentError.new("missing required path argument #{_1}") @@ -102,7 +102,7 @@ def retrieve(file_id, params) # # @see Hanzoai::Models::FileListParams def list(provider, params = {}) - parsed, options = Hanzoai::Models::FileListParams.dump_request(params) + parsed, options = Hanzoai::FileListParams.dump_request(params) @client.request( method: :get, path: ["%1$s/v1/files", provider], @@ -135,7 +135,7 @@ def list(provider, params = {}) # # @see Hanzoai::Models::FileDeleteParams def delete(file_id, params) - parsed, options = Hanzoai::Models::FileDeleteParams.dump_request(params) + parsed, options = Hanzoai::FileDeleteParams.dump_request(params) provider = parsed.delete(:provider) do raise ArgumentError.new("missing required path argument #{_1}") diff --git a/lib/hanzoai/resources/files/content.rb b/lib/hanzoai/resources/files/content.rb index eef10874..2532afc3 100644 --- a/lib/hanzoai/resources/files/content.rb +++ b/lib/hanzoai/resources/files/content.rb @@ -28,7 +28,7 @@ class Content # # @see Hanzoai::Models::Files::ContentRetrieveParams def retrieve(file_id, params) - parsed, options = Hanzoai::Models::Files::ContentRetrieveParams.dump_request(params) + parsed, options = Hanzoai::Files::ContentRetrieveParams.dump_request(params) provider = parsed.delete(:provider) do raise ArgumentError.new("missing required path argument #{_1}") diff --git a/lib/hanzoai/resources/fine_tuning/jobs.rb b/lib/hanzoai/resources/fine_tuning/jobs.rb index 41308d4c..a16c8d3b 100644 --- a/lib/hanzoai/resources/fine_tuning/jobs.rb +++ b/lib/hanzoai/resources/fine_tuning/jobs.rb @@ -28,10 +28,10 @@ class Jobs # # @overload create(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) # - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider] # @param model [String] # @param training_file [String] - # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] + # @param hyperparameters [Hanzoai::FineTuning::JobCreateParams::Hyperparameters, nil] # @param integrations [Array, nil] # @param seed [Integer, nil] # @param suffix [String, nil] @@ -42,7 +42,7 @@ class Jobs # # @see Hanzoai::Models::FineTuning::JobCreateParams def create(params) - parsed, options = Hanzoai::Models::FineTuning::JobCreateParams.dump_request(params) + parsed, options = Hanzoai::FineTuning::JobCreateParams.dump_request(params) @client.request( method: :post, path: "v1/fine_tuning/jobs", @@ -63,14 +63,14 @@ def create(params) # @overload retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}) # # @param fine_tuning_job_id [String] - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::FineTuning::JobRetrieveParams def retrieve(fine_tuning_job_id, params) - parsed, options = Hanzoai::Models::FineTuning::JobRetrieveParams.dump_request(params) + parsed, options = Hanzoai::FineTuning::JobRetrieveParams.dump_request(params) @client.request( method: :get, path: ["v1/fine_tuning/jobs/%1$s", fine_tuning_job_id], @@ -91,7 +91,7 @@ def retrieve(fine_tuning_job_id, params) # # @overload list(custom_llm_provider:, after: nil, limit: nil, request_options: {}) # - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobListParams::CustomLlmProvider] # @param after [String, nil] # @param limit [Integer, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -100,7 +100,7 @@ def retrieve(fine_tuning_job_id, params) # # @see Hanzoai::Models::FineTuning::JobListParams def list(params) - parsed, options = Hanzoai::Models::FineTuning::JobListParams.dump_request(params) + parsed, options = Hanzoai::FineTuning::JobListParams.dump_request(params) @client.request( method: :get, path: "v1/fine_tuning/jobs", diff --git a/lib/hanzoai/resources/global/spend.rb b/lib/hanzoai/resources/global/spend.rb index 7d366203..db23d42d 100644 --- a/lib/hanzoai/resources/global/spend.rb +++ b/lib/hanzoai/resources/global/spend.rb @@ -32,7 +32,7 @@ class Spend # # @see Hanzoai::Models::Global::SpendListTagsParams def list_tags(params = {}) - parsed, options = Hanzoai::Models::Global::SpendListTagsParams.dump_request(params) + parsed, options = Hanzoai::Global::SpendListTagsParams.dump_request(params) @client.request( method: :get, path: "global/spend/tags", @@ -82,11 +82,10 @@ def reset(params = {}) # @param api_key [String, nil] View spend for a specific api_key. Example api_key='sk-1234 # # @param customer_id [String, nil] View spend for a specific customer_id. Example customer_id='1234. Can be used in - # ... # # @param end_date [String, nil] Time till which to view spend # - # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key + # @param group_by [Symbol, Hanzoai::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key # # @param internal_user_id [String, nil] View spend for a specific internal_user_id. Example internal_user_id='1234 # @@ -100,7 +99,7 @@ def reset(params = {}) # # @see Hanzoai::Models::Global::SpendRetrieveReportParams def retrieve_report(params = {}) - parsed, options = Hanzoai::Models::Global::SpendRetrieveReportParams.dump_request(params) + parsed, options = Hanzoai::Global::SpendRetrieveReportParams.dump_request(params) @client.request( method: :get, path: "global/spend/report", diff --git a/lib/hanzoai/resources/health.rb b/lib/hanzoai/resources/health.rb index 910378dc..0f402e4f 100644 --- a/lib/hanzoai/resources/health.rb +++ b/lib/hanzoai/resources/health.rb @@ -29,7 +29,7 @@ class Health # # @see Hanzoai::Models::HealthCheckAllParams def check_all(params = {}) - parsed, options = Hanzoai::Models::HealthCheckAllParams.dump_request(params) + parsed, options = Hanzoai::HealthCheckAllParams.dump_request(params) @client.request( method: :get, path: "health", @@ -103,7 +103,7 @@ def check_readiness(params = {}) # # @overload check_services(service:, request_options: {}) # - # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] Specify the service being hit. + # @param service [Symbol, String, Hanzoai::HealthCheckServicesParams::Service] Specify the service being hit. # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -111,7 +111,7 @@ def check_readiness(params = {}) # # @see Hanzoai::Models::HealthCheckServicesParams def check_services(params) - parsed, options = Hanzoai::Models::HealthCheckServicesParams.dump_request(params) + parsed, options = Hanzoai::HealthCheckServicesParams.dump_request(params) @client.request( method: :get, path: "health/services", diff --git a/lib/hanzoai/resources/key.rb b/lib/hanzoai/resources/key.rb index f7944c35..53d3b383 100644 --- a/lib/hanzoai/resources/key.rb +++ b/lib/hanzoai/resources/key.rb @@ -124,7 +124,6 @@ class Key # @param user_id [String, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -132,7 +131,7 @@ class Key # # @see Hanzoai::Models::KeyUpdateParams def update(params) - parsed, options = Hanzoai::Models::KeyUpdateParams.dump_request(params) + parsed, options = Hanzoai::KeyUpdateParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, @@ -173,7 +172,7 @@ def update(params) # # @see Hanzoai::Models::KeyListParams def list(params = {}) - parsed, options = Hanzoai::Models::KeyListParams.dump_request(params) + parsed, options = Hanzoai::KeyListParams.dump_request(params) @client.request( method: :get, path: "key/list", @@ -219,7 +218,6 @@ def list(params = {}) # @param keys [Array, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -227,7 +225,7 @@ def list(params = {}) # # @see Hanzoai::Models::KeyDeleteParams def delete(params = {}) - parsed, options = Hanzoai::Models::KeyDeleteParams.dump_request(params) + parsed, options = Hanzoai::KeyDeleteParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, @@ -264,7 +262,6 @@ def delete(params = {}) # @param key [String] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -272,7 +269,7 @@ def delete(params = {}) # # @see Hanzoai::Models::KeyBlockParams def block(params) - parsed, options = Hanzoai::Models::KeyBlockParams.dump_request(params) + parsed, options = Hanzoai::KeyBlockParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, @@ -484,22 +481,21 @@ def check_health(params = {}) # @param user_id [String, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::GenerateKeyResponse] + # @return [Hanzoai::GenerateKeyResponse] # # @see Hanzoai::Models::KeyGenerateParams def generate(params = {}) - parsed, options = Hanzoai::Models::KeyGenerateParams.dump_request(params) + parsed, options = Hanzoai::KeyGenerateParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: "key/generate", headers: parsed.slice(*header_params.keys).transform_keys(header_params), body: parsed.except(*header_params.keys), - model: Hanzoai::Models::GenerateKeyResponse, + model: Hanzoai::GenerateKeyResponse, options: options ) end @@ -619,22 +615,21 @@ def generate(params = {}) # @param user_id [String, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::GenerateKeyResponse, nil] + # @return [Hanzoai::GenerateKeyResponse, nil] # # @see Hanzoai::Models::KeyRegenerateByKeyParams def regenerate_by_key(path_key, params = {}) - parsed, options = Hanzoai::Models::KeyRegenerateByKeyParams.dump_request(params) + parsed, options = Hanzoai::KeyRegenerateByKeyParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, path: ["key/%1$s/regenerate", path_key], headers: parsed.slice(*header_params.keys).transform_keys(header_params), body: parsed.except(*header_params.keys), - model: Hanzoai::Models::GenerateKeyResponse, + model: Hanzoai::GenerateKeyResponse, options: options ) end @@ -667,7 +662,7 @@ def regenerate_by_key(path_key, params = {}) # # @see Hanzoai::Models::KeyRetrieveInfoParams def retrieve_info(params = {}) - parsed, options = Hanzoai::Models::KeyRetrieveInfoParams.dump_request(params) + parsed, options = Hanzoai::KeyRetrieveInfoParams.dump_request(params) @client.request( method: :get, path: "key/info", @@ -702,7 +697,6 @@ def retrieve_info(params = {}) # @param key [String] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -710,7 +704,7 @@ def retrieve_info(params = {}) # # @see Hanzoai::Models::KeyUnblockParams def unblock(params) - parsed, options = Hanzoai::Models::KeyUnblockParams.dump_request(params) + parsed, options = Hanzoai::KeyUnblockParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, diff --git a/lib/hanzoai/resources/model.rb b/lib/hanzoai/resources/model.rb index eb8f5435..1f0071d6 100644 --- a/lib/hanzoai/resources/model.rb +++ b/lib/hanzoai/resources/model.rb @@ -13,9 +13,9 @@ class Model # # @overload create(llm_params:, model_info:, model_name:, request_options: {}) # - # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # @param llm_params [Hanzoai::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions # - # @param model_info [Hanzoai::Models::ModelInfo] + # @param model_info [Hanzoai::ModelInfo] # # @param model_name [String] # @@ -25,7 +25,7 @@ class Model # # @see Hanzoai::Models::ModelCreateParams def create(params) - parsed, options = Hanzoai::Models::ModelCreateParams.dump_request(params) + parsed, options = Hanzoai::ModelCreateParams.dump_request(params) @client.request( method: :post, path: "model/new", @@ -46,7 +46,7 @@ def create(params) # # @see Hanzoai::Models::ModelDeleteParams def delete(params) - parsed, options = Hanzoai::Models::ModelDeleteParams.dump_request(params) + parsed, options = Hanzoai::ModelDeleteParams.dump_request(params) @client.request( method: :post, path: "model/delete", diff --git a/lib/hanzoai/resources/model/info.rb b/lib/hanzoai/resources/model/info.rb index 643b2448..2cd18e99 100644 --- a/lib/hanzoai/resources/model/info.rb +++ b/lib/hanzoai/resources/model/info.rb @@ -44,7 +44,7 @@ class Info # # @see Hanzoai::Models::Model::InfoListParams def list(params = {}) - parsed, options = Hanzoai::Models::Model::InfoListParams.dump_request(params) + parsed, options = Hanzoai::Model::InfoListParams.dump_request(params) @client.request( method: :get, path: "model/info", diff --git a/lib/hanzoai/resources/model/update.rb b/lib/hanzoai/resources/model/update.rb index 342d815b..0a6b30b4 100644 --- a/lib/hanzoai/resources/model/update.rb +++ b/lib/hanzoai/resources/model/update.rb @@ -8,8 +8,8 @@ class Update # # @overload full(llm_params: nil, model_info: nil, model_name: nil, request_options: {}) # - # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] - # @param model_info [Hanzoai::Models::ModelInfo, nil] + # @param llm_params [Hanzoai::Model::UpdateDeployment::LlmParams, nil] + # @param model_info [Hanzoai::ModelInfo, nil] # @param model_name [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -17,7 +17,7 @@ class Update # # @see Hanzoai::Models::Model::UpdateFullParams def full(params = {}) - parsed, options = Hanzoai::Models::Model::UpdateFullParams.dump_request(params) + parsed, options = Hanzoai::Model::UpdateFullParams.dump_request(params) @client.request( method: :post, path: "model/update", @@ -43,8 +43,8 @@ def full(params = {}) # @overload partial(model_id, llm_params: nil, model_info: nil, model_name: nil, request_options: {}) # # @param model_id [String] - # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] - # @param model_info [Hanzoai::Models::ModelInfo, nil] + # @param llm_params [Hanzoai::Model::UpdateDeployment::LlmParams, nil] + # @param model_info [Hanzoai::ModelInfo, nil] # @param model_name [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -52,7 +52,7 @@ def full(params = {}) # # @see Hanzoai::Models::Model::UpdatePartialParams def partial(model_id, params = {}) - parsed, options = Hanzoai::Models::Model::UpdatePartialParams.dump_request(params) + parsed, options = Hanzoai::Model::UpdatePartialParams.dump_request(params) @client.request( method: :patch, path: ["model/%1$s/update", model_id], diff --git a/lib/hanzoai/resources/model_group.rb b/lib/hanzoai/resources/model_group.rb index 2b68996d..2a32d570 100644 --- a/lib/hanzoai/resources/model_group.rb +++ b/lib/hanzoai/resources/model_group.rb @@ -155,7 +155,7 @@ class ModelGroup # # @see Hanzoai::Models::ModelGroupRetrieveInfoParams def retrieve_info(params = {}) - parsed, options = Hanzoai::Models::ModelGroupRetrieveInfoParams.dump_request(params) + parsed, options = Hanzoai::ModelGroupRetrieveInfoParams.dump_request(params) @client.request( method: :get, path: "model_group/info", diff --git a/lib/hanzoai/resources/models.rb b/lib/hanzoai/resources/models.rb index e6b56d29..16d8d01b 100644 --- a/lib/hanzoai/resources/models.rb +++ b/lib/hanzoai/resources/models.rb @@ -18,7 +18,7 @@ class Models # # @see Hanzoai::Models::ModelListParams def list(params = {}) - parsed, options = Hanzoai::Models::ModelListParams.dump_request(params) + parsed, options = Hanzoai::ModelListParams.dump_request(params) @client.request( method: :get, path: "v1/models", diff --git a/lib/hanzoai/resources/organization.rb b/lib/hanzoai/resources/organization.rb index 5d8c632f..1b277a13 100644 --- a/lib/hanzoai/resources/organization.rb +++ b/lib/hanzoai/resources/organization.rb @@ -91,7 +91,7 @@ class Organization # # @see Hanzoai::Models::OrganizationCreateParams def create(params) - parsed, options = Hanzoai::Models::OrganizationCreateParams.dump_request(params) + parsed, options = Hanzoai::OrganizationCreateParams.dump_request(params) @client.request( method: :post, path: "organization/new", @@ -118,7 +118,7 @@ def create(params) # # @see Hanzoai::Models::OrganizationUpdateParams def update(params = {}) - parsed, options = Hanzoai::Models::OrganizationUpdateParams.dump_request(params) + parsed, options = Hanzoai::OrganizationUpdateParams.dump_request(params) @client.request( method: :patch, path: "organization/update", @@ -163,7 +163,7 @@ def list(params = {}) # # @see Hanzoai::Models::OrganizationDeleteParams def delete(params) - parsed, options = Hanzoai::Models::OrganizationDeleteParams.dump_request(params) + parsed, options = Hanzoai::OrganizationDeleteParams.dump_request(params) @client.request( method: :delete, path: "organization/delete", @@ -213,7 +213,7 @@ def delete(params) # # @overload add_member(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) # - # @param member [Array, Hanzoai::Models::OrgMember] + # @param member [Array, Hanzoai::OrgMember] # @param organization_id [String] # @param max_budget_in_organization [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -222,7 +222,7 @@ def delete(params) # # @see Hanzoai::Models::OrganizationAddMemberParams def add_member(params) - parsed, options = Hanzoai::Models::OrganizationAddMemberParams.dump_request(params) + parsed, options = Hanzoai::OrganizationAddMemberParams.dump_request(params) @client.request( method: :post, path: "organization/member_add", @@ -245,7 +245,7 @@ def add_member(params) # # @see Hanzoai::Models::OrganizationDeleteMemberParams def delete_member(params) - parsed, options = Hanzoai::Models::OrganizationDeleteMemberParams.dump_request(params) + parsed, options = Hanzoai::OrganizationDeleteMemberParams.dump_request(params) @client.request( method: :delete, path: "organization/member_delete", @@ -266,7 +266,7 @@ def delete_member(params) # # @param max_budget_in_organization [Float, nil] # - # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: ... + # @param role [Symbol, Hanzoai::OrganizationUpdateMemberParams::Role, nil] Admin Roles: # # @param user_email [String, nil] # @@ -278,7 +278,7 @@ def delete_member(params) # # @see Hanzoai::Models::OrganizationUpdateMemberParams def update_member(params) - parsed, options = Hanzoai::Models::OrganizationUpdateMemberParams.dump_request(params) + parsed, options = Hanzoai::OrganizationUpdateMemberParams.dump_request(params) @client.request( method: :patch, path: "organization/member_update", diff --git a/lib/hanzoai/resources/organization/info.rb b/lib/hanzoai/resources/organization/info.rb index a90fadb7..2bbad54c 100644 --- a/lib/hanzoai/resources/organization/info.rb +++ b/lib/hanzoai/resources/organization/info.rb @@ -15,7 +15,7 @@ class Info # # @see Hanzoai::Models::Organization::InfoRetrieveParams def retrieve(params) - parsed, options = Hanzoai::Models::Organization::InfoRetrieveParams.dump_request(params) + parsed, options = Hanzoai::Organization::InfoRetrieveParams.dump_request(params) @client.request( method: :get, path: "organization/info", @@ -36,7 +36,7 @@ def retrieve(params) # # @see Hanzoai::Models::Organization::InfoDeprecatedParams def deprecated(params) - parsed, options = Hanzoai::Models::Organization::InfoDeprecatedParams.dump_request(params) + parsed, options = Hanzoai::Organization::InfoDeprecatedParams.dump_request(params) @client.request( method: :post, path: "organization/info", diff --git a/lib/hanzoai/resources/spend.rb b/lib/hanzoai/resources/spend.rb index 70b1bff0..31e992c1 100644 --- a/lib/hanzoai/resources/spend.rb +++ b/lib/hanzoai/resources/spend.rb @@ -62,7 +62,7 @@ class Spend # # @see Hanzoai::Models::SpendCalculateSpendParams def calculate_spend(params = {}) - parsed, options = Hanzoai::Models::SpendCalculateSpendParams.dump_request(params) + parsed, options = Hanzoai::SpendCalculateSpendParams.dump_request(params) @client.request( method: :post, path: "spend/calculate", @@ -109,7 +109,6 @@ def calculate_spend(params = {}) # @param end_date [String, nil] Time till which to view key spend # # @param request_id [String, nil] request_id to get spend logs for specific request_id. If none passed then pass s - # ... # # @param start_date [String, nil] Time from which to start viewing key spend # @@ -121,7 +120,7 @@ def calculate_spend(params = {}) # # @see Hanzoai::Models::SpendListLogsParams def list_logs(params = {}) - parsed, options = Hanzoai::Models::SpendListLogsParams.dump_request(params) + parsed, options = Hanzoai::SpendListLogsParams.dump_request(params) @client.request( method: :get, path: "spend/logs", @@ -157,7 +156,7 @@ def list_logs(params = {}) # # @see Hanzoai::Models::SpendListTagsParams def list_tags(params = {}) - parsed, options = Hanzoai::Models::SpendListTagsParams.dump_request(params) + parsed, options = Hanzoai::SpendListTagsParams.dump_request(params) @client.request( method: :get, path: "spend/tags", diff --git a/lib/hanzoai/resources/team.rb b/lib/hanzoai/resources/team.rb index 36be7c2b..de6c35eb 100644 --- a/lib/hanzoai/resources/team.rb +++ b/lib/hanzoai/resources/team.rb @@ -93,7 +93,7 @@ class Team # # @param members [Array] Body param: # - # @param members_with_roles [Array] Body param: + # @param members_with_roles [Array] Body param: # # @param metadata [Object, nil] Body param: # @@ -114,7 +114,6 @@ class Team # @param tpm_limit [Integer, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -122,7 +121,7 @@ class Team # # @see Hanzoai::Models::TeamCreateParams def create(params = {}) - parsed, options = Hanzoai::Models::TeamCreateParams.dump_request(params) + parsed, options = Hanzoai::TeamCreateParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, @@ -218,7 +217,6 @@ def create(params = {}) # @param tpm_limit [Integer, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -226,7 +224,7 @@ def create(params = {}) # # @see Hanzoai::Models::TeamUpdateParams def update(params) - parsed, options = Hanzoai::Models::TeamUpdateParams.dump_request(params) + parsed, options = Hanzoai::TeamUpdateParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, @@ -262,7 +260,7 @@ def update(params) # # @see Hanzoai::Models::TeamListParams def list(params = {}) - parsed, options = Hanzoai::Models::TeamListParams.dump_request(params) + parsed, options = Hanzoai::TeamListParams.dump_request(params) @client.request( method: :get, path: "team/list", @@ -293,7 +291,6 @@ def list(params = {}) # @param team_ids [Array] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -301,7 +298,7 @@ def list(params = {}) # # @see Hanzoai::Models::TeamDeleteParams def delete(params) - parsed, options = Hanzoai::Models::TeamDeleteParams.dump_request(params) + parsed, options = Hanzoai::TeamDeleteParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, @@ -329,7 +326,7 @@ def delete(params) # # @overload add_member(member:, team_id:, max_budget_in_team: nil, request_options: {}) # - # @param member [Array, Hanzoai::Models::Member] + # @param member [Array, Hanzoai::Member] # @param team_id [String] # @param max_budget_in_team [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -338,7 +335,7 @@ def delete(params) # # @see Hanzoai::Models::TeamAddMemberParams def add_member(params) - parsed, options = Hanzoai::Models::TeamAddMemberParams.dump_request(params) + parsed, options = Hanzoai::TeamAddMemberParams.dump_request(params) @client.request( method: :post, path: "team/member_add", @@ -375,7 +372,7 @@ def add_member(params) # # @see Hanzoai::Models::TeamBlockParams def block(params) - parsed, options = Hanzoai::Models::TeamBlockParams.dump_request(params) + parsed, options = Hanzoai::TeamBlockParams.dump_request(params) @client.request( method: :post, path: "team/block", @@ -425,7 +422,7 @@ def disable_logging(team_id, params = {}) # # @see Hanzoai::Models::TeamListAvailableParams def list_available(params = {}) - parsed, options = Hanzoai::Models::TeamListAvailableParams.dump_request(params) + parsed, options = Hanzoai::TeamListAvailableParams.dump_request(params) @client.request( method: :get, path: "team/available", @@ -462,7 +459,7 @@ def list_available(params = {}) # # @see Hanzoai::Models::TeamRemoveMemberParams def remove_member(params) - parsed, options = Hanzoai::Models::TeamRemoveMemberParams.dump_request(params) + parsed, options = Hanzoai::TeamRemoveMemberParams.dump_request(params) @client.request( method: :post, path: "team/member_delete", @@ -492,7 +489,7 @@ def remove_member(params) # # @see Hanzoai::Models::TeamRetrieveInfoParams def retrieve_info(params = {}) - parsed, options = Hanzoai::Models::TeamRetrieveInfoParams.dump_request(params) + parsed, options = Hanzoai::TeamRetrieveInfoParams.dump_request(params) @client.request( method: :get, path: "team/info", @@ -525,7 +522,7 @@ def retrieve_info(params = {}) # # @see Hanzoai::Models::TeamUnblockParams def unblock(params) - parsed, options = Hanzoai::Models::TeamUnblockParams.dump_request(params) + parsed, options = Hanzoai::TeamUnblockParams.dump_request(params) @client.request( method: :post, path: "team/unblock", @@ -543,7 +540,7 @@ def unblock(params) # # @param team_id [String] # @param max_budget_in_team [Float, nil] - # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] + # @param role [Symbol, Hanzoai::TeamUpdateMemberParams::Role, nil] # @param user_email [String, nil] # @param user_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -552,7 +549,7 @@ def unblock(params) # # @see Hanzoai::Models::TeamUpdateMemberParams def update_member(params) - parsed, options = Hanzoai::Models::TeamUpdateMemberParams.dump_request(params) + parsed, options = Hanzoai::TeamUpdateMemberParams.dump_request(params) @client.request( method: :post, path: "team/member_update", diff --git a/lib/hanzoai/resources/team/callback.rb b/lib/hanzoai/resources/team/callback.rb index 1aa723d3..1a9bbf19 100644 --- a/lib/hanzoai/resources/team/callback.rb +++ b/lib/hanzoai/resources/team/callback.rb @@ -93,10 +93,9 @@ def retrieve(team_id, params = {}) # # @param callback_vars [Hash{Symbol=>String}] Body param: # - # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] Body param: + # @param callback_type [Symbol, Hanzoai::Team::CallbackAddParams::CallbackType, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -104,7 +103,7 @@ def retrieve(team_id, params = {}) # # @see Hanzoai::Models::Team::CallbackAddParams def add(team_id, params) - parsed, options = Hanzoai::Models::Team::CallbackAddParams.dump_request(params) + parsed, options = Hanzoai::Team::CallbackAddParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, diff --git a/lib/hanzoai/resources/team/model.rb b/lib/hanzoai/resources/team/model.rb index 0fc977f6..0ddb0ac0 100644 --- a/lib/hanzoai/resources/team/model.rb +++ b/lib/hanzoai/resources/team/model.rb @@ -31,7 +31,7 @@ class Model # # @see Hanzoai::Models::Team::ModelAddParams def add(params) - parsed, options = Hanzoai::Models::Team::ModelAddParams.dump_request(params) + parsed, options = Hanzoai::Team::ModelAddParams.dump_request(params) @client.request( method: :post, path: "team/model/add", @@ -68,7 +68,7 @@ def add(params) # # @see Hanzoai::Models::Team::ModelRemoveParams def remove(params) - parsed, options = Hanzoai::Models::Team::ModelRemoveParams.dump_request(params) + parsed, options = Hanzoai::Team::ModelRemoveParams.dump_request(params) @client.request( method: :post, path: "team/model/delete", diff --git a/lib/hanzoai/resources/user.rb b/lib/hanzoai/resources/user.rb index 169480df..f95b83f8 100644 --- a/lib/hanzoai/resources/user.rb +++ b/lib/hanzoai/resources/user.rb @@ -114,14 +114,14 @@ class User # @param user_alias [String, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::UserCreateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::UserCreateResponse] # # @see Hanzoai::Models::UserCreateParams def create(params = {}) - parsed, options = Hanzoai::Models::UserCreateParams.dump_request(params) + parsed, options = Hanzoai::UserCreateParams.dump_request(params) @client.request( method: :post, path: "user/new", @@ -213,14 +213,14 @@ def create(params = {}) # @param tpm_limit [Integer, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::UserUpdateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::UserUpdateParams def update(params = {}) - parsed, options = Hanzoai::Models::UserUpdateParams.dump_request(params) + parsed, options = Hanzoai::UserUpdateParams.dump_request(params) @client.request( method: :post, path: "user/update", @@ -264,7 +264,7 @@ def update(params = {}) # # @see Hanzoai::Models::UserListParams def list(params = {}) - parsed, options = Hanzoai::Models::UserListParams.dump_request(params) + parsed, options = Hanzoai::UserListParams.dump_request(params) @client.request( method: :get, path: "user/get_users", @@ -297,7 +297,6 @@ def list(params = {}) # @param user_ids [Array] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by - # ... # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -305,7 +304,7 @@ def list(params = {}) # # @see Hanzoai::Models::UserDeleteParams def delete(params) - parsed, options = Hanzoai::Models::UserDeleteParams.dump_request(params) + parsed, options = Hanzoai::UserDeleteParams.dump_request(params) header_params = {llm_changed_by: "llm-changed-by"} @client.request( method: :post, @@ -337,7 +336,7 @@ def delete(params) # # @see Hanzoai::Models::UserRetrieveInfoParams def retrieve_info(params = {}) - parsed, options = Hanzoai::Models::UserRetrieveInfoParams.dump_request(params) + parsed, options = Hanzoai::UserRetrieveInfoParams.dump_request(params) @client.request( method: :get, path: "user/info", diff --git a/lib/hanzoai/resources/utils.rb b/lib/hanzoai/resources/utils.rb index 06f59cca..d3db4ed4 100644 --- a/lib/hanzoai/resources/utils.rb +++ b/lib/hanzoai/resources/utils.rb @@ -22,7 +22,7 @@ class Utils # # @see Hanzoai::Models::UtilGetSupportedOpenAIParamsParams def get_supported_openai_params(params) - parsed, options = Hanzoai::Models::UtilGetSupportedOpenAIParamsParams.dump_request(params) + parsed, options = Hanzoai::UtilGetSupportedOpenAIParamsParams.dump_request(params) @client.request( method: :get, path: "utils/supported_openai_params", @@ -45,7 +45,7 @@ def get_supported_openai_params(params) # # @see Hanzoai::Models::UtilTokenCounterParams def token_counter(params) - parsed, options = Hanzoai::Models::UtilTokenCounterParams.dump_request(params) + parsed, options = Hanzoai::UtilTokenCounterParams.dump_request(params) @client.request( method: :post, path: "utils/token_counter", @@ -59,7 +59,7 @@ def token_counter(params) # # @overload transform_request(call_type:, request_body:, request_options: {}) # - # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] + # @param call_type [Symbol, Hanzoai::UtilTransformRequestParams::CallType] # @param request_body [Object] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -67,7 +67,7 @@ def token_counter(params) # # @see Hanzoai::Models::UtilTransformRequestParams def transform_request(params) - parsed, options = Hanzoai::Models::UtilTransformRequestParams.dump_request(params) + parsed, options = Hanzoai::UtilTransformRequestParams.dump_request(params) @client.request( method: :post, path: "utils/transform_request", diff --git a/rbi/hanzoai/client.rbi b/rbi/hanzoai/client.rbi index b4bb18c8..d02b76fb 100644 --- a/rbi/hanzoai/client.rbi +++ b/rbi/hanzoai/client.rbi @@ -12,7 +12,10 @@ module Hanzoai ENVIRONMENTS = T.let( - {production: "https://api.hanzo.ai", sandbox: "https://api.sandbox.hanzo.ai"}, + { + production: "https://api.hanzo.ai", + sandbox: "https://api.sandbox.hanzo.ai" + }, T::Hash[Symbol, String] ) @@ -165,12 +168,18 @@ module Hanzoai attr_reader :budget # Home - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def get_home(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def get_home(request_options: {}) + end # @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 @@ -182,8 +191,7 @@ module Hanzoai timeout: Float, initial_retry_delay: Float, max_retry_delay: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The default name of the subscription key header of Azure Defaults to @@ -204,6 +212,7 @@ module Hanzoai timeout: Hanzoai::Client::DEFAULT_TIMEOUT_IN_SECONDS, initial_retry_delay: Hanzoai::Client::DEFAULT_INITIAL_RETRY_DELAY, max_retry_delay: Hanzoai::Client::DEFAULT_MAX_RETRY_DELAY - ); end + ) + end end end diff --git a/rbi/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi index 0049c9c0..23d28fb0 100644 --- a/rbi/hanzoai/errors.rbi +++ b/rbi/hanzoai/errors.rbi @@ -29,10 +29,17 @@ module Hanzoai 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 < Hanzoai::Errors::APIError @@ -51,10 +58,16 @@ module Hanzoai 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 @@ -68,10 +81,16 @@ module Hanzoai 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 @@ -85,10 +104,10 @@ module Hanzoai 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 @@ -102,10 +121,10 @@ module Hanzoai 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 < Hanzoai::Errors::APIStatusError @@ -137,7 +156,7 @@ module Hanzoai end class InternalServerError < Hanzoai::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/hanzoai/file_part.rbi b/rbi/hanzoai/file_part.rbi index 247ea5e3..80286d1a 100644 --- a/rbi/hanzoai/file_part.rbi +++ b/rbi/hanzoai/file_part.rbi @@ -13,22 +13,25 @@ module Hanzoai # @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/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi index fde3ea67..1b7d22a2 100644 --- a/rbi/hanzoai/internal/transport/base_client.rbi +++ b/rbi/hanzoai/internal/transport/base_client.rbi @@ -12,30 +12,44 @@ module Hanzoai { 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[Hanzoai::Internal::Type::BasePage[Hanzoai::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[ + Hanzoai::Internal::Type::BasePage[ + Hanzoai::Internal::Type::BaseModel + ] + ] + ), stream: T.nilable(T::Class[T.anything]), model: T.nilable(Hanzoai::Internal::Type::Converter::Input), - options: T.nilable(Hanzoai::RequestOpts) + options: T.nilable(Hanzoai::RequestOptions::OrHash) } end @@ -58,41 +72,48 @@ module Hanzoai class << self # @api private - sig { params(req: Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape).void } - def validate!(req); end + sig do + params( + req: + Hanzoai::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: Hanzoai::Internal::Transport::BaseClient::RequestInputShape, + request: + Hanzoai::Internal::Transport::BaseClient::RequestInputShape, status: Integer, response_headers: T.any(T::Hash[String, String], Net::HTTPHeader) + ).returns( + Hanzoai::Internal::Transport::BaseClient::RequestInputShape ) - .returns(Hanzoai::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, Hanzoai::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 @@ -107,11 +128,19 @@ module Hanzoai 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:, @@ -121,41 +150,61 @@ module Hanzoai 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: Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape, + req: + Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape, opts: Hanzoai::Internal::AnyHash ) - .returns(Hanzoai::Internal::Transport::BaseClient::RequestInputShape) + .returns( + Hanzoai::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 params( - request: Hanzoai::Internal::Transport::BaseClient::RequestInputShape, + request: + Hanzoai::Internal::Transport::BaseClient::RequestInputShape, 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. @@ -165,32 +214,45 @@ module Hanzoai 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[Hanzoai::Internal::Type::BasePage[Hanzoai::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[ + Hanzoai::Internal::Type::BasePage[ + Hanzoai::Internal::Type::BaseModel + ] + ] + ), stream: T.nilable(T::Class[T.anything]), model: T.nilable(Hanzoai::Internal::Type::Converter::Input), - options: T.nilable(Hanzoai::RequestOpts) - ) - .returns(T.anything) + options: T.nilable(Hanzoai::RequestOptions::OrHash) + ).returns(T.anything) end def request( method, @@ -203,10 +265,13 @@ module Hanzoai stream: nil, model: Hanzoai::Internal::Type::Unknown, options: {} - ); end + ) + end + # @api private sig { returns(String) } - def inspect; end + def inspect + end end end end diff --git a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi index 6674a464..f85a84d2 100644 --- a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi +++ b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi @@ -23,37 +23,51 @@ module Hanzoai 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: Hanzoai::Internal::Transport::PooledNetRequester::RequestShape, + request: + Hanzoai::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: Hanzoai::Internal::Transport::PooledNetRequester::RequestShape) - .returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) + params( + request: + Hanzoai::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/hanzoai/internal/type/array_of.rbi b/rbi/hanzoai/internal/type/array_of.rbi index cfc98e9a..1846db49 100644 --- a/rbi/hanzoai/internal/type/array_of.rbi +++ b/rbi/hanzoai/internal/type/array_of.rbi @@ -15,25 +15,29 @@ module Hanzoai sig do params( - type_info: T.any( - Hanzoai::Internal::AnyHash, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::Internal::Type::Converter::Input - ), + type_info: + T.any( + Hanzoai::Internal::AnyHash, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), spec: Hanzoai::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 Hanzoai ) .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 Hanzoai ) .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( - Hanzoai::Internal::AnyHash, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::Internal::Type::Converter::Input - ), + type_info: + T.any( + Hanzoai::Internal::AnyHash, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), spec: Hanzoai::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/hanzoai/internal/type/base_model.rbi b/rbi/hanzoai/internal/type/base_model.rbi index 5b38f552..b1c21708 100644 --- a/rbi/hanzoai/internal/type/base_model.rbi +++ b/rbi/hanzoai/internal/type/base_model.rbi @@ -8,9 +8,16 @@ module Hanzoai 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, Hanzoai::Internal::AnyHash) } class << self # @api private @@ -23,12 +30,16 @@ module Hanzoai Symbol, T.all( Hanzoai::Internal::Type::BaseModel::KnownFieldShape, - {type_fn: T.proc.returns(Hanzoai::Internal::Type::Converter::Input)} + { + type_fn: + T.proc.returns(Hanzoai::Internal::Type::Converter::Input) + } ) ] ) end - def known_fields; end + def known_fields + end # @api private sig do @@ -37,114 +48,143 @@ module Hanzoai Symbol, T.all( Hanzoai::Internal::Type::BaseModel::KnownFieldShape, - {type: Hanzoai::Internal::Type::Converter::Input} + { type: Hanzoai::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(Hanzoai::Internal::Type::Converter::Input)), - union: T.nilable(T.proc.returns(Hanzoai::Internal::Type::Converter::Input)), - api_name: Symbol, - nil?: T::Boolean - }, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::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( + Hanzoai::Internal::Type::Converter::Input + ) + ), + union: + T.nilable( + T.proc.returns( + Hanzoai::Internal::Type::Converter::Input + ) + ), + api_name: Symbol, + nil?: T::Boolean + }, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), spec: Hanzoai::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( - Hanzoai::Internal::AnyHash, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::Internal::Type::Converter::Input - ), + type_info: + T.any( + Hanzoai::Internal::AnyHash, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), spec: Hanzoai::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( - Hanzoai::Internal::AnyHash, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::Internal::Type::Converter::Input - ), + type_info: + T.any( + Hanzoai::Internal::AnyHash, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), spec: Hanzoai::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(Hanzoai::Internal::Type::BaseModel, T::Hash[T.anything, T.anything], T.anything), + value: + T.any( + Hanzoai::Internal::Type::BaseModel, + T::Hash[T.anything, T.anything], + T.anything + ), state: Hanzoai::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: Hanzoai::Internal::Type::Converter::DumpState) + .params( + value: T.any(T.attached_class, T.anything), + state: Hanzoai::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 +194,8 @@ module Hanzoai # 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 +206,8 @@ module Hanzoai # This method is not recursive. The returned value is shared by the object, so it # should not be mutated. sig { overridable.returns(Hanzoai::Internal::AnyHash) } - def to_h; end + def to_h + end # Returns a Hash of the data underlying this object. O(1) # @@ -176,39 +218,60 @@ module Hanzoai # This method is not recursive. The returned value is shared by the object, so it # should not be mutated. sig { overridable.returns(Hanzoai::Internal::AnyHash) } - def to_hash; end + def to_hash + end - sig { params(keys: T.nilable(T::Array[Symbol])).returns(Hanzoai::Internal::AnyHash) } - def deconstruct_keys(keys); end + sig do + params(keys: T.nilable(T::Array[Symbol])).returns( + Hanzoai::Internal::AnyHash + ) + end + def deconstruct_keys(keys) + end class << self # @api private - sig { params(model: Hanzoai::Internal::Type::BaseModel).returns(Hanzoai::Internal::AnyHash) } - def walk(model); end + sig do + params(model: Hanzoai::Internal::Type::BaseModel).returns( + Hanzoai::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/hanzoai/internal/type/base_page.rbi b/rbi/hanzoai/internal/type/base_page.rbi index b00be108..acb2aeee 100644 --- a/rbi/hanzoai/internal/type/base_page.rbi +++ b/rbi/hanzoai/internal/type/base_page.rbi @@ -10,28 +10,33 @@ module Hanzoai 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: Hanzoai::Internal::Transport::BaseClient, - req: Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape, + req: + Hanzoai::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/hanzoai/internal/type/boolean.rbi b/rbi/hanzoai/internal/type/boolean.rbi index 504b8caf..2e716986 100644 --- a/rbi/hanzoai/internal/type/boolean.rbi +++ b/rbi/hanzoai/internal/type/boolean.rbi @@ -12,35 +12,37 @@ module Hanzoai 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: Hanzoai::Internal::Type::Converter::CoerceState) + .params( + value: T.any(T::Boolean, T.anything), + state: Hanzoai::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: Hanzoai::Internal::Type::Converter::DumpState) + .params( + value: T.any(T::Boolean, T.anything), + state: Hanzoai::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/hanzoai/internal/type/converter.rbi b/rbi/hanzoai/internal/type/converter.rbi index 394caef6..2ee948da 100644 --- a/rbi/hanzoai/internal/type/converter.rbi +++ b/rbi/hanzoai/internal/type/converter.rbi @@ -5,56 +5,86 @@ module Hanzoai module Type # @api private module Converter - Input = T.type_alias { T.any(Hanzoai::Internal::Type::Converter, T::Class[T.anything]) } + Input = + T.type_alias do + T.any(Hanzoai::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: Hanzoai::Internal::Type::Converter::CoerceState) + .params( + value: T.anything, + state: Hanzoai::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: Hanzoai::Internal::Type::Converter::DumpState) + .params( + value: T.anything, + state: Hanzoai::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(Hanzoai::Internal::Type::Converter::Input)), - union: T.nilable(T.proc.returns(Hanzoai::Internal::Type::Converter::Input)) - }, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::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( + Hanzoai::Internal::Type::Converter::Input + ) + ), + union: + T.nilable( + T.proc.returns( + Hanzoai::Internal::Type::Converter::Input + ) + ) + }, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::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 +102,7 @@ module Hanzoai target: Hanzoai::Internal::Type::Converter::Input, value: T.anything, state: Hanzoai::Internal::Type::Converter::CoerceState - ) - .returns(T.anything) + ).returns(T.anything) end def self.coerce( target, @@ -97,22 +126,33 @@ module Hanzoai # - `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: Hanzoai::Internal::Type::Converter::Input, value: T.anything, state: Hanzoai::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/hanzoai/internal/type/enum.rbi b/rbi/hanzoai/internal/type/enum.rbi index b75672d2..91afb5b2 100644 --- a/rbi/hanzoai/internal/type/enum.rbi +++ b/rbi/hanzoai/internal/type/enum.rbi @@ -19,17 +19,25 @@ module Hanzoai include Hanzoai::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 Hanzoai # of the enum. sig do override - .params(value: T.any( - String, - Symbol, - T.anything - ), - state: Hanzoai::Internal::Type::Converter::CoerceState) + .params( + value: T.any(String, Symbol, T.anything), + state: Hanzoai::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: Hanzoai::Internal::Type::Converter::DumpState) + .params( + value: T.any(Symbol, T.anything), + state: Hanzoai::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/hanzoai/internal/type/file_input.rbi b/rbi/hanzoai/internal/type/file_input.rbi index 3abc84ff..16bb6e99 100644 --- a/rbi/hanzoai/internal/type/file_input.rbi +++ b/rbi/hanzoai/internal/type/file_input.rbi @@ -16,24 +16,25 @@ module Hanzoai 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: Hanzoai::Internal::Type::Converter::CoerceState) + .params( + value: T.any(StringIO, String, T.anything), + state: Hanzoai::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 Hanzoai ) .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/hanzoai/internal/type/hash_of.rbi b/rbi/hanzoai/internal/type/hash_of.rbi index f5c8ba5f..23163eca 100644 --- a/rbi/hanzoai/internal/type/hash_of.rbi +++ b/rbi/hanzoai/internal/type/hash_of.rbi @@ -15,25 +15,29 @@ module Hanzoai sig do params( - type_info: T.any( - Hanzoai::Internal::AnyHash, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::Internal::Type::Converter::Input - ), + type_info: + T.any( + Hanzoai::Internal::AnyHash, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), spec: Hanzoai::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 Hanzoai ) .returns(T.any(Hanzoai::Internal::AnyHash, T.anything)) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do @@ -55,33 +60,38 @@ module Hanzoai ) .returns(T.any(Hanzoai::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( - Hanzoai::Internal::AnyHash, - T.proc.returns(Hanzoai::Internal::Type::Converter::Input), - Hanzoai::Internal::Type::Converter::Input - ), + type_info: + T.any( + Hanzoai::Internal::AnyHash, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), spec: Hanzoai::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/hanzoai/internal/type/request_parameters.rbi b/rbi/hanzoai/internal/type/request_parameters.rbi index 0a271958..8d10fd14 100644 --- a/rbi/hanzoai/internal/type/request_parameters.rbi +++ b/rbi/hanzoai/internal/type/request_parameters.rbi @@ -6,14 +6,22 @@ module Hanzoai # @api private module RequestParameters # Options to specify HTTP behaviour for this request. - sig { returns(Hanzoai::RequestOpts) } - attr_accessor :request_options + sig { returns(Hanzoai::RequestOptions) } + attr_reader :request_options + + sig { params(request_options: Hanzoai::RequestOptions::OrHash).void } + attr_writer :request_options # @api private module Converter # @api private - sig { params(params: T.anything).returns([T.anything, Hanzoai::Internal::AnyHash]) } - def dump_request(params); end + sig do + params(params: T.anything).returns( + [T.anything, Hanzoai::Internal::AnyHash] + ) + end + def dump_request(params) + end end end end diff --git a/rbi/hanzoai/internal/type/union.rbi b/rbi/hanzoai/internal/type/union.rbi index b4cd3c17..a9e24976 100644 --- a/rbi/hanzoai/internal/type/union.rbi +++ b/rbi/hanzoai/internal/type/union.rbi @@ -11,65 +11,99 @@ module Hanzoai # # All of the specified variant info for this union. sig do - returns(T::Array[[T.nilable(Symbol), T.proc.returns(Hanzoai::Internal::Type::Converter::Input)]]) + returns( + T::Array[ + [ + T.nilable(Symbol), + T.proc.returns(Hanzoai::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, Hanzoai::Internal::AnyHash, T.proc.returns(T.anything), T.anything), - spec: T.any(Hanzoai::Internal::AnyHash, T.proc.returns(T.anything), T.anything) - ) - .void + key: + T.any( + Symbol, + Hanzoai::Internal::AnyHash, + T.proc.returns(T.anything), + T.anything + ), + spec: + T.any( + Hanzoai::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: Hanzoai::Internal::Type::Converter::CoerceState) + .params( + value: T.anything, + state: Hanzoai::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: Hanzoai::Internal::Type::Converter::DumpState - ).returns(T.anything) + override + .params( + value: T.anything, + state: Hanzoai::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/hanzoai/internal/type/unknown.rbi b/rbi/hanzoai/internal/type/unknown.rbi index 3f8ae645..14925cd3 100644 --- a/rbi/hanzoai/internal/type/unknown.rbi +++ b/rbi/hanzoai/internal/type/unknown.rbi @@ -12,28 +12,37 @@ module Hanzoai 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: Hanzoai::Internal::Type::Converter::CoerceState) + .params( + value: T.anything, + state: Hanzoai::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: Hanzoai::Internal::Type::Converter::DumpState - ).returns(T.anything) + override + .params( + value: T.anything, + state: Hanzoai::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/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi index c5a15ec2..407b0b98 100644 --- a/rbi/hanzoai/internal/util.rbi +++ b/rbi/hanzoai/internal/util.rbi @@ -6,60 +6,102 @@ module Hanzoai 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 Hanzoai sentinel: nil, # whether to merge sequences by concatenation. concat: false - ); end + ) + end + # @api private sig do params( - data: T.any(Hanzoai::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) - ) - ), + Hanzoai::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 Hanzoai class << self # @api private - sig { params(url: T.any(URI::Generic, String)).returns(Hanzoai::Internal::Util::ParsedUriShape) } - def parse_uri(url); end + sig do + params(url: T.any(URI::Generic, String)).returns( + Hanzoai::Internal::Util::ParsedUriShape + ) + end + def parse_uri(url) + end # @api private - sig { params(parsed: Hanzoai::Internal::Util::ParsedUriShape).returns(URI::Generic) } - def unparse_uri(parsed); end + sig do + params(parsed: Hanzoai::Internal::Util::ParsedUriShape).returns( + URI::Generic + ) + end + def unparse_uri(parsed) + end # @api private sig do - params(lhs: Hanzoai::Internal::Util::ParsedUriShape, rhs: Hanzoai::Internal::Util::ParsedUriShape) - .returns(URI::Generic) + params( + lhs: Hanzoai::Internal::Util::ParsedUriShape, + rhs: Hanzoai::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 Hanzoai 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 Hanzoai 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 Hanzoai 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 Hanzoai 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 Hanzoai # # 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 Hanzoai # # 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 Hanzoai # # Assumes that `lines` has been decoded with `#decode_lines`. sig do - params(lines: T::Enumerable[String]).returns(T::Enumerable[Hanzoai::Internal::Util::ServerSentEvent]) + params(lines: T::Enumerable[String]).returns( + T::Enumerable[Hanzoai::Internal::Util::ServerSentEvent] + ) + end + def decode_sse(lines) end - def decode_sse(lines); end end end end diff --git a/rbi/hanzoai/models.rbi b/rbi/hanzoai/models.rbi index 3fa252e7..77b5eb8b 100644 --- a/rbi/hanzoai/models.rbi +++ b/rbi/hanzoai/models.rbi @@ -57,7 +57,8 @@ module Hanzoai BatchRetrieveParams = Hanzoai::Models::BatchRetrieveParams - BatchRetrieveWithProviderParams = Hanzoai::Models::BatchRetrieveWithProviderParams + BatchRetrieveWithProviderParams = + Hanzoai::Models::BatchRetrieveWithProviderParams BedrockCreateParams = Hanzoai::Models::BedrockCreateParams @@ -115,7 +116,8 @@ module Hanzoai Config = Hanzoai::Models::Config - ConfigurableClientsideParamsCustomAuth = Hanzoai::Models::ConfigurableClientsideParamsCustomAuth + ConfigurableClientsideParamsCustomAuth = + Hanzoai::Models::ConfigurableClientsideParamsCustomAuth CredentialCreateParams = Hanzoai::Models::CredentialCreateParams @@ -265,13 +267,15 @@ module Hanzoai OrganizationCreateParams = Hanzoai::Models::OrganizationCreateParams - OrganizationDeleteMemberParams = Hanzoai::Models::OrganizationDeleteMemberParams + OrganizationDeleteMemberParams = + Hanzoai::Models::OrganizationDeleteMemberParams OrganizationDeleteParams = Hanzoai::Models::OrganizationDeleteParams OrganizationListParams = Hanzoai::Models::OrganizationListParams - OrganizationUpdateMemberParams = Hanzoai::Models::OrganizationUpdateMemberParams + OrganizationUpdateMemberParams = + Hanzoai::Models::OrganizationUpdateMemberParams OrganizationUpdateParams = Hanzoai::Models::OrganizationUpdateParams @@ -347,7 +351,8 @@ module Hanzoai UserUpdateParams = Hanzoai::Models::UserUpdateParams - UtilGetSupportedOpenAIParamsParams = Hanzoai::Models::UtilGetSupportedOpenAIParamsParams + UtilGetSupportedOpenAIParamsParams = + Hanzoai::Models::UtilGetSupportedOpenAIParamsParams UtilTokenCounterParams = Hanzoai::Models::UtilTokenCounterParams diff --git a/rbi/hanzoai/models/active_list_callbacks_params.rbi b/rbi/hanzoai/models/active_list_callbacks_params.rbi index 8dceb932..8a797448 100644 --- a/rbi/hanzoai/models/active_list_callbacks_params.rbi +++ b/rbi/hanzoai/models/active_list_callbacks_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/active_list_callbacks_response.rbi b/rbi/hanzoai/models/active_list_callbacks_response.rbi index 3297890a..98c3a42c 100644 --- a/rbi/hanzoai/models/active_list_callbacks_response.rbi +++ b/rbi/hanzoai/models/active_list_callbacks_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - ActiveListCallbacksResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ActiveListCallbacksResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/add_add_allowed_ip_params.rbi b/rbi/hanzoai/models/add_add_allowed_ip_params.rbi index 01030501..4a61e794 100644 --- a/rbi/hanzoai/models/add_add_allowed_ip_params.rbi +++ b/rbi/hanzoai/models/add_add_allowed_ip_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/add_add_allowed_ip_response.rbi b/rbi/hanzoai/models/add_add_allowed_ip_response.rbi index 110251d3..b34d925f 100644 --- a/rbi/hanzoai/models/add_add_allowed_ip_response.rbi +++ b/rbi/hanzoai/models/add_add_allowed_ip_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AddAddAllowedIPResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AddAddAllowedIPResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/anthropic_create_params.rbi b/rbi/hanzoai/models/anthropic_create_params.rbi index a39cdb2b..e6097597 100644 --- a/rbi/hanzoai/models/anthropic_create_params.rbi +++ b/rbi/hanzoai/models/anthropic_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/anthropic_create_response.rbi b/rbi/hanzoai/models/anthropic_create_response.rbi index c58424d5..1e9aa55f 100644 --- a/rbi/hanzoai/models/anthropic_create_response.rbi +++ b/rbi/hanzoai/models/anthropic_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AnthropicCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AnthropicCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/anthropic_delete_params.rbi b/rbi/hanzoai/models/anthropic_delete_params.rbi index 1bd51e96..00bee6ff 100644 --- a/rbi/hanzoai/models/anthropic_delete_params.rbi +++ b/rbi/hanzoai/models/anthropic_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/anthropic_delete_response.rbi b/rbi/hanzoai/models/anthropic_delete_response.rbi index a821840e..fb3a2f6a 100644 --- a/rbi/hanzoai/models/anthropic_delete_response.rbi +++ b/rbi/hanzoai/models/anthropic_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AnthropicDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AnthropicDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/anthropic_modify_params.rbi b/rbi/hanzoai/models/anthropic_modify_params.rbi index bcfb8f8b..13aa4a56 100644 --- a/rbi/hanzoai/models/anthropic_modify_params.rbi +++ b/rbi/hanzoai/models/anthropic_modify_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/anthropic_modify_response.rbi b/rbi/hanzoai/models/anthropic_modify_response.rbi index 67533eb9..49b83a02 100644 --- a/rbi/hanzoai/models/anthropic_modify_response.rbi +++ b/rbi/hanzoai/models/anthropic_modify_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AnthropicModifyResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AnthropicModifyResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/anthropic_retrieve_params.rbi b/rbi/hanzoai/models/anthropic_retrieve_params.rbi index 079fc075..5b67e2a7 100644 --- a/rbi/hanzoai/models/anthropic_retrieve_params.rbi +++ b/rbi/hanzoai/models/anthropic_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/anthropic_retrieve_response.rbi b/rbi/hanzoai/models/anthropic_retrieve_response.rbi index 3558432a..a2ab9a51 100644 --- a/rbi/hanzoai/models/anthropic_retrieve_response.rbi +++ b/rbi/hanzoai/models/anthropic_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AnthropicRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AnthropicRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/anthropic_update_params.rbi b/rbi/hanzoai/models/anthropic_update_params.rbi index 85befe5a..2482d504 100644 --- a/rbi/hanzoai/models/anthropic_update_params.rbi +++ b/rbi/hanzoai/models/anthropic_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/anthropic_update_response.rbi b/rbi/hanzoai/models/anthropic_update_response.rbi index b233fbc7..3d4bdeb6 100644 --- a/rbi/hanzoai/models/anthropic_update_response.rbi +++ b/rbi/hanzoai/models/anthropic_update_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AnthropicUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AnthropicUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assemblyai_create_params.rbi b/rbi/hanzoai/models/assemblyai_create_params.rbi index 5518d7ed..1b97817d 100644 --- a/rbi/hanzoai/models/assemblyai_create_params.rbi +++ b/rbi/hanzoai/models/assemblyai_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assemblyai_create_response.rbi b/rbi/hanzoai/models/assemblyai_create_response.rbi index a4594300..249f3d39 100644 --- a/rbi/hanzoai/models/assemblyai_create_response.rbi +++ b/rbi/hanzoai/models/assemblyai_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssemblyaiCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssemblyaiCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assemblyai_delete_params.rbi b/rbi/hanzoai/models/assemblyai_delete_params.rbi index dc8925da..a608c6c2 100644 --- a/rbi/hanzoai/models/assemblyai_delete_params.rbi +++ b/rbi/hanzoai/models/assemblyai_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assemblyai_delete_response.rbi b/rbi/hanzoai/models/assemblyai_delete_response.rbi index f2bdcf58..5d685f14 100644 --- a/rbi/hanzoai/models/assemblyai_delete_response.rbi +++ b/rbi/hanzoai/models/assemblyai_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssemblyaiDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssemblyaiDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assemblyai_patch_params.rbi b/rbi/hanzoai/models/assemblyai_patch_params.rbi index 38a3cac8..fd5355f7 100644 --- a/rbi/hanzoai/models/assemblyai_patch_params.rbi +++ b/rbi/hanzoai/models/assemblyai_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assemblyai_patch_response.rbi b/rbi/hanzoai/models/assemblyai_patch_response.rbi index 8dc5a171..74aa79df 100644 --- a/rbi/hanzoai/models/assemblyai_patch_response.rbi +++ b/rbi/hanzoai/models/assemblyai_patch_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssemblyaiPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssemblyaiPatchResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assemblyai_retrieve_params.rbi b/rbi/hanzoai/models/assemblyai_retrieve_params.rbi index a4a1a9d7..2333ea85 100644 --- a/rbi/hanzoai/models/assemblyai_retrieve_params.rbi +++ b/rbi/hanzoai/models/assemblyai_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assemblyai_retrieve_response.rbi b/rbi/hanzoai/models/assemblyai_retrieve_response.rbi index dff8ac6e..3eb7fc5c 100644 --- a/rbi/hanzoai/models/assemblyai_retrieve_response.rbi +++ b/rbi/hanzoai/models/assemblyai_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssemblyaiRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssemblyaiRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assemblyai_update_params.rbi b/rbi/hanzoai/models/assemblyai_update_params.rbi index 9bcc3f30..040af6ad 100644 --- a/rbi/hanzoai/models/assemblyai_update_params.rbi +++ b/rbi/hanzoai/models/assemblyai_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assemblyai_update_response.rbi b/rbi/hanzoai/models/assemblyai_update_response.rbi index a2d9e748..c03528c1 100644 --- a/rbi/hanzoai/models/assemblyai_update_response.rbi +++ b/rbi/hanzoai/models/assemblyai_update_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssemblyaiUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssemblyaiUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assistant_create_params.rbi b/rbi/hanzoai/models/assistant_create_params.rbi index 4cae7180..6c4b382d 100644 --- a/rbi/hanzoai/models/assistant_create_params.rbi +++ b/rbi/hanzoai/models/assistant_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assistant_create_response.rbi b/rbi/hanzoai/models/assistant_create_response.rbi index af055f1c..3312bf22 100644 --- a/rbi/hanzoai/models/assistant_create_response.rbi +++ b/rbi/hanzoai/models/assistant_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssistantCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssistantCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assistant_delete_params.rbi b/rbi/hanzoai/models/assistant_delete_params.rbi index 5ca9078b..b57efa14 100644 --- a/rbi/hanzoai/models/assistant_delete_params.rbi +++ b/rbi/hanzoai/models/assistant_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assistant_delete_response.rbi b/rbi/hanzoai/models/assistant_delete_response.rbi index 8dce9895..07e305fc 100644 --- a/rbi/hanzoai/models/assistant_delete_response.rbi +++ b/rbi/hanzoai/models/assistant_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssistantDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssistantDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/assistant_list_params.rbi b/rbi/hanzoai/models/assistant_list_params.rbi index b4156045..6fe8fe67 100644 --- a/rbi/hanzoai/models/assistant_list_params.rbi +++ b/rbi/hanzoai/models/assistant_list_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/assistant_list_response.rbi b/rbi/hanzoai/models/assistant_list_response.rbi index 2b562293..61be2ee1 100644 --- a/rbi/hanzoai/models/assistant_list_response.rbi +++ b/rbi/hanzoai/models/assistant_list_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - AssistantListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + AssistantListResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/audio/speech_create_params.rbi b/rbi/hanzoai/models/audio/speech_create_params.rbi index 0b7e3be6..d6f761e5 100644 --- a/rbi/hanzoai/models/audio/speech_create_params.rbi +++ b/rbi/hanzoai/models/audio/speech_create_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/audio/speech_create_response.rbi b/rbi/hanzoai/models/audio/speech_create_response.rbi index cb2aebcb..45619ddd 100644 --- a/rbi/hanzoai/models/audio/speech_create_response.rbi +++ b/rbi/hanzoai/models/audio/speech_create_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Audio - SpeechCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + SpeechCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/audio/transcription_create_params.rbi b/rbi/hanzoai/models/audio/transcription_create_params.rbi index 578faa8a..ad779b8e 100644 --- a/rbi/hanzoai/models/audio/transcription_create_params.rbi +++ b/rbi/hanzoai/models/audio/transcription_create_params.rbi @@ -7,28 +7,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } attr_accessor :file sig do params( file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(file:, request_options: {}) end - def self.new(file:, request_options: {}); end sig do - override - .returns( - { - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/audio/transcription_create_response.rbi b/rbi/hanzoai/models/audio/transcription_create_response.rbi index 3fcf817c..00d2a18b 100644 --- a/rbi/hanzoai/models/audio/transcription_create_response.rbi +++ b/rbi/hanzoai/models/audio/transcription_create_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Audio - TranscriptionCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + TranscriptionCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/azure_call_params.rbi b/rbi/hanzoai/models/azure_call_params.rbi index 14ef3365..97e9cd68 100644 --- a/rbi/hanzoai/models/azure_call_params.rbi +++ b/rbi/hanzoai/models/azure_call_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/azure_create_params.rbi b/rbi/hanzoai/models/azure_create_params.rbi index 75a21aad..cc5cccb4 100644 --- a/rbi/hanzoai/models/azure_create_params.rbi +++ b/rbi/hanzoai/models/azure_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/azure_delete_params.rbi b/rbi/hanzoai/models/azure_delete_params.rbi index d1cc6d60..98a9fe03 100644 --- a/rbi/hanzoai/models/azure_delete_params.rbi +++ b/rbi/hanzoai/models/azure_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/azure_patch_params.rbi b/rbi/hanzoai/models/azure_patch_params.rbi index 299d9b6d..90c9b7d2 100644 --- a/rbi/hanzoai/models/azure_patch_params.rbi +++ b/rbi/hanzoai/models/azure_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/azure_update_params.rbi b/rbi/hanzoai/models/azure_update_params.rbi index b0b33d91..36238faf 100644 --- a/rbi/hanzoai/models/azure_update_params.rbi +++ b/rbi/hanzoai/models/azure_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi b/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi index 5bb95eb2..bf498d36 100644 --- a/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :provider sig do - params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider:, request_options: {}) end - def self.new(provider:, request_options: {}); end - sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { provider: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/batch_cancel_with_provider_response.rbi b/rbi/hanzoai/models/batch_cancel_with_provider_response.rbi index fdd247b0..9cec8556 100644 --- a/rbi/hanzoai/models/batch_cancel_with_provider_response.rbi +++ b/rbi/hanzoai/models/batch_cancel_with_provider_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BatchCancelWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BatchCancelWithProviderResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/batch_create_params.rbi b/rbi/hanzoai/models/batch_create_params.rbi index ba3ff4f3..ef04c99f 100644 --- a/rbi/hanzoai/models/batch_create_params.rbi +++ b/rbi/hanzoai/models/batch_create_params.rbi @@ -6,20 +6,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :provider sig do params( provider: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider: nil, request_options: {}) end - def self.new(provider: nil, request_options: {}); end - sig { override.returns({provider: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + provider: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/batch_create_with_provider_params.rbi b/rbi/hanzoai/models/batch_create_with_provider_params.rbi index 232dfe3c..bd5e8466 100644 --- a/rbi/hanzoai/models/batch_create_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_create_with_provider_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/batch_create_with_provider_response.rbi b/rbi/hanzoai/models/batch_create_with_provider_response.rbi index 02347796..c069e414 100644 --- a/rbi/hanzoai/models/batch_create_with_provider_response.rbi +++ b/rbi/hanzoai/models/batch_create_with_provider_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BatchCreateWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BatchCreateWithProviderResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/batch_list_params.rbi b/rbi/hanzoai/models/batch_list_params.rbi index a17dbda0..2f303034 100644 --- a/rbi/hanzoai/models/batch_list_params.rbi +++ b/rbi/hanzoai/models/batch_list_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :after @@ -20,24 +22,24 @@ module Hanzoai after: T.nilable(String), limit: T.nilable(Integer), provider: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(after: nil, limit: nil, provider: nil, request_options: {}) end - def self.new(after: nil, limit: nil, provider: nil, request_options: {}); end sig do - override - .returns( - { - after: T.nilable(String), - limit: T.nilable(Integer), - provider: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + after: T.nilable(String), + limit: T.nilable(Integer), + provider: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/batch_list_with_provider_params.rbi b/rbi/hanzoai/models/batch_list_with_provider_params.rbi index 47872d12..ed6c2f7c 100644 --- a/rbi/hanzoai/models/batch_list_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_list_with_provider_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :after @@ -16,21 +18,23 @@ module Hanzoai params( after: T.nilable(String), limit: T.nilable(Integer), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(after: nil, limit: nil, request_options: {}) end - def self.new(after: nil, limit: nil, request_options: {}); end sig do - override - .returns({ - after: T.nilable(String), - limit: T.nilable(Integer), - request_options: Hanzoai::RequestOptions - }) + override.returns( + { + after: T.nilable(String), + limit: T.nilable(Integer), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/batch_list_with_provider_response.rbi b/rbi/hanzoai/models/batch_list_with_provider_response.rbi index fc3dfad2..39dae559 100644 --- a/rbi/hanzoai/models/batch_list_with_provider_response.rbi +++ b/rbi/hanzoai/models/batch_list_with_provider_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BatchListWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BatchListWithProviderResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/batch_retrieve_params.rbi b/rbi/hanzoai/models/batch_retrieve_params.rbi index e88751e6..53cf0c2b 100644 --- a/rbi/hanzoai/models/batch_retrieve_params.rbi +++ b/rbi/hanzoai/models/batch_retrieve_params.rbi @@ -6,20 +6,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :provider sig do params( provider: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider: nil, request_options: {}) end - def self.new(provider: nil, request_options: {}); end - sig { override.returns({provider: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + provider: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/batch_retrieve_response.rbi b/rbi/hanzoai/models/batch_retrieve_response.rbi index 477d7797..7332fe55 100644 --- a/rbi/hanzoai/models/batch_retrieve_response.rbi +++ b/rbi/hanzoai/models/batch_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BatchRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BatchRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi b/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi index 8eec40ba..16dd7f2c 100644 --- a/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :provider sig do - params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider:, request_options: {}) end - def self.new(provider:, request_options: {}); end - sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { provider: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi b/rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi index 68372584..b4d8f3b8 100644 --- a/rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi +++ b/rbi/hanzoai/models/batch_retrieve_with_provider_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BatchRetrieveWithProviderResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BatchRetrieveWithProviderResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/batches/cancel_cancel_params.rbi b/rbi/hanzoai/models/batches/cancel_cancel_params.rbi index 3c0093e3..fb6f5fde 100644 --- a/rbi/hanzoai/models/batches/cancel_cancel_params.rbi +++ b/rbi/hanzoai/models/batches/cancel_cancel_params.rbi @@ -7,20 +7,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :provider sig do params( provider: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider: nil, request_options: {}) end - def self.new(provider: nil, request_options: {}); end - sig { override.returns({provider: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + provider: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/batches/cancel_cancel_response.rbi b/rbi/hanzoai/models/batches/cancel_cancel_response.rbi index 0273faed..5a60c641 100644 --- a/rbi/hanzoai/models/batches/cancel_cancel_response.rbi +++ b/rbi/hanzoai/models/batches/cancel_cancel_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Batches - CancelCancelResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CancelCancelResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/bedrock_create_params.rbi b/rbi/hanzoai/models/bedrock_create_params.rbi index 8d0ae47d..e6841261 100644 --- a/rbi/hanzoai/models/bedrock_create_params.rbi +++ b/rbi/hanzoai/models/bedrock_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/bedrock_create_response.rbi b/rbi/hanzoai/models/bedrock_create_response.rbi index cbb7f2a7..a75d6ac3 100644 --- a/rbi/hanzoai/models/bedrock_create_response.rbi +++ b/rbi/hanzoai/models/bedrock_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BedrockCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BedrockCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/bedrock_delete_params.rbi b/rbi/hanzoai/models/bedrock_delete_params.rbi index 41af6125..97357929 100644 --- a/rbi/hanzoai/models/bedrock_delete_params.rbi +++ b/rbi/hanzoai/models/bedrock_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/bedrock_delete_response.rbi b/rbi/hanzoai/models/bedrock_delete_response.rbi index 10e45271..b71b3616 100644 --- a/rbi/hanzoai/models/bedrock_delete_response.rbi +++ b/rbi/hanzoai/models/bedrock_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BedrockDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BedrockDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/bedrock_patch_params.rbi b/rbi/hanzoai/models/bedrock_patch_params.rbi index 1788e8bb..e7cdf5ae 100644 --- a/rbi/hanzoai/models/bedrock_patch_params.rbi +++ b/rbi/hanzoai/models/bedrock_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/bedrock_retrieve_params.rbi b/rbi/hanzoai/models/bedrock_retrieve_params.rbi index 4f1f872d..c62affa3 100644 --- a/rbi/hanzoai/models/bedrock_retrieve_params.rbi +++ b/rbi/hanzoai/models/bedrock_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/bedrock_retrieve_response.rbi b/rbi/hanzoai/models/bedrock_retrieve_response.rbi index 045bcbd4..0a1c0555 100644 --- a/rbi/hanzoai/models/bedrock_retrieve_response.rbi +++ b/rbi/hanzoai/models/bedrock_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BedrockRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BedrockRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/bedrock_update_params.rbi b/rbi/hanzoai/models/bedrock_update_params.rbi index 0bc294e3..4886aab8 100644 --- a/rbi/hanzoai/models/bedrock_update_params.rbi +++ b/rbi/hanzoai/models/bedrock_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/bedrock_update_response.rbi b/rbi/hanzoai/models/bedrock_update_response.rbi index 17aaf602..d1db09f6 100644 --- a/rbi/hanzoai/models/bedrock_update_response.rbi +++ b/rbi/hanzoai/models/bedrock_update_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BedrockUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BedrockUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/block_key_request.rbi b/rbi/hanzoai/models/block_key_request.rbi index cf28a886..8021e457 100644 --- a/rbi/hanzoai/models/block_key_request.rbi +++ b/rbi/hanzoai/models/block_key_request.rbi @@ -3,14 +3,18 @@ module Hanzoai module Models class BlockKeyRequest < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :key sig { params(key: String).returns(T.attached_class) } - def self.new(key:); end + def self.new(key:) + end - sig { override.returns({key: String}) } - def to_hash; end + sig { override.returns({ key: String }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/block_team_request.rbi b/rbi/hanzoai/models/block_team_request.rbi index 8bedccf6..4e23dda1 100644 --- a/rbi/hanzoai/models/block_team_request.rbi +++ b/rbi/hanzoai/models/block_team_request.rbi @@ -3,14 +3,18 @@ module Hanzoai module Models class BlockTeamRequest < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id sig { params(team_id: String).returns(T.attached_class) } - def self.new(team_id:); end + def self.new(team_id:) + end - sig { override.returns({team_id: String}) } - def to_hash; end + sig { override.returns({ team_id: String }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/block_users.rbi b/rbi/hanzoai/models/block_users.rbi index 434f4899..adff647e 100644 --- a/rbi/hanzoai/models/block_users.rbi +++ b/rbi/hanzoai/models/block_users.rbi @@ -3,14 +3,18 @@ module Hanzoai module Models class BlockUsers < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :user_ids sig { params(user_ids: T::Array[String]).returns(T.attached_class) } - def self.new(user_ids:); end + def self.new(user_ids:) + end - sig { override.returns({user_ids: T::Array[String]}) } - def to_hash; end + sig { override.returns({ user_ids: T::Array[String] }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/budget_create_params.rbi b/rbi/hanzoai/models/budget_create_params.rbi index d4971470..b12299eb 100644 --- a/rbi/hanzoai/models/budget_create_params.rbi +++ b/rbi/hanzoai/models/budget_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/budget_delete_params.rbi b/rbi/hanzoai/models/budget_delete_params.rbi index dbf0f805..acd9a8e5 100644 --- a/rbi/hanzoai/models/budget_delete_params.rbi +++ b/rbi/hanzoai/models/budget_delete_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id sig do - params(id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(id:, request_options: {}) end - def self.new(id:, request_options: {}); end - sig { override.returns({id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { id: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/budget_info_params.rbi b/rbi/hanzoai/models/budget_info_params.rbi index 16c95c56..0c6b2ff8 100644 --- a/rbi/hanzoai/models/budget_info_params.rbi +++ b/rbi/hanzoai/models/budget_info_params.rbi @@ -6,20 +6,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :budgets sig do params( budgets: T::Array[String], - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(budgets:, request_options: {}) end - def self.new(budgets:, request_options: {}); end - sig { override.returns({budgets: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + budgets: T::Array[String], + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/budget_list_params.rbi b/rbi/hanzoai/models/budget_list_params.rbi index 2207fb15..7cfa9728 100644 --- a/rbi/hanzoai/models/budget_list_params.rbi +++ b/rbi/hanzoai/models/budget_list_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/budget_new.rbi b/rbi/hanzoai/models/budget_new.rbi index 9af14564..040ac687 100644 --- a/rbi/hanzoai/models/budget_new.rbi +++ b/rbi/hanzoai/models/budget_new.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class BudgetNew < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Max duration budget should be set for (e.g. '1hr', '1d', '28d') sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -21,7 +23,9 @@ module Hanzoai # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) - sig { returns(T.nilable(T::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget])) } + sig do + returns(T.nilable(T::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget])) + end attr_accessor :model_max_budget # Max requests per minute, allowed for this budget id. @@ -42,12 +46,14 @@ module Hanzoai budget_id: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T::Hash[Symbol, T.any(Hanzoai::Models::BudgetNew::ModelMaxBudget, Hanzoai::Internal::AnyHash)]), + model_max_budget: + T.nilable( + T::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget::OrHash] + ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Max duration budget should be set for (e.g. '1hr', '1d', '28d') @@ -67,25 +73,30 @@ module Hanzoai soft_budget: nil, # Max tokens per minute, allowed for this budget id. tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget]), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: + T.nilable(T::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -104,23 +115,28 @@ module Hanzoai max_budget: T.nilable(Float), rpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + budget_duration: nil, + max_budget: nil, + rpm_limit: nil, + tpm_limit: nil + ) end - def self.new(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil); end sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - rpm_limit: T.nilable(Integer), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + rpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/budget_settings_params.rbi b/rbi/hanzoai/models/budget_settings_params.rbi index 39ef7fef..a6ec68c7 100644 --- a/rbi/hanzoai/models/budget_settings_params.rbi +++ b/rbi/hanzoai/models/budget_settings_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :budget_id sig do - params(budget_id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + budget_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(budget_id:, request_options: {}) end - def self.new(budget_id:, request_options: {}); end - sig { override.returns({budget_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { budget_id: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/budget_settings_response.rbi b/rbi/hanzoai/models/budget_settings_response.rbi index 01ee1026..baf829ea 100644 --- a/rbi/hanzoai/models/budget_settings_response.rbi +++ b/rbi/hanzoai/models/budget_settings_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - BudgetSettingsResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + BudgetSettingsResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/budget_update_params.rbi b/rbi/hanzoai/models/budget_update_params.rbi index 658ec2f4..dc98ed44 100644 --- a/rbi/hanzoai/models/budget_update_params.rbi +++ b/rbi/hanzoai/models/budget_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi b/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi index 1549a299..f9e87fee 100644 --- a/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi b/rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi index 447a8383..6362b7e7 100644 --- a/rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi +++ b/rbi/hanzoai/models/cache/redi_retrieve_info_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Cache - RediRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + RediRetrieveInfoResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/cache_delete_params.rbi b/rbi/hanzoai/models/cache_delete_params.rbi index 32780b6d..00a7688a 100644 --- a/rbi/hanzoai/models/cache_delete_params.rbi +++ b/rbi/hanzoai/models/cache_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cache_flush_all_params.rbi b/rbi/hanzoai/models/cache_flush_all_params.rbi index 1ee43962..4d99e73f 100644 --- a/rbi/hanzoai/models/cache_flush_all_params.rbi +++ b/rbi/hanzoai/models/cache_flush_all_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cache_flush_all_response.rbi b/rbi/hanzoai/models/cache_flush_all_response.rbi index 61c3aeb6..e9d31cc2 100644 --- a/rbi/hanzoai/models/cache_flush_all_response.rbi +++ b/rbi/hanzoai/models/cache_flush_all_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CacheFlushAllResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CacheFlushAllResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/cache_ping_params.rbi b/rbi/hanzoai/models/cache_ping_params.rbi index ff40f0a4..4002d9ad 100644 --- a/rbi/hanzoai/models/cache_ping_params.rbi +++ b/rbi/hanzoai/models/cache_ping_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cache_ping_response.rbi b/rbi/hanzoai/models/cache_ping_response.rbi index 37b48a19..1e7fdcf2 100644 --- a/rbi/hanzoai/models/cache_ping_response.rbi +++ b/rbi/hanzoai/models/cache_ping_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class CachePingResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :cache_type @@ -29,8 +31,7 @@ module Hanzoai llm_cache_params: T.nilable(String), ping_response: T.nilable(T::Boolean), set_cache_response: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( cache_type:, @@ -39,21 +40,23 @@ module Hanzoai llm_cache_params: nil, ping_response: nil, set_cache_response: nil - ); end + ) + end + sig do - override - .returns( - { - cache_type: String, - status: String, - health_check_cache_params: T.nilable(T.anything), - llm_cache_params: T.nilable(String), - ping_response: T.nilable(T::Boolean), - set_cache_response: T.nilable(String) - } - ) + override.returns( + { + cache_type: String, + status: String, + health_check_cache_params: T.nilable(T.anything), + llm_cache_params: T.nilable(String), + ping_response: T.nilable(T::Boolean), + set_cache_response: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/chat/completion_create_params.rbi b/rbi/hanzoai/models/chat/completion_create_params.rbi index 2247bfad..8ed8cc6e 100644 --- a/rbi/hanzoai/models/chat/completion_create_params.rbi +++ b/rbi/hanzoai/models/chat/completion_create_params.rbi @@ -7,20 +7,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :model sig do params( model: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(model: nil, request_options: {}) end - def self.new(model: nil, request_options: {}); end - sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + model: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/chat/completion_create_response.rbi b/rbi/hanzoai/models/chat/completion_create_response.rbi index ee99b9e7..0e45cb80 100644 --- a/rbi/hanzoai/models/chat/completion_create_response.rbi +++ b/rbi/hanzoai/models/chat/completion_create_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Chat - CompletionCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CompletionCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/client_get_home_params.rbi b/rbi/hanzoai/models/client_get_home_params.rbi index fc0df592..65a5488b 100644 --- a/rbi/hanzoai/models/client_get_home_params.rbi +++ b/rbi/hanzoai/models/client_get_home_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cohere_create_params.rbi b/rbi/hanzoai/models/cohere_create_params.rbi index 18d5f3cf..2c9f8eda 100644 --- a/rbi/hanzoai/models/cohere_create_params.rbi +++ b/rbi/hanzoai/models/cohere_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cohere_delete_params.rbi b/rbi/hanzoai/models/cohere_delete_params.rbi index 381ed98e..89a7f57d 100644 --- a/rbi/hanzoai/models/cohere_delete_params.rbi +++ b/rbi/hanzoai/models/cohere_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cohere_modify_params.rbi b/rbi/hanzoai/models/cohere_modify_params.rbi index 82bbc989..bd558af3 100644 --- a/rbi/hanzoai/models/cohere_modify_params.rbi +++ b/rbi/hanzoai/models/cohere_modify_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cohere_retrieve_params.rbi b/rbi/hanzoai/models/cohere_retrieve_params.rbi index eb60e0df..248a6199 100644 --- a/rbi/hanzoai/models/cohere_retrieve_params.rbi +++ b/rbi/hanzoai/models/cohere_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/cohere_retrieve_response.rbi b/rbi/hanzoai/models/cohere_retrieve_response.rbi index d3dfddf3..f7d2d4ea 100644 --- a/rbi/hanzoai/models/cohere_retrieve_response.rbi +++ b/rbi/hanzoai/models/cohere_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CohereRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CohereRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/cohere_update_params.rbi b/rbi/hanzoai/models/cohere_update_params.rbi index 1b647171..8fa78385 100644 --- a/rbi/hanzoai/models/cohere_update_params.rbi +++ b/rbi/hanzoai/models/cohere_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/completion_create_params.rbi b/rbi/hanzoai/models/completion_create_params.rbi index 2e7c51e3..62fcdaea 100644 --- a/rbi/hanzoai/models/completion_create_params.rbi +++ b/rbi/hanzoai/models/completion_create_params.rbi @@ -6,20 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :model sig do params( model: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(model: nil, request_options: {}) end - def self.new(model: nil, request_options: {}); end - sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { model: T.nilable(String), request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/completion_create_response.rbi b/rbi/hanzoai/models/completion_create_response.rbi index cc5375a4..7c96a785 100644 --- a/rbi/hanzoai/models/completion_create_response.rbi +++ b/rbi/hanzoai/models/completion_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CompletionCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CompletionCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi index eeeaef41..d8c8a13d 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi index 51506f76..1a4da98d 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_create_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Config - PassThroughEndpointCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + PassThroughEndpointCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi index fb78a196..0130c53f 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi @@ -7,20 +7,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :endpoint_id sig do params( endpoint_id: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(endpoint_id:, request_options: {}) end - def self.new(endpoint_id:, request_options: {}); end - sig { override.returns({endpoint_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { endpoint_id: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi index cb9238ee..47b45126 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi @@ -7,20 +7,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :endpoint_id sig do params( endpoint_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(endpoint_id: nil, request_options: {}) end - def self.new(endpoint_id: nil, request_options: {}); end - sig { override.returns({endpoint_id: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + endpoint_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi index 9f7be0fb..6f9be789 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi @@ -4,19 +4,27 @@ module Hanzoai module Models module Config class PassThroughEndpointResponse < Hanzoai::Internal::Type::BaseModel - sig { returns(T::Array[Hanzoai::Models::Config::PassThroughGenericEndpoint]) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig { returns(T::Array[Hanzoai::Config::PassThroughGenericEndpoint]) } attr_accessor :endpoints sig do params( - endpoints: T::Array[T.any(Hanzoai::Models::Config::PassThroughGenericEndpoint, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + endpoints: + T::Array[Hanzoai::Config::PassThroughGenericEndpoint::OrHash] + ).returns(T.attached_class) + end + def self.new(endpoints:) end - def self.new(endpoints:); end - sig { override.returns({endpoints: T::Array[Hanzoai::Models::Config::PassThroughGenericEndpoint]}) } - def to_hash; end + sig do + override.returns( + { endpoints: T::Array[Hanzoai::Config::PassThroughGenericEndpoint] } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi index 00416df2..aa28b774 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi index 34f78725..322c48d1 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_update_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Config - PassThroughEndpointUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + PassThroughEndpointUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi b/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi index dce13d47..a9c87ade 100644 --- a/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi +++ b/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi @@ -4,6 +4,8 @@ module Hanzoai module Models module Config class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Key-value pairs of headers to be forwarded with the request. You can set any key # value pair here and it will be forwarded to your target endpoint sig { returns(T.anything) } @@ -17,7 +19,11 @@ module Hanzoai sig { returns(String) } attr_accessor :target - sig { params(headers: T.anything, path: String, target: String).returns(T.attached_class) } + sig do + params(headers: T.anything, path: String, target: String).returns( + T.attached_class + ) + end def self.new( # Key-value pairs of headers to be forwarded with the request. You can set any key # value pair here and it will be forwarded to your target endpoint @@ -26,9 +32,16 @@ module Hanzoai path:, # The URL to which requests for this path should be forwarded. target: - ); end - sig { override.returns({headers: T.anything, path: String, target: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { headers: T.anything, path: String, target: String } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi b/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi index e84d3df1..fe8a8524 100644 --- a/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi +++ b/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi @@ -3,14 +3,18 @@ module Hanzoai module Models class ConfigurableClientsideParamsCustomAuth < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :api_base sig { params(api_base: String).returns(T.attached_class) } - def self.new(api_base:); end + def self.new(api_base:) + end - sig { override.returns({api_base: String}) } - def to_hash; end + sig { override.returns({ api_base: String }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/credential_create_params.rbi b/rbi/hanzoai/models/credential_create_params.rbi index 019cdab4..dc718a7f 100644 --- a/rbi/hanzoai/models/credential_create_params.rbi +++ b/rbi/hanzoai/models/credential_create_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.anything) } attr_accessor :credential_info @@ -24,9 +26,8 @@ module Hanzoai credential_name: String, credential_values: T.nilable(T.anything), model_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( credential_info:, @@ -38,18 +39,18 @@ module Hanzoai end sig do - override - .returns( - { - credential_info: T.anything, - credential_name: String, - credential_values: T.nilable(T.anything), - model_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + credential_info: T.anything, + credential_name: String, + credential_values: T.nilable(T.anything), + model_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/credential_create_response.rbi b/rbi/hanzoai/models/credential_create_response.rbi index c24bbaad..5d5c6eda 100644 --- a/rbi/hanzoai/models/credential_create_response.rbi +++ b/rbi/hanzoai/models/credential_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CredentialCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CredentialCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/credential_delete_params.rbi b/rbi/hanzoai/models/credential_delete_params.rbi index ece86dd7..3879a0da 100644 --- a/rbi/hanzoai/models/credential_delete_params.rbi +++ b/rbi/hanzoai/models/credential_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/credential_delete_response.rbi b/rbi/hanzoai/models/credential_delete_response.rbi index 732fe9b9..eeb36b41 100644 --- a/rbi/hanzoai/models/credential_delete_response.rbi +++ b/rbi/hanzoai/models/credential_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CredentialDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CredentialDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/credential_item.rbi b/rbi/hanzoai/models/credential_item.rbi index e9bf6de1..3e6da0eb 100644 --- a/rbi/hanzoai/models/credential_item.rbi +++ b/rbi/hanzoai/models/credential_item.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class CredentialItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.anything) } attr_accessor :credential_info @@ -13,10 +15,14 @@ module Hanzoai attr_accessor :credential_values sig do - params(credential_info: T.anything, credential_name: String, credential_values: T.anything) - .returns(T.attached_class) + params( + credential_info: T.anything, + credential_name: String, + credential_values: T.anything + ).returns(T.attached_class) + end + def self.new(credential_info:, credential_name:, credential_values:) end - def self.new(credential_info:, credential_name:, credential_values:); end sig do override.returns( @@ -27,7 +33,8 @@ module Hanzoai } ) end - def to_hash; end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/credential_list_params.rbi b/rbi/hanzoai/models/credential_list_params.rbi index 89d44c87..018d194e 100644 --- a/rbi/hanzoai/models/credential_list_params.rbi +++ b/rbi/hanzoai/models/credential_list_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/credential_list_response.rbi b/rbi/hanzoai/models/credential_list_response.rbi index f4868fb1..266b9346 100644 --- a/rbi/hanzoai/models/credential_list_response.rbi +++ b/rbi/hanzoai/models/credential_list_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CredentialListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CredentialListResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/customer_block_params.rbi b/rbi/hanzoai/models/customer_block_params.rbi index a3b57316..10a1f338 100644 --- a/rbi/hanzoai/models/customer_block_params.rbi +++ b/rbi/hanzoai/models/customer_block_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/customer_block_response.rbi b/rbi/hanzoai/models/customer_block_response.rbi index 4ed809a0..3d29eacf 100644 --- a/rbi/hanzoai/models/customer_block_response.rbi +++ b/rbi/hanzoai/models/customer_block_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CustomerBlockResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CustomerBlockResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/customer_create_params.rbi b/rbi/hanzoai/models/customer_create_params.rbi index 5e5678a7..22979c51 100644 --- a/rbi/hanzoai/models/customer_create_params.rbi +++ b/rbi/hanzoai/models/customer_create_params.rbi @@ -6,13 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :user_id sig { returns(T.nilable(String)) } attr_accessor :alias_ - sig { returns(T.nilable(Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::OrSymbol)) } + sig do + returns( + T.nilable(Hanzoai::CustomerCreateParams::AllowedModelRegion::OrSymbol) + ) + end attr_accessor :allowed_model_region sig { returns(T.nilable(T::Boolean)) } @@ -41,7 +47,13 @@ module Hanzoai # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) - sig { returns(T.nilable(T::Hash[Symbol, Hanzoai::Models::CustomerCreateParams::ModelMaxBudget])) } + sig do + returns( + T.nilable( + T::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget] + ) + ) + end attr_accessor :model_max_budget # Max requests per minute, allowed for this budget id. @@ -60,22 +72,28 @@ module Hanzoai params( user_id: String, alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::OrSymbol), + allowed_model_region: + T.nilable( + Hanzoai::CustomerCreateParams::AllowedModelRegion::OrSymbol + ), blocked: T::Boolean, budget_duration: T.nilable(String), budget_id: T.nilable(String), default_model: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable( - T::Hash[Symbol, T.any(Hanzoai::Models::CustomerCreateParams::ModelMaxBudget, Hanzoai::Internal::AnyHash)] - ), + model_max_budget: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::CustomerCreateParams::ModelMaxBudget::OrHash + ] + ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( user_id:, @@ -100,44 +118,72 @@ module Hanzoai # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - user_id: String, - alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::OrSymbol), - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - default_model: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T::Hash[Symbol, Hanzoai::Models::CustomerCreateParams::ModelMaxBudget]), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + user_id: String, + alias_: T.nilable(String), + allowed_model_region: + T.nilable( + Hanzoai::CustomerCreateParams::AllowedModelRegion::OrSymbol + ), + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + default_model: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: + T.nilable( + T::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget] + ), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::CustomerCreateParams::AllowedModelRegion) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - EU = T.let(:eu, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol) - US = T.let(:us, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol) + EU = + T.let( + :eu, + Hanzoai::CustomerCreateParams::AllowedModelRegion::TaggedSymbol + ) + US = + T.let( + :us, + Hanzoai::CustomerCreateParams::AllowedModelRegion::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::CustomerCreateParams::AllowedModelRegion::TaggedSymbol + ] + ) + end + def self.values + end end class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -156,23 +202,28 @@ module Hanzoai max_budget: T.nilable(Float), rpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + budget_duration: nil, + max_budget: nil, + rpm_limit: nil, + tpm_limit: nil + ) end - def self.new(budget_duration: nil, max_budget: nil, rpm_limit: nil, tpm_limit: nil); end sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - rpm_limit: T.nilable(Integer), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + rpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/customer_create_response.rbi b/rbi/hanzoai/models/customer_create_response.rbi index 0ff338e1..2d32f073 100644 --- a/rbi/hanzoai/models/customer_create_response.rbi +++ b/rbi/hanzoai/models/customer_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CustomerCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CustomerCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/customer_delete_params.rbi b/rbi/hanzoai/models/customer_delete_params.rbi index 2052e32a..6297903d 100644 --- a/rbi/hanzoai/models/customer_delete_params.rbi +++ b/rbi/hanzoai/models/customer_delete_params.rbi @@ -6,20 +6,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :user_ids sig do params( user_ids: T::Array[String], - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(user_ids:, request_options: {}) end - def self.new(user_ids:, request_options: {}); end - sig { override.returns({user_ids: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + user_ids: T::Array[String], + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/customer_delete_response.rbi b/rbi/hanzoai/models/customer_delete_response.rbi index ae7c1b16..c227ea29 100644 --- a/rbi/hanzoai/models/customer_delete_response.rbi +++ b/rbi/hanzoai/models/customer_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CustomerDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CustomerDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/customer_list_params.rbi b/rbi/hanzoai/models/customer_list_params.rbi index 1de860a7..714ffe24 100644 --- a/rbi/hanzoai/models/customer_list_params.rbi +++ b/rbi/hanzoai/models/customer_list_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/customer_list_response.rbi b/rbi/hanzoai/models/customer_list_response.rbi index 4b3f11c1..4d629594 100644 --- a/rbi/hanzoai/models/customer_list_response.rbi +++ b/rbi/hanzoai/models/customer_list_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Boolean) } attr_accessor :blocked @@ -12,21 +14,33 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :alias_ - sig { returns(T.nilable(Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol)) } + sig do + returns( + T.nilable( + Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol + ) + ) + end attr_accessor :allowed_model_region sig { returns(T.nilable(String)) } attr_accessor :default_model # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable)) } + sig do + returns( + T.nilable(Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable(T.any(Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, Hanzoai::Internal::AnyHash)) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table @@ -41,12 +55,17 @@ module Hanzoai blocked: T::Boolean, user_id: String, alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::OrSymbol), + allowed_model_region: + T.nilable( + Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::OrSymbol + ), default_model: T.nilable(String), - llm_budget_table: T.nilable(T.any(Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, Hanzoai::Internal::AnyHash)), + llm_budget_table: + T.nilable( + Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable::OrHash + ), spend: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( blocked:, @@ -57,38 +76,68 @@ module Hanzoai # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil - ); end + ) + end + sig do - override - .returns( - { - blocked: T::Boolean, - user_id: String, - alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol), - default_model: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable), - spend: Float - } - ) + override.returns( + { + blocked: T::Boolean, + user_id: String, + alias_: T.nilable(String), + allowed_model_region: + T.nilable( + Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol + ), + default_model: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable + ), + spend: Float + } + ) + end + def to_hash end - def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion) } + T.type_alias do + T.all( + Symbol, + Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - EU = T.let(:eu, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol) - US = T.let(:us, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol) + EU = + T.let( + :eu, + Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol + ) + US = + T.let( + :us, + Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol + ] + ) + end + def self.values + end end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -120,8 +169,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -131,28 +179,32 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end CustomerListResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::CustomerListResponseItem], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Models::CustomerListResponseItem + ], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/customer_retrieve_info_params.rbi b/rbi/hanzoai/models/customer_retrieve_info_params.rbi index 52417036..cc6947bb 100644 --- a/rbi/hanzoai/models/customer_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/customer_retrieve_info_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # End User ID in the request parameters sig { returns(String) } attr_accessor :end_user_id @@ -13,17 +15,23 @@ module Hanzoai sig do params( end_user_id: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # End User ID in the request parameters end_user_id:, request_options: {} - ); end - sig { override.returns({end_user_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { end_user_id: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/customer_retrieve_info_response.rbi b/rbi/hanzoai/models/customer_retrieve_info_response.rbi index c4e38a4e..88a2d9ae 100644 --- a/rbi/hanzoai/models/customer_retrieve_info_response.rbi +++ b/rbi/hanzoai/models/customer_retrieve_info_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Boolean) } attr_accessor :blocked @@ -12,23 +14,35 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :alias_ - sig { returns(T.nilable(Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol)) } + sig do + returns( + T.nilable( + Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol + ) + ) + end attr_accessor :allowed_model_region sig { returns(T.nilable(String)) } attr_accessor :default_model # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table @@ -43,14 +57,17 @@ module Hanzoai blocked: T::Boolean, user_id: String, alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::OrSymbol), + allowed_model_region: + T.nilable( + Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::OrSymbol + ), default_model: T.nilable(String), - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable::OrHash + ), spend: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( blocked:, @@ -61,40 +78,68 @@ module Hanzoai # Represents user-controllable params for a LLM_BudgetTable record llm_budget_table: nil, spend: nil - ); end + ) + end + sig do - override - .returns( - { - blocked: T::Boolean, - user_id: String, - alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol), - default_model: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable), - spend: Float - } - ) + override.returns( + { + blocked: T::Boolean, + user_id: String, + alias_: T.nilable(String), + allowed_model_region: + T.nilable( + Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol + ), + default_model: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable + ), + spend: Float + } + ) + end + def to_hash end - def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion) } + T.type_alias do + T.all( + Symbol, + Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - EU = T.let(:eu, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol) - US = T.let(:us, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol) + EU = + T.let( + :eu, + Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol + ) + US = + T.let( + :us, + Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol + ) sig do - override.returns(T::Array[Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol]) + override.returns( + T::Array[ + Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -126,8 +171,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -137,22 +181,24 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/customer_unblock_params.rbi b/rbi/hanzoai/models/customer_unblock_params.rbi index 2ebcd38c..960412a8 100644 --- a/rbi/hanzoai/models/customer_unblock_params.rbi +++ b/rbi/hanzoai/models/customer_unblock_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/customer_unblock_response.rbi b/rbi/hanzoai/models/customer_unblock_response.rbi index 58c9ea40..8920948c 100644 --- a/rbi/hanzoai/models/customer_unblock_response.rbi +++ b/rbi/hanzoai/models/customer_unblock_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CustomerUnblockResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CustomerUnblockResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/customer_update_params.rbi b/rbi/hanzoai/models/customer_update_params.rbi index 78a99893..7d97a5cf 100644 --- a/rbi/hanzoai/models/customer_update_params.rbi +++ b/rbi/hanzoai/models/customer_update_params.rbi @@ -6,13 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :user_id sig { returns(T.nilable(String)) } attr_accessor :alias_ - sig { returns(T.nilable(Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::OrSymbol)) } + sig do + returns( + T.nilable(Hanzoai::CustomerUpdateParams::AllowedModelRegion::OrSymbol) + ) + end attr_accessor :allowed_model_region sig { returns(T.nilable(T::Boolean)) } @@ -34,14 +40,16 @@ module Hanzoai params( user_id: String, alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::OrSymbol), + allowed_model_region: + T.nilable( + Hanzoai::CustomerUpdateParams::AllowedModelRegion::OrSymbol + ), blocked: T::Boolean, budget_id: T.nilable(String), default_model: T.nilable(String), max_budget: T.nilable(Float), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( user_id:, @@ -52,35 +60,58 @@ module Hanzoai default_model: nil, max_budget: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - user_id: String, - alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::OrSymbol), - blocked: T::Boolean, - budget_id: T.nilable(String), - default_model: T.nilable(String), - max_budget: T.nilable(Float), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + user_id: String, + alias_: T.nilable(String), + allowed_model_region: + T.nilable( + Hanzoai::CustomerUpdateParams::AllowedModelRegion::OrSymbol + ), + blocked: T::Boolean, + budget_id: T.nilable(String), + default_model: T.nilable(String), + max_budget: T.nilable(Float), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::CustomerUpdateParams::AllowedModelRegion) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - EU = T.let(:eu, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol) - US = T.let(:us, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol) + EU = + T.let( + :eu, + Hanzoai::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol + ) + US = + T.let( + :us, + Hanzoai::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::CustomerUpdateParams::AllowedModelRegion::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/customer_update_response.rbi b/rbi/hanzoai/models/customer_update_response.rbi index d7ccf3d0..ba22bf70 100644 --- a/rbi/hanzoai/models/customer_update_response.rbi +++ b/rbi/hanzoai/models/customer_update_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - CustomerUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CustomerUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi b/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi index 830e28cc..d8686c07 100644 --- a/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi +++ b/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/delete_create_allowed_ip_response.rbi b/rbi/hanzoai/models/delete_create_allowed_ip_response.rbi index e926131b..88764306 100644 --- a/rbi/hanzoai/models/delete_create_allowed_ip_response.rbi +++ b/rbi/hanzoai/models/delete_create_allowed_ip_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - DeleteCreateAllowedIPResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + DeleteCreateAllowedIPResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/embedding_create_params.rbi b/rbi/hanzoai/models/embedding_create_params.rbi index 64815e05..6cd8adc3 100644 --- a/rbi/hanzoai/models/embedding_create_params.rbi +++ b/rbi/hanzoai/models/embedding_create_params.rbi @@ -6,20 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :model sig do params( model: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(model: nil, request_options: {}) end - def self.new(model: nil, request_options: {}); end - sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { model: T.nilable(String), request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/embedding_create_response.rbi b/rbi/hanzoai/models/embedding_create_response.rbi index 3a178d08..1fa20133 100644 --- a/rbi/hanzoai/models/embedding_create_response.rbi +++ b/rbi/hanzoai/models/embedding_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - EmbeddingCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + EmbeddingCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/engine_complete_params.rbi b/rbi/hanzoai/models/engine_complete_params.rbi index 5c619344..1fe50ac1 100644 --- a/rbi/hanzoai/models/engine_complete_params.rbi +++ b/rbi/hanzoai/models/engine_complete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/engine_complete_response.rbi b/rbi/hanzoai/models/engine_complete_response.rbi index 60662404..a81ef8c0 100644 --- a/rbi/hanzoai/models/engine_complete_response.rbi +++ b/rbi/hanzoai/models/engine_complete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - EngineCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + EngineCompleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/engine_embed_params.rbi b/rbi/hanzoai/models/engine_embed_params.rbi index fe3c7b0e..58d7a341 100644 --- a/rbi/hanzoai/models/engine_embed_params.rbi +++ b/rbi/hanzoai/models/engine_embed_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/engines/chat_complete_params.rbi b/rbi/hanzoai/models/engines/chat_complete_params.rbi index 4a81a9ec..4889aeed 100644 --- a/rbi/hanzoai/models/engines/chat_complete_params.rbi +++ b/rbi/hanzoai/models/engines/chat_complete_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/engines/chat_complete_response.rbi b/rbi/hanzoai/models/engines/chat_complete_response.rbi index f500faad..c1bcf513 100644 --- a/rbi/hanzoai/models/engines/chat_complete_response.rbi +++ b/rbi/hanzoai/models/engines/chat_complete_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Engines - ChatCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ChatCompleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/eu_assemblyai_create_params.rbi b/rbi/hanzoai/models/eu_assemblyai_create_params.rbi index bd3dbd6a..b831a7fe 100644 --- a/rbi/hanzoai/models/eu_assemblyai_create_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/eu_assemblyai_create_response.rbi b/rbi/hanzoai/models/eu_assemblyai_create_response.rbi index 751a3cfa..c9e95c5f 100644 --- a/rbi/hanzoai/models/eu_assemblyai_create_response.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - EuAssemblyaiCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + EuAssemblyaiCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi b/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi index fb79c3c0..ab4a8b06 100644 --- a/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/eu_assemblyai_delete_response.rbi b/rbi/hanzoai/models/eu_assemblyai_delete_response.rbi index 963bb33e..4c858f71 100644 --- a/rbi/hanzoai/models/eu_assemblyai_delete_response.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - EuAssemblyaiDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + EuAssemblyaiDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi b/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi index 6a097ccb..1c854ca4 100644 --- a/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/eu_assemblyai_patch_response.rbi b/rbi/hanzoai/models/eu_assemblyai_patch_response.rbi index 8780bcd8..e9f2c2ad 100644 --- a/rbi/hanzoai/models/eu_assemblyai_patch_response.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_patch_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - EuAssemblyaiPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + EuAssemblyaiPatchResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi b/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi index eebee6e0..c95c5b13 100644 --- a/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi b/rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi index c2576f7b..c9ec60f6 100644 --- a/rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - EuAssemblyaiRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + EuAssemblyaiRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/eu_assemblyai_update_params.rbi b/rbi/hanzoai/models/eu_assemblyai_update_params.rbi index 8fb3b66e..bc40ed50 100644 --- a/rbi/hanzoai/models/eu_assemblyai_update_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/eu_assemblyai_update_response.rbi b/rbi/hanzoai/models/eu_assemblyai_update_response.rbi index 62d32e31..4e77e2dc 100644 --- a/rbi/hanzoai/models/eu_assemblyai_update_response.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_update_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - EuAssemblyaiUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + EuAssemblyaiUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/file_create_params.rbi b/rbi/hanzoai/models/file_create_params.rbi index 440e8f9d..e6a7efeb 100644 --- a/rbi/hanzoai/models/file_create_params.rbi +++ b/rbi/hanzoai/models/file_create_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } attr_accessor :file @@ -23,24 +25,29 @@ module Hanzoai file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), purpose: String, custom_llm_provider: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + file:, + purpose:, + custom_llm_provider: nil, + request_options: {} + ) end - def self.new(file:, purpose:, custom_llm_provider: nil, request_options: {}); end sig do - override - .returns( - { - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), - purpose: String, - custom_llm_provider: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + purpose: String, + custom_llm_provider: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/file_delete_params.rbi b/rbi/hanzoai/models/file_delete_params.rbi index b648dded..b90d6f18 100644 --- a/rbi/hanzoai/models/file_delete_params.rbi +++ b/rbi/hanzoai/models/file_delete_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :provider sig do - params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider:, request_options: {}) end - def self.new(provider:, request_options: {}); end - sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { provider: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/file_list_params.rbi b/rbi/hanzoai/models/file_list_params.rbi index 52677c1a..807ede2e 100644 --- a/rbi/hanzoai/models/file_list_params.rbi +++ b/rbi/hanzoai/models/file_list_params.rbi @@ -6,20 +6,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :purpose sig do params( purpose: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(purpose: nil, request_options: {}) end - def self.new(purpose: nil, request_options: {}); end - sig { override.returns({purpose: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + purpose: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/file_retrieve_params.rbi b/rbi/hanzoai/models/file_retrieve_params.rbi index a91ea1e1..69481e19 100644 --- a/rbi/hanzoai/models/file_retrieve_params.rbi +++ b/rbi/hanzoai/models/file_retrieve_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :provider sig do - params(provider: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider:, request_options: {}) end - def self.new(provider:, request_options: {}); end - sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { provider: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/files/content_retrieve_params.rbi b/rbi/hanzoai/models/files/content_retrieve_params.rbi index 2c7f22e9..584c1ca3 100644 --- a/rbi/hanzoai/models/files/content_retrieve_params.rbi +++ b/rbi/hanzoai/models/files/content_retrieve_params.rbi @@ -7,20 +7,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :provider sig do params( provider: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(provider:, request_options: {}) end - def self.new(provider:, request_options: {}); end - sig { override.returns({provider: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { provider: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/files/content_retrieve_response.rbi b/rbi/hanzoai/models/files/content_retrieve_response.rbi index f7acfe44..46efc5b2 100644 --- a/rbi/hanzoai/models/files/content_retrieve_response.rbi +++ b/rbi/hanzoai/models/files/content_retrieve_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Files - ContentRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ContentRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi index 906c6a63..ebee9dff 100644 --- a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig do + returns( + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol + ) + end attr_accessor :custom_llm_provider sig { returns(String) } @@ -16,16 +22,20 @@ module Hanzoai sig { returns(String) } attr_accessor :training_file - sig { returns(T.nilable(Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters)) } + sig do + returns( + T.nilable(Hanzoai::FineTuning::JobCreateParams::Hyperparameters) + ) + end attr_reader :hyperparameters sig do params( - hyperparameters: T.nilable( - T.any(Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, Hanzoai::Internal::AnyHash) - ) - ) - .void + hyperparameters: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::OrHash + ) + ).void end attr_writer :hyperparameters @@ -43,19 +53,20 @@ module Hanzoai sig do params( - custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, + custom_llm_provider: + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, model: String, training_file: String, - hyperparameters: T.nilable( - T.any(Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, Hanzoai::Internal::AnyHash) - ), + hyperparameters: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::OrHash + ), integrations: T.nilable(T::Array[String]), seed: T.nilable(Integer), suffix: T.nilable(String), validation_file: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( custom_llm_provider:, @@ -67,42 +78,74 @@ module Hanzoai suffix: nil, validation_file: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, - model: String, - training_file: String, - hyperparameters: T.nilable(Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters), - integrations: T.nilable(T::Array[String]), - seed: T.nilable(Integer), - suffix: T.nilable(String), - validation_file: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + custom_llm_provider: + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, + model: String, + training_file: String, + hyperparameters: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters + ), + integrations: T.nilable(T::Array[String]), + seed: T.nilable(Integer), + suffix: T.nilable(String), + validation_file: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module CustomLlmProvider extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider) } + T.type_alias do + T.all( + Symbol, + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - OPENAI = T.let(:openai, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol) - AZURE = T.let(:azure, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol) + OPENAI = + T.let( + :openai, + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol + ) + AZURE = + T.let( + :azure, + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol + ) VERTEX_AI = - T.let(:vertex_ai, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol) + T.let( + :vertex_ai, + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol + ] + ) + end + def self.values + end end class Hyperparameters < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.any(String, Integer))) } attr_accessor :batch_size @@ -117,42 +160,73 @@ module Hanzoai batch_size: T.nilable(T.any(String, Integer)), learning_rate_multiplier: T.nilable(T.any(String, Float)), n_epochs: T.nilable(T.any(String, Integer)) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + batch_size: nil, + learning_rate_multiplier: nil, + n_epochs: nil + ) end - def self.new(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil); end sig do - override - .returns( - { - batch_size: T.nilable(T.any(String, Integer)), - learning_rate_multiplier: T.nilable(T.any(String, Float)), - n_epochs: T.nilable(T.any(String, Integer)) - } - ) + override.returns( + { + batch_size: T.nilable(T.any(String, Integer)), + learning_rate_multiplier: T.nilable(T.any(String, Float)), + n_epochs: T.nilable(T.any(String, Integer)) + } + ) + end + def to_hash end - def to_hash; end module BatchSize extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Integer) } + + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end end module LearningRateMultiplier extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float) } + + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end end module NEpochs extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Integer) } + + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/fine_tuning/job_list_params.rbi b/rbi/hanzoai/models/fine_tuning/job_list_params.rbi index e54004a6..fd3985b6 100644 --- a/rbi/hanzoai/models/fine_tuning/job_list_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_list_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::OrSymbol) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig do + returns( + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol + ) + end attr_accessor :custom_llm_provider sig { returns(T.nilable(String)) } @@ -18,40 +24,67 @@ module Hanzoai sig do params( - custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, + custom_llm_provider: + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, after: T.nilable(String), limit: T.nilable(Integer), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + custom_llm_provider:, + after: nil, + limit: nil, + request_options: {} + ) end - def self.new(custom_llm_provider:, after: nil, limit: nil, request_options: {}); end sig do - override - .returns( - { - custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, - after: T.nilable(String), - limit: T.nilable(Integer), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + custom_llm_provider: + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, + after: T.nilable(String), + limit: T.nilable(Integer), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module CustomLlmProvider extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider) } + T.type_alias do + T.all( + Symbol, + Hanzoai::FineTuning::JobListParams::CustomLlmProvider + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - OPENAI = T.let(:openai, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol) - AZURE = T.let(:azure, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol) + OPENAI = + T.let( + :openai, + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol + ) + AZURE = + T.let( + :azure, + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi b/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi index 757e64f8..7147fa35 100644 --- a/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi @@ -7,43 +7,69 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig do + returns( + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol + ) + end attr_accessor :custom_llm_provider sig do params( - custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + custom_llm_provider: + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(custom_llm_provider:, request_options: {}) end - def self.new(custom_llm_provider:, request_options: {}); end sig do - override - .returns( - { - custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + custom_llm_provider: + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module CustomLlmProvider extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider) } + T.type_alias do + T.all( + Symbol, + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - OPENAI = T.let(:openai, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol) - AZURE = T.let(:azure, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol) + OPENAI = + T.let( + :openai, + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol + ) + AZURE = + T.let( + :azure, + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol + ) sig do - override.returns(T::Array[Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol]) + override.returns( + T::Array[ + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi b/rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi index 485020a4..384a6051 100644 --- a/rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_retrieve_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module FineTuning - JobRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + JobRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi index 4b3b6000..d07c47ef 100644 --- a/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi @@ -8,14 +8,20 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi index 1fab3cd8..b2770358 100644 --- a/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi +++ b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_response.rbi @@ -4,7 +4,8 @@ module Hanzoai module Models module FineTuning module Jobs - CancelCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CancelCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/gemini_create_params.rbi b/rbi/hanzoai/models/gemini_create_params.rbi index 1a6b7873..3ad224d0 100644 --- a/rbi/hanzoai/models/gemini_create_params.rbi +++ b/rbi/hanzoai/models/gemini_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/gemini_delete_params.rbi b/rbi/hanzoai/models/gemini_delete_params.rbi index f30833ba..67f9855c 100644 --- a/rbi/hanzoai/models/gemini_delete_params.rbi +++ b/rbi/hanzoai/models/gemini_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/gemini_patch_params.rbi b/rbi/hanzoai/models/gemini_patch_params.rbi index f884984f..ff634575 100644 --- a/rbi/hanzoai/models/gemini_patch_params.rbi +++ b/rbi/hanzoai/models/gemini_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/gemini_retrieve_params.rbi b/rbi/hanzoai/models/gemini_retrieve_params.rbi index 702724ee..2b5a61d4 100644 --- a/rbi/hanzoai/models/gemini_retrieve_params.rbi +++ b/rbi/hanzoai/models/gemini_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/gemini_retrieve_response.rbi b/rbi/hanzoai/models/gemini_retrieve_response.rbi index f9d82240..f3947822 100644 --- a/rbi/hanzoai/models/gemini_retrieve_response.rbi +++ b/rbi/hanzoai/models/gemini_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - GeminiRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + GeminiRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/gemini_update_params.rbi b/rbi/hanzoai/models/gemini_update_params.rbi index 99cf278b..7762e708 100644 --- a/rbi/hanzoai/models/gemini_update_params.rbi +++ b/rbi/hanzoai/models/gemini_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/generate_key_response.rbi b/rbi/hanzoai/models/generate_key_response.rbi index 0d7926d0..b4d9de8f 100644 --- a/rbi/hanzoai/models/generate_key_response.rbi +++ b/rbi/hanzoai/models/generate_key_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(Time)) } attr_accessor :expires @@ -136,8 +138,7 @@ module Hanzoai tpm_limit: T.nilable(Integer), updated_by: T.nilable(String), user_id: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( expires:, @@ -172,47 +173,49 @@ module Hanzoai tpm_limit: nil, updated_by: nil, user_id: nil - ); end + ) + end + sig do - override - .returns( - { - expires: T.nilable(Time), - key: String, - token: T.nilable(String), - aliases: T.nilable(T.anything), - allowed_cache_controls: T.nilable(T::Array[T.anything]), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - config: T.nilable(T.anything), - created_by: T.nilable(String), - duration: T.nilable(String), - enforced_params: T.nilable(T::Array[String]), - guardrails: T.nilable(T::Array[String]), - key_alias: T.nilable(String), - key_name: T.nilable(String), - llm_budget_table: T.anything, - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - tags: T.nilable(T::Array[String]), - team_id: T.nilable(String), - token_id: T.nilable(String), - tpm_limit: T.nilable(Integer), - updated_by: T.nilable(String), - user_id: T.nilable(String) - } - ) + override.returns( + { + expires: T.nilable(Time), + key: String, + token: T.nilable(String), + aliases: T.nilable(T.anything), + allowed_cache_controls: T.nilable(T::Array[T.anything]), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + config: T.nilable(T.anything), + created_by: T.nilable(String), + duration: T.nilable(String), + enforced_params: T.nilable(T::Array[String]), + guardrails: T.nilable(T::Array[String]), + key_alias: T.nilable(String), + key_name: T.nilable(String), + llm_budget_table: T.anything, + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_rpm_limit: T.nilable(T.anything), + model_tpm_limit: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + permissions: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + tags: T.nilable(T::Array[String]), + team_id: T.nilable(String), + token_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + updated_by: T.nilable(String), + user_id: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/global/spend_list_tags_params.rbi b/rbi/hanzoai/models/global/spend_list_tags_params.rbi index 449108bb..b6aebcde 100644 --- a/rbi/hanzoai/models/global/spend_list_tags_params.rbi +++ b/rbi/hanzoai/models/global/spend_list_tags_params.rbi @@ -7,6 +7,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Time till which to view key spend sig { returns(T.nilable(String)) } attr_accessor :end_date @@ -24,9 +26,8 @@ module Hanzoai end_date: T.nilable(String), start_date: T.nilable(String), tags: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Time till which to view key spend @@ -36,19 +37,21 @@ module Hanzoai # comman separated tags to filter on tags: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - end_date: T.nilable(String), - start_date: T.nilable(String), - tags: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + end_date: T.nilable(String), + start_date: T.nilable(String), + tags: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/global/spend_list_tags_response.rbi b/rbi/hanzoai/models/global/spend_list_tags_response.rbi index 0f711d16..aaf11ceb 100644 --- a/rbi/hanzoai/models/global/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/global/spend_list_tags_response.rbi @@ -4,6 +4,8 @@ module Hanzoai module Models module Global class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :api_key @@ -13,13 +15,17 @@ module Hanzoai sig { returns(T.nilable(T.any(String, Time))) } attr_accessor :end_time - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :messages sig { returns(String) } attr_accessor :request_id - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :response sig { returns(T.nilable(T.any(String, Time))) } @@ -72,9 +78,11 @@ module Hanzoai api_key: String, call_type: String, end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), + messages: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), + response: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), start_time: T.nilable(T.any(String, Time)), api_base: T.nilable(String), cache_hit: T.nilable(String), @@ -88,8 +96,7 @@ module Hanzoai spend: T.nilable(Float), total_tokens: T.nilable(Integer), user: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( api_key:, @@ -111,51 +118,76 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ); end + ) + end + sig do - override - .returns( - { - api_key: String, - call_type: String, - end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), - api_base: T.nilable(String), - cache_hit: T.nilable(String), - cache_key: T.nilable(String), - completion_tokens: T.nilable(Integer), - metadata: T.anything, - model: T.nilable(String), - prompt_tokens: T.nilable(Integer), - request_tags: T.anything, - requester_ip_address: T.nilable(String), - spend: T.nilable(Float), - total_tokens: T.nilable(Integer), - user: T.nilable(String) - } - ) + override.returns( + { + api_key: String, + call_type: String, + end_time: T.nilable(T.any(String, Time)), + messages: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + request_id: String, + response: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + start_time: T.nilable(T.any(String, Time)), + api_base: T.nilable(String), + cache_hit: T.nilable(String), + cache_key: T.nilable(String), + completion_tokens: T.nilable(Integer), + metadata: T.anything, + model: T.nilable(String), + prompt_tokens: T.nilable(Integer), + request_tags: T.anything, + requester_ip_address: T.nilable(String), + spend: T.nilable(Float), + total_tokens: T.nilable(Integer), + user: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendListTagsResponseItem::EndTime::Variants + ] + ) + end + def self.variants + end end module Messages extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendListTagsResponseItem::Messages::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], Hanzoai::Internal::Type::Converter ) end @@ -163,12 +195,24 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendListTagsResponseItem::Response::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], Hanzoai::Internal::Type::Converter ) end @@ -176,14 +220,25 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendListTagsResponseItem::StartTime::Variants + ] + ) + end + def self.variants + end end end SpendListTagsResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Global::SpendListTagsResponseItem], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Models::Global::SpendListTagsResponseItem + ], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/global/spend_reset_params.rbi b/rbi/hanzoai/models/global/spend_reset_params.rbi index ef706e2a..67a4861c 100644 --- a/rbi/hanzoai/models/global/spend_reset_params.rbi +++ b/rbi/hanzoai/models/global/spend_reset_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi index deef5e5a..45b425f4 100644 --- a/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi +++ b/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi @@ -7,6 +7,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # View spend for a specific api_key. Example api_key='sk-1234 sig { returns(T.nilable(String)) } attr_accessor :api_key @@ -21,7 +23,13 @@ module Hanzoai attr_accessor :end_date # Group spend by internal team or customer or api_key - sig { returns(T.nilable(Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::OrSymbol)) } + sig do + returns( + T.nilable( + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::OrSymbol + ) + ) + end attr_accessor :group_by # View spend for a specific internal_user_id. Example internal_user_id='1234 @@ -41,13 +49,15 @@ module Hanzoai api_key: T.nilable(String), customer_id: T.nilable(String), end_date: T.nilable(String), - group_by: T.nilable(Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::OrSymbol), + group_by: + T.nilable( + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::OrSymbol + ), internal_user_id: T.nilable(String), start_date: T.nilable(String), team_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # View spend for a specific api_key. Example api_key='sk-1234 @@ -66,38 +76,64 @@ module Hanzoai # View spend for a specific team_id. Example team_id='1234 team_id: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - api_key: T.nilable(String), - customer_id: T.nilable(String), - end_date: T.nilable(String), - group_by: T.nilable(Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::OrSymbol), - internal_user_id: T.nilable(String), - start_date: T.nilable(String), - team_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + api_key: T.nilable(String), + customer_id: T.nilable(String), + end_date: T.nilable(String), + group_by: + T.nilable( + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::OrSymbol + ), + internal_user_id: T.nilable(String), + start_date: T.nilable(String), + team_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Group spend by internal team or customer or api_key module GroupBy extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy) } + T.type_alias do + T.all(Symbol, Hanzoai::Global::SpendRetrieveReportParams::GroupBy) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEAM = T.let(:team, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol) - CUSTOMER = T.let(:customer, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol) - API_KEY = T.let(:api_key, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol) + TEAM = + T.let( + :team, + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol + ) + CUSTOMER = + T.let( + :customer, + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol + ) + API_KEY = + T.let( + :api_key, + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi index 20d4e636..9ba98697 100644 --- a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi +++ b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi @@ -4,6 +4,8 @@ module Hanzoai module Models module Global class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :api_key @@ -13,13 +15,17 @@ module Hanzoai sig { returns(T.nilable(T.any(String, Time))) } attr_accessor :end_time - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :messages sig { returns(String) } attr_accessor :request_id - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :response sig { returns(T.nilable(T.any(String, Time))) } @@ -72,9 +78,11 @@ module Hanzoai api_key: String, call_type: String, end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), + messages: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), + response: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), start_time: T.nilable(T.any(String, Time)), api_base: T.nilable(String), cache_hit: T.nilable(String), @@ -88,8 +96,7 @@ module Hanzoai spend: T.nilable(Float), total_tokens: T.nilable(Integer), user: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( api_key:, @@ -111,51 +118,76 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ); end + ) + end + sig do - override - .returns( - { - api_key: String, - call_type: String, - end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), - api_base: T.nilable(String), - cache_hit: T.nilable(String), - cache_key: T.nilable(String), - completion_tokens: T.nilable(Integer), - metadata: T.anything, - model: T.nilable(String), - prompt_tokens: T.nilable(Integer), - request_tags: T.anything, - requester_ip_address: T.nilable(String), - spend: T.nilable(Float), - total_tokens: T.nilable(Integer), - user: T.nilable(String) - } - ) + override.returns( + { + api_key: String, + call_type: String, + end_time: T.nilable(T.any(String, Time)), + messages: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + request_id: String, + response: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + start_time: T.nilable(T.any(String, Time)), + api_base: T.nilable(String), + cache_hit: T.nilable(String), + cache_key: T.nilable(String), + completion_tokens: T.nilable(Integer), + metadata: T.anything, + model: T.nilable(String), + prompt_tokens: T.nilable(Integer), + request_tags: T.anything, + requester_ip_address: T.nilable(String), + spend: T.nilable(Float), + total_tokens: T.nilable(Integer), + user: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::EndTime::Variants + ] + ) + end + def self.variants + end end module Messages extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Messages::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], Hanzoai::Internal::Type::Converter ) end @@ -163,12 +195,24 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Response::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], Hanzoai::Internal::Type::Converter ) end @@ -176,14 +220,25 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::StartTime::Variants + ] + ) + end + def self.variants + end end end SpendRetrieveReportResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Global::SpendRetrieveReportResponseItem], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Models::Global::SpendRetrieveReportResponseItem + ], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/guardrail_list_params.rbi b/rbi/hanzoai/models/guardrail_list_params.rbi index 176ec41e..fd30a63e 100644 --- a/rbi/hanzoai/models/guardrail_list_params.rbi +++ b/rbi/hanzoai/models/guardrail_list_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/guardrail_list_response.rbi b/rbi/hanzoai/models/guardrail_list_response.rbi index ba61ca44..3fbb8454 100644 --- a/rbi/hanzoai/models/guardrail_list_response.rbi +++ b/rbi/hanzoai/models/guardrail_list_response.rbi @@ -3,21 +3,36 @@ module Hanzoai module Models class GuardrailListResponse < Hanzoai::Internal::Type::BaseModel - sig { returns(T::Array[Hanzoai::Models::GuardrailListResponse::Guardrail]) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig do + returns(T::Array[Hanzoai::Models::GuardrailListResponse::Guardrail]) + end attr_accessor :guardrails sig do params( - guardrails: T::Array[T.any(Hanzoai::Models::GuardrailListResponse::Guardrail, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + guardrails: + T::Array[Hanzoai::Models::GuardrailListResponse::Guardrail::OrHash] + ).returns(T.attached_class) + end + def self.new(guardrails:) end - def self.new(guardrails:); end - sig { override.returns({guardrails: T::Array[Hanzoai::Models::GuardrailListResponse::Guardrail]}) } - def to_hash; end + sig do + override.returns( + { + guardrails: + T::Array[Hanzoai::Models::GuardrailListResponse::Guardrail] + } + ) + end + def to_hash + end class Guardrail < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.anything)) } attr_accessor :guardrail_info @@ -25,14 +40,16 @@ module Hanzoai attr_accessor :guardrail_name # The returned LLM Params object for /guardrails/list - sig { returns(Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams) } + sig do + returns(Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams) + end attr_reader :llm_params sig do params( - llm_params: T.any(Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams, Hanzoai::Internal::AnyHash) - ) - .void + llm_params: + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::OrHash + ).void end attr_writer :llm_params @@ -40,29 +57,35 @@ module Hanzoai params( guardrail_info: T.nilable(T.anything), guardrail_name: String, - llm_params: T.any(Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + llm_params: + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::OrHash + ).returns(T.attached_class) end def self.new( guardrail_info:, guardrail_name:, # The returned LLM Params object for /guardrails/list llm_params: - ); end + ) + end + sig do - override - .returns( - { - guardrail_info: T.nilable(T.anything), - guardrail_name: String, - llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams - } - ) + override.returns( + { + guardrail_info: T.nilable(T.anything), + guardrail_name: String, + llm_params: + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams + } + ) + end + def to_hash end - def to_hash; end class LlmParams < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :guardrail @@ -77,10 +100,14 @@ module Hanzoai # The returned LLM Params object for /guardrails/list sig do - params(guardrail: String, mode: T.any(String, T::Array[String]), default_on: T::Boolean) - .returns(T.attached_class) + params( + guardrail: String, + mode: T.any(String, T::Array[String]), + default_on: T::Boolean + ).returns(T.attached_class) + end + def self.new(guardrail:, mode:, default_on: nil) end - def self.new(guardrail:, mode:, default_on: nil); end sig do override.returns( @@ -91,15 +118,29 @@ module Hanzoai } ) end - def to_hash; end + def to_hash + end module Mode extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[String]]) } - def self.variants; end - - StringArray = T.let(Hanzoai::Internal::Type::ArrayOf[String], Hanzoai::Internal::Type::Converter) + Variants = T.type_alias { T.any(String, T::Array[String]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants + ] + ) + end + def self.variants + end + + StringArray = + T.let( + Hanzoai::Internal::Type::ArrayOf[String], + Hanzoai::Internal::Type::Converter + ) end end end diff --git a/rbi/hanzoai/models/health_check_all_params.rbi b/rbi/hanzoai/models/health_check_all_params.rbi index b62a1fd1..0a24953b 100644 --- a/rbi/hanzoai/models/health_check_all_params.rbi +++ b/rbi/hanzoai/models/health_check_all_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Specify the model name (optional) sig { returns(T.nilable(String)) } attr_accessor :model @@ -13,17 +15,23 @@ module Hanzoai sig do params( model: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Specify the model name (optional) model: nil, request_options: {} - ); end - sig { override.returns({model: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { model: T.nilable(String), request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/health_check_all_response.rbi b/rbi/hanzoai/models/health_check_all_response.rbi index a859cd99..ed09dced 100644 --- a/rbi/hanzoai/models/health_check_all_response.rbi +++ b/rbi/hanzoai/models/health_check_all_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - HealthCheckAllResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + HealthCheckAllResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/health_check_liveliness_params.rbi b/rbi/hanzoai/models/health_check_liveliness_params.rbi index 651273ba..35263a75 100644 --- a/rbi/hanzoai/models/health_check_liveliness_params.rbi +++ b/rbi/hanzoai/models/health_check_liveliness_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/health_check_liveliness_response.rbi b/rbi/hanzoai/models/health_check_liveliness_response.rbi index 6600eab2..35567e5a 100644 --- a/rbi/hanzoai/models/health_check_liveliness_response.rbi +++ b/rbi/hanzoai/models/health_check_liveliness_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - HealthCheckLivelinessResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + HealthCheckLivelinessResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/health_check_liveness_params.rbi b/rbi/hanzoai/models/health_check_liveness_params.rbi index 8396fc0a..d94ac353 100644 --- a/rbi/hanzoai/models/health_check_liveness_params.rbi +++ b/rbi/hanzoai/models/health_check_liveness_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/health_check_liveness_response.rbi b/rbi/hanzoai/models/health_check_liveness_response.rbi index e888ce3d..ba89e6a0 100644 --- a/rbi/hanzoai/models/health_check_liveness_response.rbi +++ b/rbi/hanzoai/models/health_check_liveness_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - HealthCheckLivenessResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + HealthCheckLivenessResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/health_check_readiness_params.rbi b/rbi/hanzoai/models/health_check_readiness_params.rbi index 120a1903..f79f496b 100644 --- a/rbi/hanzoai/models/health_check_readiness_params.rbi +++ b/rbi/hanzoai/models/health_check_readiness_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/health_check_readiness_response.rbi b/rbi/hanzoai/models/health_check_readiness_response.rbi index 3959e2d9..c24380f7 100644 --- a/rbi/hanzoai/models/health_check_readiness_response.rbi +++ b/rbi/hanzoai/models/health_check_readiness_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - HealthCheckReadinessResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + HealthCheckReadinessResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/health_check_services_params.rbi b/rbi/hanzoai/models/health_check_services_params.rbi index 2ced26b8..8c068489 100644 --- a/rbi/hanzoai/models/health_check_services_params.rbi +++ b/rbi/hanzoai/models/health_check_services_params.rbi @@ -6,52 +6,114 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Specify the service being hit. - sig { returns(T.any(Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String)) } + sig do + returns( + T.any(Hanzoai::HealthCheckServicesParams::Service::OrSymbol, String) + ) + end attr_accessor :service sig do params( - service: T.any(Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + service: + T.any( + Hanzoai::HealthCheckServicesParams::Service::OrSymbol, + String + ), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Specify the service being hit. service:, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - service: T.any(Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + service: + T.any( + Hanzoai::HealthCheckServicesParams::Service::OrSymbol, + String + ), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Specify the service being hit. module Service extend Hanzoai::Internal::Type::Union - sig { override.returns([Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol, String]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol, + String + ) + end - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::HealthCheckServicesParams::Service) } + sig do + override.returns( + T::Array[Hanzoai::HealthCheckServicesParams::Service::Variants] + ) + end + def self.variants + end + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::HealthCheckServicesParams::Service) + end OrSymbol = T.type_alias { T.any(Symbol, String) } SLACK_BUDGET_ALERTS = - T.let(:slack_budget_alerts, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) - LANGFUSE = T.let(:langfuse, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) - SLACK = T.let(:slack, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) - OPENMETER = T.let(:openmeter, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) - WEBHOOK = T.let(:webhook, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) - EMAIL = T.let(:email, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) - BRAINTRUST = T.let(:braintrust, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) - DATADOG = T.let(:datadog, Hanzoai::Models::HealthCheckServicesParams::Service::TaggedSymbol) + T.let( + :slack_budget_alerts, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + LANGFUSE = + T.let( + :langfuse, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + SLACK = + T.let( + :slack, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + OPENMETER = + T.let( + :openmeter, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + WEBHOOK = + T.let( + :webhook, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + EMAIL = + T.let( + :email, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + BRAINTRUST = + T.let( + :braintrust, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + DATADOG = + T.let( + :datadog, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) end end end diff --git a/rbi/hanzoai/models/health_check_services_response.rbi b/rbi/hanzoai/models/health_check_services_response.rbi index 37c38053..09e4ec17 100644 --- a/rbi/hanzoai/models/health_check_services_response.rbi +++ b/rbi/hanzoai/models/health_check_services_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - HealthCheckServicesResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + HealthCheckServicesResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/images/generation_create_params.rbi b/rbi/hanzoai/models/images/generation_create_params.rbi index 0fa3adc5..eaec4037 100644 --- a/rbi/hanzoai/models/images/generation_create_params.rbi +++ b/rbi/hanzoai/models/images/generation_create_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/images/generation_create_response.rbi b/rbi/hanzoai/models/images/generation_create_response.rbi index 6b4e01aa..d1f599a7 100644 --- a/rbi/hanzoai/models/images/generation_create_response.rbi +++ b/rbi/hanzoai/models/images/generation_create_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Images - GenerationCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + GenerationCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/ip_address.rbi b/rbi/hanzoai/models/ip_address.rbi index 7b6db37f..c0ea4943 100644 --- a/rbi/hanzoai/models/ip_address.rbi +++ b/rbi/hanzoai/models/ip_address.rbi @@ -3,14 +3,18 @@ module Hanzoai module Models class IPAddress < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :ip sig { params(ip: String).returns(T.attached_class) } - def self.new(ip:); end + def self.new(ip:) + end - sig { override.returns({ip: String}) } - def to_hash; end + sig { override.returns({ ip: String }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/key/regenerate_key_request.rbi b/rbi/hanzoai/models/key/regenerate_key_request.rbi index aac9271b..85d5e7eb 100644 --- a/rbi/hanzoai/models/key/regenerate_key_request.rbi +++ b/rbi/hanzoai/models/key/regenerate_key_request.rbi @@ -4,6 +4,8 @@ module Hanzoai module Models module Key class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.anything)) } attr_accessor :aliases @@ -118,8 +120,7 @@ module Hanzoai team_id: T.nilable(String), tpm_limit: T.nilable(Integer), user_id: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( aliases: nil, @@ -150,43 +151,45 @@ module Hanzoai team_id: nil, tpm_limit: nil, user_id: nil - ); end + ) + end + sig do - override - .returns( - { - aliases: T.nilable(T.anything), - allowed_cache_controls: T.nilable(T::Array[T.anything]), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - config: T.nilable(T.anything), - duration: T.nilable(String), - enforced_params: T.nilable(T::Array[String]), - guardrails: T.nilable(T::Array[String]), - key: T.nilable(String), - key_alias: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - new_master_key: T.nilable(String), - permissions: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - send_invite_email: T.nilable(T::Boolean), - soft_budget: T.nilable(Float), - spend: T.nilable(Float), - tags: T.nilable(T::Array[String]), - team_id: T.nilable(String), - tpm_limit: T.nilable(Integer), - user_id: T.nilable(String) - } - ) + override.returns( + { + aliases: T.nilable(T.anything), + allowed_cache_controls: T.nilable(T::Array[T.anything]), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + config: T.nilable(T.anything), + duration: T.nilable(String), + enforced_params: T.nilable(T::Array[String]), + guardrails: T.nilable(T::Array[String]), + key: T.nilable(String), + key_alias: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_rpm_limit: T.nilable(T.anything), + model_tpm_limit: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + new_master_key: T.nilable(String), + permissions: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + send_invite_email: T.nilable(T::Boolean), + soft_budget: T.nilable(Float), + spend: T.nilable(Float), + tags: T.nilable(T::Array[String]), + team_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + user_id: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/key_block_params.rbi b/rbi/hanzoai/models/key_block_params.rbi index 967bf2d2..67a3bb1c 100644 --- a/rbi/hanzoai/models/key_block_params.rbi +++ b/rbi/hanzoai/models/key_block_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } @@ -17,18 +19,24 @@ module Hanzoai sig do params( llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end - sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { llm_changed_by: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/key_block_response.rbi b/rbi/hanzoai/models/key_block_response.rbi index c3c6ca7c..e91e7c44 100644 --- a/rbi/hanzoai/models/key_block_response.rbi +++ b/rbi/hanzoai/models/key_block_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :token @@ -148,8 +150,7 @@ module Hanzoai updated_at: T.nilable(Time), updated_by: T.nilable(String), user_id: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( token: nil, @@ -181,50 +182,59 @@ module Hanzoai updated_at: nil, updated_by: nil, user_id: nil - ); end + ) + end + sig do - override - .returns( - { - token: T.nilable(String), - aliases: T.anything, - allowed_cache_controls: T.nilable(T::Array[T.anything]), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - config: T.anything, - created_at: T.nilable(Time), - created_by: T.nilable(String), - expires: T.nilable(T.any(String, Time)), - key_alias: T.nilable(String), - key_name: T.nilable(String), - llm_budget_table: T.nilable(T.anything), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.anything, - model_max_budget: T.anything, - model_spend: T.anything, - models: T::Array[T.anything], - org_id: T.nilable(String), - permissions: T.anything, - rpm_limit: T.nilable(Integer), - soft_budget_cooldown: T::Boolean, - spend: Float, - team_id: T.nilable(String), - tpm_limit: T.nilable(Integer), - updated_at: T.nilable(Time), - updated_by: T.nilable(String), - user_id: T.nilable(String) - } - ) + override.returns( + { + token: T.nilable(String), + aliases: T.anything, + allowed_cache_controls: T.nilable(T::Array[T.anything]), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + config: T.anything, + created_at: T.nilable(Time), + created_by: T.nilable(String), + expires: T.nilable(T.any(String, Time)), + key_alias: T.nilable(String), + key_name: T.nilable(String), + llm_budget_table: T.nilable(T.anything), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.anything, + model_max_budget: T.anything, + model_spend: T.anything, + models: T::Array[T.anything], + org_id: T.nilable(String), + permissions: T.anything, + rpm_limit: T.nilable(Integer), + soft_budget_cooldown: T::Boolean, + spend: Float, + team_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + updated_by: T.nilable(String), + user_id: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module Expires extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[Hanzoai::Models::KeyBlockResponse::Expires::Variants] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/key_check_health_params.rbi b/rbi/hanzoai/models/key_check_health_params.rbi index 69a92fea..3e7db172 100644 --- a/rbi/hanzoai/models/key_check_health_params.rbi +++ b/rbi/hanzoai/models/key_check_health_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/key_check_health_response.rbi b/rbi/hanzoai/models/key_check_health_response.rbi index 92320a49..e5758d24 100644 --- a/rbi/hanzoai/models/key_check_health_response.rbi +++ b/rbi/hanzoai/models/key_check_health_response.rbi @@ -3,57 +3,95 @@ module Hanzoai module Models class KeyCheckHealthResponse < Hanzoai::Internal::Type::BaseModel - sig { returns(T.nilable(Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol)) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig do + returns( + T.nilable(Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol) + ) + end attr_reader :key - sig { params(key: Hanzoai::Models::KeyCheckHealthResponse::Key::OrSymbol).void } + sig do + params(key: Hanzoai::Models::KeyCheckHealthResponse::Key::OrSymbol).void + end attr_writer :key - sig { returns(T.nilable(Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks)) } + sig do + returns( + T.nilable(Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks) + ) + end attr_reader :logging_callbacks sig do params( - logging_callbacks: T.nilable(T.any(Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks, Hanzoai::Internal::AnyHash)) - ) - .void + logging_callbacks: + T.nilable( + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::OrHash + ) + ).void end attr_writer :logging_callbacks sig do params( key: Hanzoai::Models::KeyCheckHealthResponse::Key::OrSymbol, - logging_callbacks: T.nilable(T.any(Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks, Hanzoai::Internal::AnyHash)) - ) - .returns(T.attached_class) + logging_callbacks: + T.nilable( + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::OrHash + ) + ).returns(T.attached_class) + end + def self.new(key: nil, logging_callbacks: nil) end - def self.new(key: nil, logging_callbacks: nil); end sig do - override - .returns( - { - key: Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol, - logging_callbacks: T.nilable(Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks) - } - ) + override.returns( + { + key: Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol, + logging_callbacks: + T.nilable( + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks + ) + } + ) + end + def to_hash end - def to_hash; end module Key extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::KeyCheckHealthResponse::Key) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Models::KeyCheckHealthResponse::Key) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - HEALTHY = T.let(:healthy, Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol) - UNHEALTHY = T.let(:unhealthy, Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol) + HEALTHY = + T.let( + :healthy, + Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol + ) + UNHEALTHY = + T.let( + :unhealthy, + Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[Hanzoai::Models::KeyCheckHealthResponse::Key::TaggedSymbol] + ) + end + def self.values + end end class LoggingCallbacks < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T::Array[String])) } attr_reader :callbacks @@ -63,50 +101,79 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :details - sig { returns(T.nilable(Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol)) } + sig do + returns( + T.nilable( + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol + ) + ) + end attr_reader :status - sig { params(status: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::OrSymbol).void } + sig do + params( + status: + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::OrSymbol + ).void + end attr_writer :status sig do params( callbacks: T::Array[String], details: T.nilable(String), - status: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::OrSymbol - ) - .returns(T.attached_class) + status: + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::OrSymbol + ).returns(T.attached_class) + end + def self.new(callbacks: nil, details: nil, status: nil) end - def self.new(callbacks: nil, details: nil, status: nil); end sig do - override - .returns( - { - callbacks: T::Array[String], - details: T.nilable(String), - status: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol - } - ) + override.returns( + { + callbacks: T::Array[String], + details: T.nilable(String), + status: + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end module Status extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status) } + T.type_alias do + T.all( + Symbol, + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } HEALTHY = - T.let(:healthy, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol) + T.let( + :healthy, + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol + ) UNHEALTHY = - T.let(:unhealthy, Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol) + T.let( + :unhealthy, + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol + ) sig do - override.returns(T::Array[Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol]) + override.returns( + T::Array[ + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::Status::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/hanzoai/models/key_delete_params.rbi b/rbi/hanzoai/models/key_delete_params.rbi index cd11ebbd..721c11b5 100644 --- a/rbi/hanzoai/models/key_delete_params.rbi +++ b/rbi/hanzoai/models/key_delete_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T::Array[String])) } attr_accessor :key_aliases @@ -25,9 +27,8 @@ module Hanzoai key_aliases: T.nilable(T::Array[String]), keys: T.nilable(T::Array[String]), llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( key_aliases: nil, @@ -36,19 +37,21 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - key_aliases: T.nilable(T::Array[String]), - keys: T.nilable(T::Array[String]), - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + key_aliases: T.nilable(T::Array[String]), + keys: T.nilable(T::Array[String]), + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/key_generate_params.rbi b/rbi/hanzoai/models/key_generate_params.rbi index 55a975f6..b97e8d89 100644 --- a/rbi/hanzoai/models/key_generate_params.rbi +++ b/rbi/hanzoai/models/key_generate_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.anything)) } attr_accessor :aliases @@ -125,9 +127,8 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( aliases: nil, @@ -161,44 +162,46 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - aliases: T.nilable(T.anything), - allowed_cache_controls: T.nilable(T::Array[T.anything]), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - config: T.nilable(T.anything), - duration: T.nilable(String), - enforced_params: T.nilable(T::Array[String]), - guardrails: T.nilable(T::Array[String]), - key: T.nilable(String), - key_alias: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - send_invite_email: T.nilable(T::Boolean), - soft_budget: T.nilable(Float), - spend: T.nilable(Float), - tags: T.nilable(T::Array[String]), - team_id: T.nilable(String), - tpm_limit: T.nilable(Integer), - user_id: T.nilable(String), - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + aliases: T.nilable(T.anything), + allowed_cache_controls: T.nilable(T::Array[T.anything]), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + config: T.nilable(T.anything), + duration: T.nilable(String), + enforced_params: T.nilable(T::Array[String]), + guardrails: T.nilable(T::Array[String]), + key: T.nilable(String), + key_alias: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_rpm_limit: T.nilable(T.anything), + model_tpm_limit: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + permissions: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + send_invite_email: T.nilable(T::Boolean), + soft_budget: T.nilable(Float), + spend: T.nilable(Float), + tags: T.nilable(T::Array[String]), + team_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + user_id: T.nilable(String), + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/key_list_params.rbi b/rbi/hanzoai/models/key_list_params.rbi index f198a1cb..51790be1 100644 --- a/rbi/hanzoai/models/key_list_params.rbi +++ b/rbi/hanzoai/models/key_list_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Include all keys for teams that user is an admin of. sig { returns(T.nilable(T::Boolean)) } attr_reader :include_team_keys @@ -60,9 +62,8 @@ module Hanzoai size: Integer, team_id: T.nilable(String), user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Include all keys for teams that user is an admin of. @@ -82,24 +83,26 @@ module Hanzoai # Filter keys by user ID user_id: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - include_team_keys: T::Boolean, - key_alias: T.nilable(String), - organization_id: T.nilable(String), - page: Integer, - return_full_object: T::Boolean, - size: Integer, - team_id: T.nilable(String), - user_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + include_team_keys: T::Boolean, + key_alias: T.nilable(String), + organization_id: T.nilable(String), + page: Integer, + return_full_object: T::Boolean, + size: Integer, + team_id: T.nilable(String), + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/key_list_response.rbi b/rbi/hanzoai/models/key_list_response.rbi index 91a0dd6f..29f32eb7 100644 --- a/rbi/hanzoai/models/key_list_response.rbi +++ b/rbi/hanzoai/models/key_list_response.rbi @@ -3,17 +3,35 @@ module Hanzoai module Models class KeyListResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(Integer)) } attr_accessor :current_page - sig { returns(T.nilable(T::Array[T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth)])) } + sig do + returns( + T.nilable( + T::Array[ + T.any( + String, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth + ) + ] + ) + ) + end attr_reader :keys sig do params( - keys: T::Array[T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth, Hanzoai::Internal::AnyHash)] - ) - .void + keys: + T::Array[ + T.any( + String, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::OrHash + ) + ] + ).void end attr_writer :keys @@ -26,32 +44,57 @@ module Hanzoai sig do params( current_page: T.nilable(Integer), - keys: T::Array[T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth, Hanzoai::Internal::AnyHash)], + keys: + T::Array[ + T.any( + String, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::OrHash + ) + ], total_count: T.nilable(Integer), total_pages: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + current_page: nil, + keys: nil, + total_count: nil, + total_pages: nil + ) end - def self.new(current_page: nil, keys: nil, total_count: nil, total_pages: nil); end sig do - override - .returns( - { - current_page: T.nilable(Integer), - keys: T::Array[T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth)], - total_count: T.nilable(Integer), - total_pages: T.nilable(Integer) - } - ) + override.returns( + { + current_page: T.nilable(Integer), + keys: + T::Array[ + T.any( + String, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth + ) + ], + total_count: T.nilable(Integer), + total_pages: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end # Return the row in the db module Key extend Hanzoai::Internal::Type::Union + Variants = + T.type_alias do + T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth) + end + class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :token @@ -66,7 +109,9 @@ module Hanzoai sig do returns( - T.nilable(Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol) + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol + ) ) end attr_accessor :allowed_model_region @@ -203,10 +248,10 @@ module Hanzoai sig { returns(T.nilable(Float)) } attr_accessor :team_max_budget - sig { returns(T.nilable(Hanzoai::Models::Member)) } + sig { returns(T.nilable(Hanzoai::Member)) } attr_reader :team_member - sig { params(team_member: T.nilable(T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash))).void } + sig { params(team_member: T.nilable(Hanzoai::Member::OrHash)).void } attr_writer :team_member sig { returns(T.nilable(Float)) } @@ -262,7 +307,13 @@ module Hanzoai # Team Roles: TEAM: used for JWT auth # # Customer Roles: CUSTOMER: External users -> these are customers - sig { returns(T.nilable(Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol)) } + sig do + returns( + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) + ) + end attr_accessor :user_role sig { returns(T.nilable(Integer)) } @@ -277,7 +328,10 @@ module Hanzoai token: T.nilable(String), aliases: T.anything, allowed_cache_controls: T.nilable(T::Array[T.anything]), - allowed_model_region: T.nilable(Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::OrSymbol), + allowed_model_region: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::OrSymbol + ), api_key: T.nilable(String), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), @@ -312,7 +366,7 @@ module Hanzoai team_blocked: T::Boolean, team_id: T.nilable(String), team_max_budget: T.nilable(Float), - team_member: T.nilable(T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)), + team_member: T.nilable(Hanzoai::Member::OrHash), team_member_spend: T.nilable(Float), team_metadata: T.nilable(T.anything), team_model_aliases: T.nilable(T.anything), @@ -326,11 +380,13 @@ module Hanzoai updated_by: T.nilable(String), user_email: T.nilable(String), user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::OrSymbol), + user_role: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::OrSymbol + ), user_rpm_limit: T.nilable(Integer), user_tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( token: nil, @@ -399,93 +455,127 @@ module Hanzoai user_role: nil, user_rpm_limit: nil, user_tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - token: T.nilable(String), - aliases: T.anything, - allowed_cache_controls: T.nilable(T::Array[T.anything]), - allowed_model_region: T.nilable(Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol), - api_key: T.nilable(String), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - config: T.anything, - created_at: T.nilable(Time), - created_by: T.nilable(String), - end_user_id: T.nilable(String), - end_user_max_budget: T.nilable(Float), - end_user_rpm_limit: T.nilable(Integer), - end_user_tpm_limit: T.nilable(Integer), - expires: T.nilable(T.any(String, Time)), - key_alias: T.nilable(String), - key_name: T.nilable(String), - last_refreshed_at: T.nilable(Float), - llm_budget_table: T.nilable(T.anything), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.anything, - model_max_budget: T.anything, - model_spend: T.anything, - models: T::Array[T.anything], - org_id: T.nilable(String), - parent_otel_span: T.anything, - permissions: T.anything, - rpm_limit: T.nilable(Integer), - rpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), - soft_budget: T.nilable(Float), - soft_budget_cooldown: T::Boolean, - spend: Float, - team_alias: T.nilable(String), - team_blocked: T::Boolean, - team_id: T.nilable(String), - team_max_budget: T.nilable(Float), - team_member: T.nilable(Hanzoai::Models::Member), - team_member_spend: T.nilable(Float), - team_metadata: T.nilable(T.anything), - team_model_aliases: T.nilable(T.anything), - team_models: T::Array[T.anything], - team_rpm_limit: T.nilable(Integer), - team_spend: T.nilable(Float), - team_tpm_limit: T.nilable(Integer), - tpm_limit: T.nilable(Integer), - tpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), - updated_at: T.nilable(Time), - updated_by: T.nilable(String), - user_email: T.nilable(String), - user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol), - user_rpm_limit: T.nilable(Integer), - user_tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + token: T.nilable(String), + aliases: T.anything, + allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_model_region: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol + ), + api_key: T.nilable(String), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + config: T.anything, + created_at: T.nilable(Time), + created_by: T.nilable(String), + end_user_id: T.nilable(String), + end_user_max_budget: T.nilable(Float), + end_user_rpm_limit: T.nilable(Integer), + end_user_tpm_limit: T.nilable(Integer), + expires: T.nilable(T.any(String, Time)), + key_alias: T.nilable(String), + key_name: T.nilable(String), + last_refreshed_at: T.nilable(Float), + llm_budget_table: T.nilable(T.anything), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.anything, + model_max_budget: T.anything, + model_spend: T.anything, + models: T::Array[T.anything], + org_id: T.nilable(String), + parent_otel_span: T.anything, + permissions: T.anything, + rpm_limit: T.nilable(Integer), + rpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), + soft_budget: T.nilable(Float), + soft_budget_cooldown: T::Boolean, + spend: Float, + team_alias: T.nilable(String), + team_blocked: T::Boolean, + team_id: T.nilable(String), + team_max_budget: T.nilable(Float), + team_member: T.nilable(Hanzoai::Member), + team_member_spend: T.nilable(Float), + team_metadata: T.nilable(T.anything), + team_model_aliases: T.nilable(T.anything), + team_models: T::Array[T.anything], + team_rpm_limit: T.nilable(Integer), + team_spend: T.nilable(Float), + team_tpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer), + tpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), + updated_at: T.nilable(Time), + updated_by: T.nilable(String), + user_email: T.nilable(String), + user_id: T.nilable(String), + user_role: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ), + user_rpm_limit: T.nilable(Integer), + user_tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end module AllowedModelRegion extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion) } + T.type_alias do + T.all( + Symbol, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - EU = T.let(:eu, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol) - US = T.let(:us, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol) + EU = + T.let( + :eu, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol + ) + US = + T.let( + :us, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol + ) sig do - override - .returns(T::Array[Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol]) + override.returns( + T::Array[ + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module Expires extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::Expires::Variants + ] + ) + end + def self.variants + end end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can @@ -503,33 +593,69 @@ module Hanzoai extend Hanzoai::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole) } + T.type_alias do + T.all( + Symbol, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } PROXY_ADMIN = - T.let(:proxy_admin, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) + T.let( + :proxy_admin, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) PROXY_ADMIN_VIEWER = - T.let(:proxy_admin_viewer, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) + T.let( + :proxy_admin_viewer, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) ORG_ADMIN = - T.let(:org_admin, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) + T.let( + :org_admin, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) INTERNAL_USER = - T.let(:internal_user, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) + T.let( + :internal_user, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) INTERNAL_USER_VIEWER = T.let( :internal_user_viewer, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol ) - TEAM = T.let(:team, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) + TEAM = + T.let( + :team, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) CUSTOMER = - T.let(:customer, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol) + T.let( + :customer, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ] + ) + end + def self.values + end end end - sig { override.returns([String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth]) } - def self.variants; end + sig do + override.returns( + T::Array[Hanzoai::Models::KeyListResponse::Key::Variants] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/key_regenerate_by_key_params.rbi b/rbi/hanzoai/models/key_regenerate_by_key_params.rbi index 0b26a97c..4a49d9ca 100644 --- a/rbi/hanzoai/models/key_regenerate_by_key_params.rbi +++ b/rbi/hanzoai/models/key_regenerate_by_key_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } @@ -17,18 +19,24 @@ module Hanzoai sig do params( llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end - sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { llm_changed_by: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/key_retrieve_info_params.rbi b/rbi/hanzoai/models/key_retrieve_info_params.rbi index 754cf9dd..a29b722c 100644 --- a/rbi/hanzoai/models/key_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/key_retrieve_info_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Key in the request parameters sig { returns(T.nilable(String)) } attr_accessor :key @@ -13,17 +15,23 @@ module Hanzoai sig do params( key: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Key in the request parameters key: nil, request_options: {} - ); end - sig { override.returns({key: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { key: T.nilable(String), request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/key_retrieve_info_response.rbi b/rbi/hanzoai/models/key_retrieve_info_response.rbi index 80c8f89c..a4e43b6a 100644 --- a/rbi/hanzoai/models/key_retrieve_info_response.rbi +++ b/rbi/hanzoai/models/key_retrieve_info_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - KeyRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + KeyRetrieveInfoResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/key_unblock_params.rbi b/rbi/hanzoai/models/key_unblock_params.rbi index 1a857e10..29c6d7ed 100644 --- a/rbi/hanzoai/models/key_unblock_params.rbi +++ b/rbi/hanzoai/models/key_unblock_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability sig { returns(T.nilable(String)) } @@ -17,18 +19,24 @@ module Hanzoai sig do params( llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end - sig { override.returns({llm_changed_by: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { llm_changed_by: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/key_update_params.rbi b/rbi/hanzoai/models/key_update_params.rbi index 81c6c76b..f08b70e1 100644 --- a/rbi/hanzoai/models/key_update_params.rbi +++ b/rbi/hanzoai/models/key_update_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :key @@ -125,9 +127,8 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( key:, @@ -161,44 +162,46 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - key: String, - aliases: T.nilable(T.anything), - allowed_cache_controls: T.nilable(T::Array[T.anything]), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - config: T.nilable(T.anything), - duration: T.nilable(String), - enforced_params: T.nilable(T::Array[String]), - guardrails: T.nilable(T::Array[String]), - key_alias: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - tags: T.nilable(T::Array[String]), - team_id: T.nilable(String), - temp_budget_expiry: T.nilable(Time), - temp_budget_increase: T.nilable(Float), - tpm_limit: T.nilable(Integer), - user_id: T.nilable(String), - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + key: String, + aliases: T.nilable(T.anything), + allowed_cache_controls: T.nilable(T::Array[T.anything]), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + config: T.nilable(T.anything), + duration: T.nilable(String), + enforced_params: T.nilable(T::Array[String]), + guardrails: T.nilable(T::Array[String]), + key_alias: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_rpm_limit: T.nilable(T.anything), + model_tpm_limit: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + permissions: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + tags: T.nilable(T::Array[String]), + team_id: T.nilable(String), + temp_budget_expiry: T.nilable(Time), + temp_budget_increase: T.nilable(Float), + tpm_limit: T.nilable(Integer), + user_id: T.nilable(String), + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/langfuse_create_params.rbi b/rbi/hanzoai/models/langfuse_create_params.rbi index 55d213e9..1864ffe5 100644 --- a/rbi/hanzoai/models/langfuse_create_params.rbi +++ b/rbi/hanzoai/models/langfuse_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/langfuse_create_response.rbi b/rbi/hanzoai/models/langfuse_create_response.rbi index 96635f21..8be94284 100644 --- a/rbi/hanzoai/models/langfuse_create_response.rbi +++ b/rbi/hanzoai/models/langfuse_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - LangfuseCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + LangfuseCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/langfuse_delete_params.rbi b/rbi/hanzoai/models/langfuse_delete_params.rbi index 91f59574..cdb8c56d 100644 --- a/rbi/hanzoai/models/langfuse_delete_params.rbi +++ b/rbi/hanzoai/models/langfuse_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/langfuse_delete_response.rbi b/rbi/hanzoai/models/langfuse_delete_response.rbi index 4847fe3e..b3a8e925 100644 --- a/rbi/hanzoai/models/langfuse_delete_response.rbi +++ b/rbi/hanzoai/models/langfuse_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - LangfuseDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + LangfuseDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/langfuse_patch_params.rbi b/rbi/hanzoai/models/langfuse_patch_params.rbi index c87bfb52..ddaa06ba 100644 --- a/rbi/hanzoai/models/langfuse_patch_params.rbi +++ b/rbi/hanzoai/models/langfuse_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/langfuse_patch_response.rbi b/rbi/hanzoai/models/langfuse_patch_response.rbi index deec8eac..072ce100 100644 --- a/rbi/hanzoai/models/langfuse_patch_response.rbi +++ b/rbi/hanzoai/models/langfuse_patch_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - LangfusePatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + LangfusePatchResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/langfuse_retrieve_params.rbi b/rbi/hanzoai/models/langfuse_retrieve_params.rbi index 0532930b..3bb17a95 100644 --- a/rbi/hanzoai/models/langfuse_retrieve_params.rbi +++ b/rbi/hanzoai/models/langfuse_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/langfuse_retrieve_response.rbi b/rbi/hanzoai/models/langfuse_retrieve_response.rbi index 30a07e60..071f4b19 100644 --- a/rbi/hanzoai/models/langfuse_retrieve_response.rbi +++ b/rbi/hanzoai/models/langfuse_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - LangfuseRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + LangfuseRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/langfuse_update_params.rbi b/rbi/hanzoai/models/langfuse_update_params.rbi index 8c534601..5ca8b602 100644 --- a/rbi/hanzoai/models/langfuse_update_params.rbi +++ b/rbi/hanzoai/models/langfuse_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/langfuse_update_response.rbi b/rbi/hanzoai/models/langfuse_update_response.rbi index a8f13d76..cec34fa3 100644 --- a/rbi/hanzoai/models/langfuse_update_response.rbi +++ b/rbi/hanzoai/models/langfuse_update_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - LangfuseUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + LangfuseUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/member.rbi b/rbi/hanzoai/models/member.rbi index 23baac40..bcbfc2df 100644 --- a/rbi/hanzoai/models/member.rbi +++ b/rbi/hanzoai/models/member.rbi @@ -3,7 +3,9 @@ module Hanzoai module Models class Member < Hanzoai::Internal::Type::BaseModel - sig { returns(Hanzoai::Models::Member::Role::OrSymbol) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig { returns(Hanzoai::Member::Role::OrSymbol) } attr_accessor :role sig { returns(T.nilable(String)) } @@ -14,33 +16,38 @@ module Hanzoai sig do params( - role: Hanzoai::Models::Member::Role::OrSymbol, + role: Hanzoai::Member::Role::OrSymbol, user_email: T.nilable(String), user_id: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(role:, user_email: nil, user_id: nil) end - def self.new(role:, user_email: nil, user_id: nil); end sig do - override - .returns( - {role: Hanzoai::Models::Member::Role::OrSymbol, user_email: T.nilable(String), user_id: T.nilable(String)} - ) + override.returns( + { + role: Hanzoai::Member::Role::OrSymbol, + user_email: T.nilable(String), + user_id: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module Role extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::Member::Role) } + TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Member::Role) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ADMIN = T.let(:admin, Hanzoai::Models::Member::Role::TaggedSymbol) - USER = T.let(:user, Hanzoai::Models::Member::Role::TaggedSymbol) + ADMIN = T.let(:admin, Hanzoai::Member::Role::TaggedSymbol) + USER = T.let(:user, Hanzoai::Member::Role::TaggedSymbol) - sig { override.returns(T::Array[Hanzoai::Models::Member::Role::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[Hanzoai::Member::Role::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/hanzoai/models/model/info_list_params.rbi b/rbi/hanzoai/models/model/info_list_params.rbi index 0c8adcc1..81385ca0 100644 --- a/rbi/hanzoai/models/model/info_list_params.rbi +++ b/rbi/hanzoai/models/model/info_list_params.rbi @@ -7,20 +7,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :llm_model_id sig do params( llm_model_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(llm_model_id: nil, request_options: {}) end - def self.new(llm_model_id: nil, request_options: {}); end - sig { override.returns({llm_model_id: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + llm_model_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/model/update_deployment.rbi b/rbi/hanzoai/models/model/update_deployment.rbi index 541d4657..20062e2f 100644 --- a/rbi/hanzoai/models/model/update_deployment.rbi +++ b/rbi/hanzoai/models/model/update_deployment.rbi @@ -4,21 +4,23 @@ module Hanzoai module Models module Model class UpdateDeployment < Hanzoai::Internal::Type::BaseModel - sig { returns(T.nilable(Hanzoai::Models::Model::UpdateDeployment::LlmParams)) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig { returns(T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams)) } attr_reader :llm_params sig do params( - llm_params: T.nilable(T.any(Hanzoai::Models::Model::UpdateDeployment::LlmParams, Hanzoai::Internal::AnyHash)) - ) - .void + llm_params: + T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash) + ).void end attr_writer :llm_params - sig { returns(T.nilable(Hanzoai::Models::ModelInfo)) } + sig { returns(T.nilable(Hanzoai::ModelInfo)) } attr_reader :model_info - sig { params(model_info: T.nilable(T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash))).void } + sig { params(model_info: T.nilable(Hanzoai::ModelInfo::OrHash)).void } attr_writer :model_info sig { returns(T.nilable(String)) } @@ -26,27 +28,32 @@ module Hanzoai sig do params( - llm_params: T.nilable(T.any(Hanzoai::Models::Model::UpdateDeployment::LlmParams, Hanzoai::Internal::AnyHash)), - model_info: T.nilable(T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash)), + llm_params: + T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash), + model_info: T.nilable(Hanzoai::ModelInfo::OrHash), model_name: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(llm_params: nil, model_info: nil, model_name: nil) end - def self.new(llm_params: nil, model_info: nil, model_name: nil); end sig do - override - .returns( - { - llm_params: T.nilable(Hanzoai::Models::Model::UpdateDeployment::LlmParams), - model_info: T.nilable(Hanzoai::Models::ModelInfo), - model_name: T.nilable(String) - } - ) + override.returns( + { + llm_params: + T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams), + model_info: T.nilable(Hanzoai::ModelInfo), + model_name: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmParams < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :api_base @@ -68,7 +75,15 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_duration - sig { returns(T.nilable(T::Array[T.any(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)])) } + sig do + returns( + T.nilable( + T::Array[ + T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + ] + ) + ) + end attr_accessor :configurable_clientside_auth_params sig { returns(T.nilable(String)) } @@ -149,9 +164,15 @@ module Hanzoai aws_region_name: T.nilable(String), aws_secret_access_key: T.nilable(String), budget_duration: T.nilable(String), - configurable_clientside_auth_params: T.nilable( - T::Array[T.any(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth, Hanzoai::Internal::AnyHash)] - ), + configurable_clientside_auth_params: + T.nilable( + T::Array[ + T.any( + String, + Hanzoai::ConfigurableClientsideParamsCustomAuth::OrHash + ) + ] + ), custom_llm_provider: T.nilable(String), input_cost_per_second: T.nilable(Float), input_cost_per_token: T.nilable(Float), @@ -175,8 +196,7 @@ module Hanzoai vertex_location: T.nilable(String), vertex_project: T.nilable(String), watsonx_region_name: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( api_base: nil, @@ -210,73 +230,122 @@ module Hanzoai vertex_location: nil, vertex_project: nil, watsonx_region_name: nil - ); end + ) + end + sig do - override - .returns( - { - api_base: T.nilable(String), - api_key: T.nilable(String), - api_version: T.nilable(String), - aws_access_key_id: T.nilable(String), - aws_region_name: T.nilable(String), - aws_secret_access_key: T.nilable(String), - budget_duration: T.nilable(String), - configurable_clientside_auth_params: T.nilable(T::Array[T.any(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)]), - custom_llm_provider: T.nilable(String), - input_cost_per_second: T.nilable(Float), - input_cost_per_token: T.nilable(Float), - llm_trace_id: T.nilable(String), - max_budget: T.nilable(Float), - max_file_size_mb: T.nilable(Float), - max_retries: T.nilable(Integer), - merge_reasoning_content_in_choices: T.nilable(T::Boolean), - model: T.nilable(String), - model_info: T.nilable(T.anything), - organization: T.nilable(String), - output_cost_per_second: T.nilable(Float), - output_cost_per_token: T.nilable(Float), - region_name: T.nilable(String), - rpm: T.nilable(Integer), - stream_timeout: T.nilable(T.any(Float, String)), - timeout: T.nilable(T.any(Float, String)), - tpm: T.nilable(Integer), - use_in_pass_through: T.nilable(T::Boolean), - vertex_credentials: T.nilable(T.any(T.anything, String)), - vertex_location: T.nilable(String), - vertex_project: T.nilable(String), - watsonx_region_name: T.nilable(String) - } - ) + override.returns( + { + api_base: T.nilable(String), + api_key: T.nilable(String), + api_version: T.nilable(String), + aws_access_key_id: T.nilable(String), + aws_region_name: T.nilable(String), + aws_secret_access_key: T.nilable(String), + budget_duration: T.nilable(String), + configurable_clientside_auth_params: + T.nilable( + T::Array[ + T.any( + String, + Hanzoai::ConfigurableClientsideParamsCustomAuth + ) + ] + ), + custom_llm_provider: T.nilable(String), + input_cost_per_second: T.nilable(Float), + input_cost_per_token: T.nilable(Float), + llm_trace_id: T.nilable(String), + max_budget: T.nilable(Float), + max_file_size_mb: T.nilable(Float), + max_retries: T.nilable(Integer), + merge_reasoning_content_in_choices: T.nilable(T::Boolean), + model: T.nilable(String), + model_info: T.nilable(T.anything), + organization: T.nilable(String), + output_cost_per_second: T.nilable(Float), + output_cost_per_token: T.nilable(Float), + region_name: T.nilable(String), + rpm: T.nilable(Integer), + stream_timeout: T.nilable(T.any(Float, String)), + timeout: T.nilable(T.any(Float, String)), + tpm: T.nilable(Integer), + use_in_pass_through: T.nilable(T::Boolean), + vertex_credentials: T.nilable(T.any(T.anything, String)), + vertex_location: T.nilable(String), + vertex_project: T.nilable(String), + watsonx_region_name: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth]) } - def self.variants; end + Variants = + T.type_alias do + T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + end + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LlmParams::ConfigurableClientsideAuthParam::Variants + ] + ) + end + def self.variants + end end module StreamTimeout extend Hanzoai::Internal::Type::Union - sig { override.returns([Float, String]) } - def self.variants; end + Variants = T.type_alias { T.any(Float, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + ] + ) + end + def self.variants + end end module Timeout extend Hanzoai::Internal::Type::Union - sig { override.returns([Float, String]) } - def self.variants; end + Variants = T.type_alias { T.any(Float, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + ] + ) + end + def self.variants + end end module VertexCredentials extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/model/update_full_params.rbi b/rbi/hanzoai/models/model/update_full_params.rbi index 7d3a92cc..4d5c30a4 100644 --- a/rbi/hanzoai/models/model/update_full_params.rbi +++ b/rbi/hanzoai/models/model/update_full_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/model/update_partial_params.rbi b/rbi/hanzoai/models/model/update_partial_params.rbi index c4be1651..f728e2f1 100644 --- a/rbi/hanzoai/models/model/update_partial_params.rbi +++ b/rbi/hanzoai/models/model/update_partial_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/model/update_partial_response.rbi b/rbi/hanzoai/models/model/update_partial_response.rbi index 38c7ce62..700afc83 100644 --- a/rbi/hanzoai/models/model/update_partial_response.rbi +++ b/rbi/hanzoai/models/model/update_partial_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Model - UpdatePartialResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + UpdatePartialResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/model_create_params.rbi b/rbi/hanzoai/models/model_create_params.rbi index e9ab5295..e1d8091a 100644 --- a/rbi/hanzoai/models/model_create_params.rbi +++ b/rbi/hanzoai/models/model_create_params.rbi @@ -6,17 +6,21 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # LLM Params with 'model' requirement - used for completions - sig { returns(Hanzoai::Models::ModelCreateParams::LlmParams) } + sig { returns(Hanzoai::ModelCreateParams::LlmParams) } attr_reader :llm_params - sig { params(llm_params: T.any(Hanzoai::Models::ModelCreateParams::LlmParams, Hanzoai::Internal::AnyHash)).void } + sig do + params(llm_params: Hanzoai::ModelCreateParams::LlmParams::OrHash).void + end attr_writer :llm_params - sig { returns(Hanzoai::Models::ModelInfo) } + sig { returns(Hanzoai::ModelInfo) } attr_reader :model_info - sig { params(model_info: T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash)).void } + sig { params(model_info: Hanzoai::ModelInfo::OrHash).void } attr_writer :model_info sig { returns(String) } @@ -24,12 +28,11 @@ module Hanzoai sig do params( - llm_params: T.any(Hanzoai::Models::ModelCreateParams::LlmParams, Hanzoai::Internal::AnyHash), - model_info: T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash), + llm_params: Hanzoai::ModelCreateParams::LlmParams::OrHash, + model_info: Hanzoai::ModelInfo::OrHash, model_name: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # LLM Params with 'model' requirement - used for completions @@ -37,21 +40,25 @@ module Hanzoai model_info:, model_name:, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - llm_params: Hanzoai::Models::ModelCreateParams::LlmParams, - model_info: Hanzoai::Models::ModelInfo, - model_name: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + llm_params: Hanzoai::ModelCreateParams::LlmParams, + model_info: Hanzoai::ModelInfo, + model_name: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end class LlmParams < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :model @@ -76,7 +83,15 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_duration - sig { returns(T.nilable(T::Array[T.any(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)])) } + sig do + returns( + T.nilable( + T::Array[ + T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + ] + ) + ) + end attr_accessor :configurable_clientside_auth_params sig { returns(T.nilable(String)) } @@ -156,9 +171,15 @@ module Hanzoai aws_region_name: T.nilable(String), aws_secret_access_key: T.nilable(String), budget_duration: T.nilable(String), - configurable_clientside_auth_params: T.nilable( - T::Array[T.any(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth, Hanzoai::Internal::AnyHash)] - ), + configurable_clientside_auth_params: + T.nilable( + T::Array[ + T.any( + String, + Hanzoai::ConfigurableClientsideParamsCustomAuth::OrHash + ) + ] + ), custom_llm_provider: T.nilable(String), input_cost_per_second: T.nilable(Float), input_cost_per_token: T.nilable(Float), @@ -181,8 +202,7 @@ module Hanzoai vertex_location: T.nilable(String), vertex_project: T.nilable(String), watsonx_region_name: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( model:, @@ -216,73 +236,120 @@ module Hanzoai vertex_location: nil, vertex_project: nil, watsonx_region_name: nil - ); end + ) + end + sig do - override - .returns( - { - model: String, - api_base: T.nilable(String), - api_key: T.nilable(String), - api_version: T.nilable(String), - aws_access_key_id: T.nilable(String), - aws_region_name: T.nilable(String), - aws_secret_access_key: T.nilable(String), - budget_duration: T.nilable(String), - configurable_clientside_auth_params: T.nilable(T::Array[T.any(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)]), - custom_llm_provider: T.nilable(String), - input_cost_per_second: T.nilable(Float), - input_cost_per_token: T.nilable(Float), - llm_trace_id: T.nilable(String), - max_budget: T.nilable(Float), - max_file_size_mb: T.nilable(Float), - max_retries: T.nilable(Integer), - merge_reasoning_content_in_choices: T.nilable(T::Boolean), - model_info: T.nilable(T.anything), - organization: T.nilable(String), - output_cost_per_second: T.nilable(Float), - output_cost_per_token: T.nilable(Float), - region_name: T.nilable(String), - rpm: T.nilable(Integer), - stream_timeout: T.nilable(T.any(Float, String)), - timeout: T.nilable(T.any(Float, String)), - tpm: T.nilable(Integer), - use_in_pass_through: T.nilable(T::Boolean), - vertex_credentials: T.nilable(T.any(T.anything, String)), - vertex_location: T.nilable(String), - vertex_project: T.nilable(String), - watsonx_region_name: T.nilable(String) - } - ) + override.returns( + { + model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_version: T.nilable(String), + aws_access_key_id: T.nilable(String), + aws_region_name: T.nilable(String), + aws_secret_access_key: T.nilable(String), + budget_duration: T.nilable(String), + configurable_clientside_auth_params: + T.nilable( + T::Array[ + T.any( + String, + Hanzoai::ConfigurableClientsideParamsCustomAuth + ) + ] + ), + custom_llm_provider: T.nilable(String), + input_cost_per_second: T.nilable(Float), + input_cost_per_token: T.nilable(Float), + llm_trace_id: T.nilable(String), + max_budget: T.nilable(Float), + max_file_size_mb: T.nilable(Float), + max_retries: T.nilable(Integer), + merge_reasoning_content_in_choices: T.nilable(T::Boolean), + model_info: T.nilable(T.anything), + organization: T.nilable(String), + output_cost_per_second: T.nilable(Float), + output_cost_per_token: T.nilable(Float), + region_name: T.nilable(String), + rpm: T.nilable(Integer), + stream_timeout: T.nilable(T.any(Float, String)), + timeout: T.nilable(T.any(Float, String)), + tpm: T.nilable(Integer), + use_in_pass_through: T.nilable(T::Boolean), + vertex_credentials: T.nilable(T.any(T.anything, String)), + vertex_location: T.nilable(String), + vertex_project: T.nilable(String), + watsonx_region_name: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth]) } - def self.variants; end + Variants = + T.type_alias do + T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + end + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LlmParams::ConfigurableClientsideAuthParam::Variants + ] + ) + end + def self.variants + end end module StreamTimeout extend Hanzoai::Internal::Type::Union - sig { override.returns([Float, String]) } - def self.variants; end + Variants = T.type_alias { T.any(Float, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + ] + ) + end + def self.variants + end end module Timeout extend Hanzoai::Internal::Type::Union - sig { override.returns([Float, String]) } - def self.variants; end + Variants = T.type_alias { T.any(Float, String) } + + sig do + override.returns( + T::Array[Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants] + ) + end + def self.variants + end end module VertexCredentials extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/model_delete_params.rbi b/rbi/hanzoai/models/model_delete_params.rbi index d5f15d9a..aa6b45d5 100644 --- a/rbi/hanzoai/models/model_delete_params.rbi +++ b/rbi/hanzoai/models/model_delete_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id sig do - params(id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(id:, request_options: {}) end - def self.new(id:, request_options: {}); end - sig { override.returns({id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { id: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/model_group_retrieve_info_params.rbi b/rbi/hanzoai/models/model_group_retrieve_info_params.rbi index db2f84aa..ddca5e69 100644 --- a/rbi/hanzoai/models/model_group_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/model_group_retrieve_info_params.rbi @@ -6,20 +6,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :model_group sig do params( model_group: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(model_group: nil, request_options: {}) end - def self.new(model_group: nil, request_options: {}); end - sig { override.returns({model_group: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + model_group: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/model_group_retrieve_info_response.rbi b/rbi/hanzoai/models/model_group_retrieve_info_response.rbi index fa85a495..e0d5100b 100644 --- a/rbi/hanzoai/models/model_group_retrieve_info_response.rbi +++ b/rbi/hanzoai/models/model_group_retrieve_info_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - ModelGroupRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ModelGroupRetrieveInfoResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/model_info.rbi b/rbi/hanzoai/models/model_info.rbi index 086b11db..e872b509 100644 --- a/rbi/hanzoai/models/model_info.rbi +++ b/rbi/hanzoai/models/model_info.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class ModelInfo < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :id @@ -27,7 +29,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :team_public_model_name - sig { returns(T.nilable(Hanzoai::Models::ModelInfo::Tier::OrSymbol)) } + sig { returns(T.nilable(Hanzoai::ModelInfo::Tier::OrSymbol)) } attr_accessor :tier sig { returns(T.nilable(Time)) } @@ -45,11 +47,10 @@ module Hanzoai db_model: T::Boolean, team_id: T.nilable(String), team_public_model_name: T.nilable(String), - tier: T.nilable(Hanzoai::Models::ModelInfo::Tier::OrSymbol), + tier: T.nilable(Hanzoai::ModelInfo::Tier::OrSymbol), updated_at: T.nilable(Time), updated_by: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( id:, @@ -62,37 +63,42 @@ module Hanzoai tier: nil, updated_at: nil, updated_by: nil - ); end + ) + end + sig do - override - .returns( - { - id: T.nilable(String), - base_model: T.nilable(String), - created_at: T.nilable(Time), - created_by: T.nilable(String), - db_model: T::Boolean, - team_id: T.nilable(String), - team_public_model_name: T.nilable(String), - tier: T.nilable(Hanzoai::Models::ModelInfo::Tier::OrSymbol), - updated_at: T.nilable(Time), - updated_by: T.nilable(String) - } - ) + override.returns( + { + id: T.nilable(String), + base_model: T.nilable(String), + created_at: T.nilable(Time), + created_by: T.nilable(String), + db_model: T::Boolean, + team_id: T.nilable(String), + team_public_model_name: T.nilable(String), + tier: T.nilable(Hanzoai::ModelInfo::Tier::OrSymbol), + updated_at: T.nilable(Time), + updated_by: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module Tier extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::ModelInfo::Tier) } + TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::ModelInfo::Tier) } OrSymbol = T.type_alias { T.any(Symbol, String) } - FREE = T.let(:free, Hanzoai::Models::ModelInfo::Tier::TaggedSymbol) - PAID = T.let(:paid, Hanzoai::Models::ModelInfo::Tier::TaggedSymbol) + FREE = T.let(:free, Hanzoai::ModelInfo::Tier::TaggedSymbol) + PAID = T.let(:paid, Hanzoai::ModelInfo::Tier::TaggedSymbol) - sig { override.returns(T::Array[Hanzoai::Models::ModelInfo::Tier::TaggedSymbol]) } - def self.values; end + sig do + override.returns(T::Array[Hanzoai::ModelInfo::Tier::TaggedSymbol]) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/model_list_params.rbi b/rbi/hanzoai/models/model_list_params.rbi index 1e04cd50..1b52b106 100644 --- a/rbi/hanzoai/models/model_list_params.rbi +++ b/rbi/hanzoai/models/model_list_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T::Boolean)) } attr_accessor :return_wildcard_routes @@ -16,23 +18,27 @@ module Hanzoai params( return_wildcard_routes: T.nilable(T::Boolean), team_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + return_wildcard_routes: nil, + team_id: nil, + request_options: {} + ) end - def self.new(return_wildcard_routes: nil, team_id: nil, request_options: {}); end sig do - override - .returns( - { - return_wildcard_routes: T.nilable(T::Boolean), - team_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + return_wildcard_routes: T.nilable(T::Boolean), + team_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/moderation_create_params.rbi b/rbi/hanzoai/models/moderation_create_params.rbi index 582cace8..109b66e1 100644 --- a/rbi/hanzoai/models/moderation_create_params.rbi +++ b/rbi/hanzoai/models/moderation_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/moderation_create_response.rbi b/rbi/hanzoai/models/moderation_create_response.rbi index b1d412d6..5780cd05 100644 --- a/rbi/hanzoai/models/moderation_create_response.rbi +++ b/rbi/hanzoai/models/moderation_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - ModerationCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ModerationCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/openai/deployment_complete_params.rbi b/rbi/hanzoai/models/openai/deployment_complete_params.rbi index d27af69c..657c99a6 100644 --- a/rbi/hanzoai/models/openai/deployment_complete_params.rbi +++ b/rbi/hanzoai/models/openai/deployment_complete_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/openai/deployment_complete_response.rbi b/rbi/hanzoai/models/openai/deployment_complete_response.rbi index 45bb659c..1377eee3 100644 --- a/rbi/hanzoai/models/openai/deployment_complete_response.rbi +++ b/rbi/hanzoai/models/openai/deployment_complete_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module OpenAI - DeploymentCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + DeploymentCompleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/openai/deployment_embed_params.rbi b/rbi/hanzoai/models/openai/deployment_embed_params.rbi index 46b47b35..682541b2 100644 --- a/rbi/hanzoai/models/openai/deployment_embed_params.rbi +++ b/rbi/hanzoai/models/openai/deployment_embed_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/openai/deployment_embed_response.rbi b/rbi/hanzoai/models/openai/deployment_embed_response.rbi index 33233f76..e7503ecf 100644 --- a/rbi/hanzoai/models/openai/deployment_embed_response.rbi +++ b/rbi/hanzoai/models/openai/deployment_embed_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module OpenAI - DeploymentEmbedResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + DeploymentEmbedResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi b/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi index 4be28c47..1d9d55c1 100644 --- a/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi +++ b/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi @@ -8,14 +8,20 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi b/rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi index 6e1b8b9c..1bcbe7cf 100644 --- a/rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi +++ b/rbi/hanzoai/models/openai/deployments/chat_complete_response.rbi @@ -4,7 +4,8 @@ module Hanzoai module Models module OpenAI module Deployments - ChatCompleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ChatCompleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/openai_create_params.rbi b/rbi/hanzoai/models/openai_create_params.rbi index 9f8edd8d..8488d99c 100644 --- a/rbi/hanzoai/models/openai_create_params.rbi +++ b/rbi/hanzoai/models/openai_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/openai_delete_params.rbi b/rbi/hanzoai/models/openai_delete_params.rbi index 3ca26222..931d8787 100644 --- a/rbi/hanzoai/models/openai_delete_params.rbi +++ b/rbi/hanzoai/models/openai_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/openai_patch_params.rbi b/rbi/hanzoai/models/openai_patch_params.rbi index 283019c6..6a8bf533 100644 --- a/rbi/hanzoai/models/openai_patch_params.rbi +++ b/rbi/hanzoai/models/openai_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/openai_retrieve_params.rbi b/rbi/hanzoai/models/openai_retrieve_params.rbi index 254ef8ec..84750b44 100644 --- a/rbi/hanzoai/models/openai_retrieve_params.rbi +++ b/rbi/hanzoai/models/openai_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/openai_retrieve_response.rbi b/rbi/hanzoai/models/openai_retrieve_response.rbi index b8603647..40deaab0 100644 --- a/rbi/hanzoai/models/openai_retrieve_response.rbi +++ b/rbi/hanzoai/models/openai_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - OpenAIRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + OpenAIRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/openai_update_params.rbi b/rbi/hanzoai/models/openai_update_params.rbi index 06f7942a..35dbdfe2 100644 --- a/rbi/hanzoai/models/openai_update_params.rbi +++ b/rbi/hanzoai/models/openai_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/org_member.rbi b/rbi/hanzoai/models/org_member.rbi index d404d7ab..ffa3a28c 100644 --- a/rbi/hanzoai/models/org_member.rbi +++ b/rbi/hanzoai/models/org_member.rbi @@ -3,7 +3,9 @@ module Hanzoai module Models class OrgMember < Hanzoai::Internal::Type::BaseModel - sig { returns(Hanzoai::Models::OrgMember::Role::OrSymbol) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig { returns(Hanzoai::OrgMember::Role::OrSymbol) } attr_accessor :role sig { returns(T.nilable(String)) } @@ -14,34 +16,43 @@ module Hanzoai sig do params( - role: Hanzoai::Models::OrgMember::Role::OrSymbol, + role: Hanzoai::OrgMember::Role::OrSymbol, user_email: T.nilable(String), user_id: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(role:, user_email: nil, user_id: nil) end - def self.new(role:, user_email: nil, user_id: nil); end sig do - override - .returns( - {role: Hanzoai::Models::OrgMember::Role::OrSymbol, user_email: T.nilable(String), user_id: T.nilable(String)} - ) + override.returns( + { + role: Hanzoai::OrgMember::Role::OrSymbol, + user_email: T.nilable(String), + user_id: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module Role extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::OrgMember::Role) } + TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::OrgMember::Role) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ORG_ADMIN = T.let(:org_admin, Hanzoai::Models::OrgMember::Role::TaggedSymbol) - INTERNAL_USER = T.let(:internal_user, Hanzoai::Models::OrgMember::Role::TaggedSymbol) - INTERNAL_USER_VIEWER = T.let(:internal_user_viewer, Hanzoai::Models::OrgMember::Role::TaggedSymbol) - - sig { override.returns(T::Array[Hanzoai::Models::OrgMember::Role::TaggedSymbol]) } - def self.values; end + ORG_ADMIN = T.let(:org_admin, Hanzoai::OrgMember::Role::TaggedSymbol) + INTERNAL_USER = + T.let(:internal_user, Hanzoai::OrgMember::Role::TaggedSymbol) + INTERNAL_USER_VIEWER = + T.let(:internal_user_viewer, Hanzoai::OrgMember::Role::TaggedSymbol) + + sig do + override.returns(T::Array[Hanzoai::OrgMember::Role::TaggedSymbol]) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/organization/info_deprecated_params.rbi b/rbi/hanzoai/models/organization/info_deprecated_params.rbi index ff7d37d8..fbe91cbe 100644 --- a/rbi/hanzoai/models/organization/info_deprecated_params.rbi +++ b/rbi/hanzoai/models/organization/info_deprecated_params.rbi @@ -7,20 +7,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :organizations sig do params( organizations: T::Array[String], - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(organizations:, request_options: {}) end - def self.new(organizations:, request_options: {}); end - sig { override.returns({organizations: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + organizations: T::Array[String], + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/organization/info_deprecated_response.rbi b/rbi/hanzoai/models/organization/info_deprecated_response.rbi index 7abffe1b..d6c13d7d 100644 --- a/rbi/hanzoai/models/organization/info_deprecated_response.rbi +++ b/rbi/hanzoai/models/organization/info_deprecated_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Organization - InfoDeprecatedResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + InfoDeprecatedResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/organization/info_retrieve_params.rbi b/rbi/hanzoai/models/organization/info_retrieve_params.rbi index 7197e256..15217463 100644 --- a/rbi/hanzoai/models/organization/info_retrieve_params.rbi +++ b/rbi/hanzoai/models/organization/info_retrieve_params.rbi @@ -7,20 +7,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :organization_id sig do params( organization_id: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(organization_id:, request_options: {}) end - def self.new(organization_id:, request_options: {}); end - sig { override.returns({organization_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + organization_id: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/hanzoai/models/organization/info_retrieve_response.rbi index bc9943f2..20eb0727 100644 --- a/rbi/hanzoai/models/organization/info_retrieve_response.rbi +++ b/rbi/hanzoai/models/organization/info_retrieve_response.rbi @@ -4,6 +4,8 @@ module Hanzoai module Models module Organization class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :budget_id @@ -23,27 +25,43 @@ module Hanzoai attr_accessor :updated_by # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table - sig { returns(T.nilable(T::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member])) } + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Member + ] + ) + ) + end attr_reader :members sig do params( - members: T::Array[T.any(Hanzoai::Models::Organization::InfoRetrieveResponse::Member, Hanzoai::Internal::AnyHash)] - ) - .void + members: + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Member::OrHash + ] + ).void end attr_writer :members @@ -62,14 +80,24 @@ module Hanzoai sig { params(spend: Float).void } attr_writer :spend - sig { returns(T.nilable(T::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team])) } + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Team + ] + ) + ) + end attr_reader :teams sig do params( - teams: T::Array[T.any(Hanzoai::Models::Organization::InfoRetrieveResponse::Team, Hanzoai::Internal::AnyHash)] - ) - .void + teams: + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::OrHash + ] + ).void end attr_writer :teams @@ -82,17 +110,23 @@ module Hanzoai models: T::Array[String], updated_at: Time, updated_by: String, - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), - members: T::Array[T.any(Hanzoai::Models::Organization::InfoRetrieveResponse::Member, Hanzoai::Internal::AnyHash)], + llm_budget_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable::OrHash + ), + members: + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Member::OrHash + ], metadata: T.nilable(T.anything), organization_alias: T.nilable(String), organization_id: T.nilable(String), spend: Float, - teams: T::Array[T.any(Hanzoai::Models::Organization::InfoRetrieveResponse::Team, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + teams: + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::OrHash + ] + ).returns(T.attached_class) end def self.new( budget_id:, @@ -109,30 +143,44 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ); end + ) + end + sig do - override - .returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: T.nilable(Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable), - members: T::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: T::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] - } - ) + override.returns( + { + budget_id: String, + created_at: Time, + created_by: String, + models: T::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable + ), + members: + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Member + ], + metadata: T.nilable(T.anything), + organization_alias: T.nilable(String), + organization_id: T.nilable(String), + spend: Float, + teams: + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Team + ] + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -164,8 +212,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -175,25 +222,30 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -210,19 +262,22 @@ module Hanzoai attr_accessor :budget_id # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, - Hanzoai::Internal::AnyHash + llm_budget_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable::OrHash ) - ) - ) - .void + ).void end attr_writer :llm_budget_table @@ -250,17 +305,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -273,26 +325,34 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable + ), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -324,8 +384,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -335,26 +394,31 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end class Team < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -379,19 +443,22 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :created_at - sig { returns(T.nilable(Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable + ) + ) + end attr_reader :llm_model_table sig do params( - llm_model_table: T.nilable( - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, - Hanzoai::Internal::AnyHash + llm_model_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::OrHash ) - ) - ) - .void + ).void end attr_writer :llm_model_table @@ -407,10 +474,12 @@ module Hanzoai sig { params(members: T::Array[T.anything]).void } attr_writer :members - sig { returns(T.nilable(T::Array[Hanzoai::Models::Member])) } + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } attr_reader :members_with_roles - sig { params(members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)]).void } + sig do + params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void + end attr_writer :members_with_roles sig { returns(T.nilable(T.anything)) } @@ -448,16 +517,14 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: T.nilable( - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, - Hanzoai::Internal::AnyHash - ) - ), + llm_model_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::OrHash + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_id: T.nilable(Integer), models: T::Array[T.anything], @@ -466,8 +533,7 @@ module Hanzoai spend: T.nilable(Float), team_alias: T.nilable(String), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( team_id:, @@ -489,36 +555,44 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: T.nilable(Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Models::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + team_id: String, + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + llm_model_table: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable + ), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T.anything), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :created_by @@ -533,26 +607,37 @@ module Hanzoai created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String)) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(created_by:, updated_by:, model_aliases: nil) end - def self.new(created_by:, updated_by:, model_aliases: nil); end sig do - override - .returns({ - created_by: String, - updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) - }) + override.returns( + { + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + } + ) + end + def to_hash end - def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/organization_add_member_params.rbi b/rbi/hanzoai/models/organization_add_member_params.rbi index 21a039a7..ec235888 100644 --- a/rbi/hanzoai/models/organization_add_member_params.rbi +++ b/rbi/hanzoai/models/organization_add_member_params.rbi @@ -6,7 +6,9 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(T.any(T::Array[Hanzoai::Models::OrgMember], Hanzoai::Models::OrgMember)) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig { returns(T.any(T::Array[Hanzoai::OrgMember], Hanzoai::OrgMember)) } attr_accessor :member sig { returns(String) } @@ -17,40 +19,58 @@ module Hanzoai sig do params( - member: T.any( - T::Array[T.any(Hanzoai::Models::OrgMember, Hanzoai::Internal::AnyHash)], - Hanzoai::Models::OrgMember, - Hanzoai::Internal::AnyHash - ), + member: + T.any( + T::Array[Hanzoai::OrgMember::OrHash], + Hanzoai::OrgMember::OrHash + ), organization_id: String, max_budget_in_organization: T.nilable(Float), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + member:, + organization_id:, + max_budget_in_organization: nil, + request_options: {} + ) end - def self.new(member:, organization_id:, max_budget_in_organization: nil, request_options: {}); end sig do - override - .returns( - { - member: T.any(T::Array[Hanzoai::Models::OrgMember], Hanzoai::Models::OrgMember), - organization_id: String, - max_budget_in_organization: T.nilable(Float), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + member: T.any(T::Array[Hanzoai::OrgMember], Hanzoai::OrgMember), + organization_id: String, + max_budget_in_organization: T.nilable(Float), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module Member extend Hanzoai::Internal::Type::Union - sig { override.returns([T::Array[Hanzoai::Models::OrgMember], Hanzoai::Models::OrgMember]) } - def self.variants; end + Variants = + T.type_alias do + T.any(T::Array[Hanzoai::OrgMember], Hanzoai::OrgMember) + end + + sig do + override.returns( + T::Array[Hanzoai::OrganizationAddMemberParams::Member::Variants] + ) + end + def self.variants + end OrgMemberArray = - T.let(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrgMember], Hanzoai::Internal::Type::Converter) + T.let( + Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrgMember], + Hanzoai::Internal::Type::Converter + ) end end end diff --git a/rbi/hanzoai/models/organization_add_member_response.rbi b/rbi/hanzoai/models/organization_add_member_response.rbi index 01eff159..cf6ab8b2 100644 --- a/rbi/hanzoai/models/organization_add_member_response.rbi +++ b/rbi/hanzoai/models/organization_add_member_response.rbi @@ -3,43 +3,68 @@ module Hanzoai module Models class OrganizationAddMemberResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :organization_id - sig { returns(T::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership]) } + sig do + returns( + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership + ] + ) + end attr_accessor :updated_organization_memberships - sig { returns(T::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser]) } + sig do + returns( + T::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] + ) + end attr_accessor :updated_users sig do params( organization_id: String, - updated_organization_memberships: T::Array[ - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership, - Hanzoai::Internal::AnyHash - ) - ], - updated_users: T::Array[T.any(Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + updated_organization_memberships: + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::OrHash + ], + updated_users: + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrHash + ] + ).returns(T.attached_class) + end + def self.new( + organization_id:, + updated_organization_memberships:, + updated_users: + ) end - def self.new(organization_id:, updated_organization_memberships:, updated_users:); end sig do - override - .returns( - { - organization_id: String, - updated_organization_memberships: T::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership], - updated_users: T::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] - } - ) + override.returns( + { + organization_id: String, + updated_organization_memberships: + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership + ], + updated_users: + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser + ] + } + ) + end + def to_hash end - def to_hash; end class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -58,21 +83,20 @@ module Hanzoai # Represents user-controllable params for a LLM_BudgetTable record sig do returns( - T.nilable(Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable) + T.nilable( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable + ) ) end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable::OrHash ) - ) - ) - .void + ).void end attr_writer :llm_budget_table @@ -100,17 +124,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -123,26 +144,34 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable + ), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -174,8 +203,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -185,26 +213,30 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end class UpdatedUser < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :user_id @@ -234,7 +266,11 @@ module Hanzoai sig do returns( - T.nilable(T::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership]) + T.nilable( + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership + ] + ) ) end attr_accessor :organization_memberships @@ -276,14 +312,12 @@ module Hanzoai model_max_budget: T.nilable(T.anything), model_spend: T.nilable(T.anything), models: T::Array[T.anything], - organization_memberships: T.nilable( - T::Array[ - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership, - Hanzoai::Internal::AnyHash - ) - ] - ), + organization_memberships: + T.nilable( + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::OrHash + ] + ), rpm_limit: T.nilable(Integer), spend: Float, sso_user_id: T.nilable(String), @@ -291,8 +325,7 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_email: T.nilable(String), user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( user_id:, @@ -311,33 +344,43 @@ module Hanzoai tpm_limit: nil, user_email: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - user_id: String, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_spend: T.nilable(T.anything), - models: T::Array[T.anything], - organization_memberships: T.nilable(T::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership]), - rpm_limit: T.nilable(Integer), - spend: Float, - sso_user_id: T.nilable(String), - teams: T::Array[String], - tpm_limit: T.nilable(Integer), - user_email: T.nilable(String), - user_role: T.nilable(String) - } - ) + override.returns( + { + user_id: String, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + max_budget: T.nilable(Float), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_spend: T.nilable(T.anything), + models: T::Array[T.anything], + organization_memberships: + T.nilable( + T::Array[ + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership + ] + ), + rpm_limit: T.nilable(Integer), + spend: Float, + sso_user_id: T.nilable(String), + teams: T::Array[String], + tpm_limit: T.nilable(Integer), + user_email: T.nilable(String), + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class OrganizationMembership < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -365,14 +408,11 @@ module Hanzoai sig do params( - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash ) - ) - ) - .void + ).void end attr_writer :llm_budget_table @@ -400,17 +440,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -423,28 +460,34 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable( + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -476,8 +519,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -487,22 +529,24 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/organization_create_params.rbi b/rbi/hanzoai/models/organization_create_params.rbi index fa8a49eb..2f7e60b3 100644 --- a/rbi/hanzoai/models/organization_create_params.rbi +++ b/rbi/hanzoai/models/organization_create_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :organization_alias @@ -59,9 +61,8 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( organization_alias:, @@ -77,28 +78,30 @@ module Hanzoai soft_budget: nil, tpm_limit: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - organization_alias: String, - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + organization_alias: String, + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/organization_create_response.rbi b/rbi/hanzoai/models/organization_create_response.rbi index 4e6e91fa..0e03ec6a 100644 --- a/rbi/hanzoai/models/organization_create_response.rbi +++ b/rbi/hanzoai/models/organization_create_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class OrganizationCreateResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :budget_id @@ -48,8 +50,7 @@ module Hanzoai metadata: T.nilable(T.anything), organization_alias: T.nilable(String), spend: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_id:, @@ -62,25 +63,27 @@ module Hanzoai metadata: nil, organization_alias: nil, spend: nil - ); end + ) + end + sig do - override - .returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - organization_id: String, - updated_at: Time, - updated_by: String, - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - spend: Float - } - ) + override.returns( + { + budget_id: String, + created_at: Time, + created_by: String, + models: T::Array[String], + organization_id: String, + updated_at: Time, + updated_by: String, + metadata: T.nilable(T.anything), + organization_alias: T.nilable(String), + spend: Float + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/organization_delete_member_params.rbi b/rbi/hanzoai/models/organization_delete_member_params.rbi index 5aaf33d2..0c74ce56 100644 --- a/rbi/hanzoai/models/organization_delete_member_params.rbi +++ b/rbi/hanzoai/models/organization_delete_member_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :organization_id @@ -20,24 +22,29 @@ module Hanzoai organization_id: String, user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + organization_id:, + user_email: nil, + user_id: nil, + request_options: {} + ) end - def self.new(organization_id:, user_email: nil, user_id: nil, request_options: {}); end sig do - override - .returns( - { - organization_id: String, - user_email: T.nilable(String), - user_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + organization_id: String, + user_email: T.nilable(String), + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/organization_delete_member_response.rbi b/rbi/hanzoai/models/organization_delete_member_response.rbi index 0a0b1103..df7e26f5 100644 --- a/rbi/hanzoai/models/organization_delete_member_response.rbi +++ b/rbi/hanzoai/models/organization_delete_member_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - OrganizationDeleteMemberResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + OrganizationDeleteMemberResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/organization_delete_params.rbi b/rbi/hanzoai/models/organization_delete_params.rbi index 98595202..b13075a6 100644 --- a/rbi/hanzoai/models/organization_delete_params.rbi +++ b/rbi/hanzoai/models/organization_delete_params.rbi @@ -6,20 +6,30 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :organization_ids sig do params( organization_ids: T::Array[String], - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(organization_ids:, request_options: {}) end - def self.new(organization_ids:, request_options: {}); end - sig { override.returns({organization_ids: T::Array[String], request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + organization_ids: T::Array[String], + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/organization_delete_response.rbi b/rbi/hanzoai/models/organization_delete_response.rbi index a9f65a24..2171afee 100644 --- a/rbi/hanzoai/models/organization_delete_response.rbi +++ b/rbi/hanzoai/models/organization_delete_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :budget_id @@ -22,27 +24,41 @@ module Hanzoai attr_accessor :updated_by # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table - sig { returns(T.nilable(T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member])) } + sig do + returns( + T.nilable( + T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member] + ) + ) + end attr_reader :members sig do params( - members: T::Array[T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Member, Hanzoai::Internal::AnyHash)] - ) - .void + members: + T::Array[ + Hanzoai::Models::OrganizationDeleteResponseItem::Member::OrHash + ] + ).void end attr_writer :members @@ -61,14 +77,22 @@ module Hanzoai sig { params(spend: Float).void } attr_writer :spend - sig { returns(T.nilable(T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team])) } + sig do + returns( + T.nilable( + T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] + ) + ) + end attr_reader :teams sig do params( - teams: T::Array[T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Team, Hanzoai::Internal::AnyHash)] - ) - .void + teams: + T::Array[ + Hanzoai::Models::OrganizationDeleteResponseItem::Team::OrHash + ] + ).void end attr_writer :teams @@ -81,17 +105,23 @@ module Hanzoai models: T::Array[String], updated_at: Time, updated_by: String, - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), - members: T::Array[T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Member, Hanzoai::Internal::AnyHash)], + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable::OrHash + ), + members: + T::Array[ + Hanzoai::Models::OrganizationDeleteResponseItem::Member::OrHash + ], metadata: T.nilable(T.anything), organization_alias: T.nilable(String), organization_id: T.nilable(String), spend: Float, - teams: T::Array[T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Team, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + teams: + T::Array[ + Hanzoai::Models::OrganizationDeleteResponseItem::Team::OrHash + ] + ).returns(T.attached_class) end def self.new( budget_id:, @@ -108,30 +138,39 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ); end + ) + end + sig do - override - .returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable), - members: T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - } - ) + override.returns( + { + budget_id: String, + created_at: Time, + created_by: String, + models: T::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable + ), + members: + T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member], + metadata: T.nilable(T.anything), + organization_alias: T.nilable(String), + organization_id: T.nilable(String), + spend: Float, + teams: + T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -163,8 +202,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -174,25 +212,29 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -209,16 +251,22 @@ module Hanzoai attr_accessor :budget_id # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table @@ -246,14 +294,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -266,26 +314,34 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable + ), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -317,8 +373,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -328,26 +383,30 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end class Team < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -372,16 +431,22 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :created_at - sig { returns(T.nilable(Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable + ) + ) + end attr_reader :llm_model_table sig do params( - llm_model_table: T.nilable( - T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::OrHash + ) + ).void end attr_writer :llm_model_table @@ -397,10 +462,12 @@ module Hanzoai sig { params(members: T::Array[T.anything]).void } attr_writer :members - sig { returns(T.nilable(T::Array[Hanzoai::Models::Member])) } + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } attr_reader :members_with_roles - sig { params(members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)]).void } + sig do + params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void + end attr_writer :members_with_roles sig { returns(T.nilable(T.anything)) } @@ -438,13 +505,14 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: T.nilable( - T.any(Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, Hanzoai::Internal::AnyHash) - ), + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::OrHash + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_id: T.nilable(Integer), models: T::Array[T.anything], @@ -453,8 +521,7 @@ module Hanzoai spend: T.nilable(Float), team_alias: T.nilable(String), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( team_id:, @@ -476,36 +543,44 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: T.nilable(Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Models::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + team_id: String, + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable + ), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T.anything), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :created_by @@ -520,26 +595,37 @@ module Hanzoai created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String)) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(created_by:, updated_by:, model_aliases: nil) end - def self.new(created_by:, updated_by:, model_aliases: nil); end sig do - override - .returns({ - created_by: String, - updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) - }) + override.returns( + { + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + } + ) + end + def to_hash end - def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants + ] + ) + end + def self.variants + end end end end @@ -547,7 +633,9 @@ module Hanzoai OrganizationDeleteResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationDeleteResponseItem], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Models::OrganizationDeleteResponseItem + ], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/organization_list_params.rbi b/rbi/hanzoai/models/organization_list_params.rbi index b0322532..a1b2d9b2 100644 --- a/rbi/hanzoai/models/organization_list_params.rbi +++ b/rbi/hanzoai/models/organization_list_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/organization_list_response.rbi b/rbi/hanzoai/models/organization_list_response.rbi index 5a81ab49..e870ed19 100644 --- a/rbi/hanzoai/models/organization_list_response.rbi +++ b/rbi/hanzoai/models/organization_list_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :budget_id @@ -22,27 +24,41 @@ module Hanzoai attr_accessor :updated_by # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table - sig { returns(T.nilable(T::Array[Hanzoai::Models::OrganizationListResponseItem::Member])) } + sig do + returns( + T.nilable( + T::Array[Hanzoai::Models::OrganizationListResponseItem::Member] + ) + ) + end attr_reader :members sig do params( - members: T::Array[T.any(Hanzoai::Models::OrganizationListResponseItem::Member, Hanzoai::Internal::AnyHash)] - ) - .void + members: + T::Array[ + Hanzoai::Models::OrganizationListResponseItem::Member::OrHash + ] + ).void end attr_writer :members @@ -61,14 +77,22 @@ module Hanzoai sig { params(spend: Float).void } attr_writer :spend - sig { returns(T.nilable(T::Array[Hanzoai::Models::OrganizationListResponseItem::Team])) } + sig do + returns( + T.nilable( + T::Array[Hanzoai::Models::OrganizationListResponseItem::Team] + ) + ) + end attr_reader :teams sig do params( - teams: T::Array[T.any(Hanzoai::Models::OrganizationListResponseItem::Team, Hanzoai::Internal::AnyHash)] - ) - .void + teams: + T::Array[ + Hanzoai::Models::OrganizationListResponseItem::Team::OrHash + ] + ).void end attr_writer :teams @@ -81,17 +105,23 @@ module Hanzoai models: T::Array[String], updated_at: Time, updated_by: String, - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), - members: T::Array[T.any(Hanzoai::Models::OrganizationListResponseItem::Member, Hanzoai::Internal::AnyHash)], + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable::OrHash + ), + members: + T::Array[ + Hanzoai::Models::OrganizationListResponseItem::Member::OrHash + ], metadata: T.nilable(T.anything), organization_alias: T.nilable(String), organization_id: T.nilable(String), spend: Float, - teams: T::Array[T.any(Hanzoai::Models::OrganizationListResponseItem::Team, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + teams: + T::Array[ + Hanzoai::Models::OrganizationListResponseItem::Team::OrHash + ] + ).returns(T.attached_class) end def self.new( budget_id:, @@ -108,30 +138,38 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ); end + ) + end + sig do - override - .returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable), - members: T::Array[Hanzoai::Models::OrganizationListResponseItem::Member], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: T::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - } - ) + override.returns( + { + budget_id: String, + created_at: Time, + created_by: String, + models: T::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable + ), + members: + T::Array[Hanzoai::Models::OrganizationListResponseItem::Member], + metadata: T.nilable(T.anything), + organization_alias: T.nilable(String), + organization_id: T.nilable(String), + spend: Float, + teams: T::Array[Hanzoai::Models::OrganizationListResponseItem::Team] + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -163,8 +201,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -174,25 +211,29 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -209,16 +250,22 @@ module Hanzoai attr_accessor :budget_id # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table @@ -246,14 +293,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -266,26 +313,34 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable + ), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -317,8 +372,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -328,26 +382,30 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end class Team < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -372,16 +430,22 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :created_at - sig { returns(T.nilable(Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable + ) + ) + end attr_reader :llm_model_table sig do params( - llm_model_table: T.nilable( - T.any(Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::OrHash + ) + ).void end attr_writer :llm_model_table @@ -397,10 +461,12 @@ module Hanzoai sig { params(members: T::Array[T.anything]).void } attr_writer :members - sig { returns(T.nilable(T::Array[Hanzoai::Models::Member])) } + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } attr_reader :members_with_roles - sig { params(members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)]).void } + sig do + params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void + end attr_writer :members_with_roles sig { returns(T.nilable(T.anything)) } @@ -438,13 +504,14 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: T.nilable( - T.any(Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, Hanzoai::Internal::AnyHash) - ), + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::OrHash + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_id: T.nilable(Integer), models: T::Array[T.anything], @@ -453,8 +520,7 @@ module Hanzoai spend: T.nilable(Float), team_alias: T.nilable(String), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( team_id:, @@ -476,36 +542,44 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: T.nilable(Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Models::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + team_id: String, + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable + ), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T.anything), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :created_by @@ -520,26 +594,37 @@ module Hanzoai created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String)) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(created_by:, updated_by:, model_aliases: nil) end - def self.new(created_by:, updated_by:, model_aliases: nil); end sig do - override - .returns({ - created_by: String, - updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) - }) + override.returns( + { + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + } + ) + end + def to_hash end - def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants + ] + ) + end + def self.variants + end end end end @@ -547,7 +632,9 @@ module Hanzoai OrganizationListResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationListResponseItem], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Models::OrganizationListResponseItem + ], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/organization_update_member_params.rbi b/rbi/hanzoai/models/organization_update_member_params.rbi index 44d3d988..bbce1f44 100644 --- a/rbi/hanzoai/models/organization_update_member_params.rbi +++ b/rbi/hanzoai/models/organization_update_member_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :organization_id @@ -23,7 +25,11 @@ module Hanzoai # Team Roles: TEAM: used for JWT auth # # Customer Roles: CUSTOMER: External users -> these are customers - sig { returns(T.nilable(Hanzoai::Models::OrganizationUpdateMemberParams::Role::OrSymbol)) } + sig do + returns( + T.nilable(Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol) + ) + end attr_accessor :role sig { returns(T.nilable(String)) } @@ -36,12 +42,12 @@ module Hanzoai params( organization_id: String, max_budget_in_organization: T.nilable(Float), - role: T.nilable(Hanzoai::Models::OrganizationUpdateMemberParams::Role::OrSymbol), + role: + T.nilable(Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( organization_id:, @@ -61,21 +67,26 @@ module Hanzoai user_email: nil, user_id: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - organization_id: String, - max_budget_in_organization: T.nilable(Float), - role: T.nilable(Hanzoai::Models::OrganizationUpdateMemberParams::Role::OrSymbol), - user_email: T.nilable(String), - user_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + organization_id: String, + max_budget_in_organization: T.nilable(Float), + role: + T.nilable( + Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol + ), + user_email: T.nilable(String), + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can # login, view all own keys, view all spend ORG_ADMIN: admin over a specific @@ -91,22 +102,57 @@ module Hanzoai module Role extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::OrganizationUpdateMemberParams::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) + PROXY_ADMIN = + T.let( + :proxy_admin, + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ) PROXY_ADMIN_VIEWER = - T.let(:proxy_admin_viewer, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) - ORG_ADMIN = T.let(:org_admin, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) + T.let( + :proxy_admin_viewer, + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ) + ORG_ADMIN = + T.let( + :org_admin, + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ) INTERNAL_USER = - T.let(:internal_user, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) + T.let( + :internal_user, + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ) INTERNAL_USER_VIEWER = - T.let(:internal_user_viewer, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) - TEAM = T.let(:team, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) - CUSTOMER = T.let(:customer, Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol) + T.let( + :internal_user_viewer, + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ) + TEAM = + T.let( + :team, + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ) + CUSTOMER = + T.let( + :customer, + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::OrganizationUpdateMemberParams::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/organization_update_member_response.rbi b/rbi/hanzoai/models/organization_update_member_response.rbi index 8e590f2b..3a821632 100644 --- a/rbi/hanzoai/models/organization_update_member_response.rbi +++ b/rbi/hanzoai/models/organization_update_member_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -19,16 +21,22 @@ module Hanzoai attr_accessor :budget_id # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table @@ -56,14 +64,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -76,26 +84,33 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable + ), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -127,8 +142,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -138,22 +152,24 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/organization_update_params.rbi b/rbi/hanzoai/models/organization_update_params.rbi index 27b09896..0ca1d0e9 100644 --- a/rbi/hanzoai/models/organization_update_params.rbi +++ b/rbi/hanzoai/models/organization_update_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_id @@ -36,9 +38,8 @@ module Hanzoai organization_id: T.nilable(String), spend: T.nilable(Float), updated_by: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( budget_id: nil, @@ -49,23 +50,25 @@ module Hanzoai spend: nil, updated_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - budget_id: T.nilable(String), - metadata: T.nilable(T.anything), - models: T.nilable(T::Array[String]), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: T.nilable(Float), - updated_by: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + budget_id: T.nilable(String), + metadata: T.nilable(T.anything), + models: T.nilable(T::Array[String]), + organization_alias: T.nilable(String), + organization_id: T.nilable(String), + spend: T.nilable(Float), + updated_by: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/organization_update_response.rbi b/rbi/hanzoai/models/organization_update_response.rbi index 52e0bbea..10405f4c 100644 --- a/rbi/hanzoai/models/organization_update_response.rbi +++ b/rbi/hanzoai/models/organization_update_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :budget_id @@ -22,25 +24,39 @@ module Hanzoai attr_accessor :updated_by # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable)) } + sig do + returns( + T.nilable(Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable(T.any(Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash)) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table - sig { returns(T.nilable(T::Array[Hanzoai::Models::OrganizationUpdateResponse::Member])) } + sig do + returns( + T.nilable( + T::Array[Hanzoai::Models::OrganizationUpdateResponse::Member] + ) + ) + end attr_reader :members sig do params( - members: T::Array[T.any(Hanzoai::Models::OrganizationUpdateResponse::Member, Hanzoai::Internal::AnyHash)] - ) - .void + members: + T::Array[ + Hanzoai::Models::OrganizationUpdateResponse::Member::OrHash + ] + ).void end attr_writer :members @@ -59,14 +75,18 @@ module Hanzoai sig { params(spend: Float).void } attr_writer :spend - sig { returns(T.nilable(T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team])) } + sig do + returns( + T.nilable(T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team]) + ) + end attr_reader :teams sig do params( - teams: T::Array[T.any(Hanzoai::Models::OrganizationUpdateResponse::Team, Hanzoai::Internal::AnyHash)] - ) - .void + teams: + T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team::OrHash] + ).void end attr_writer :teams @@ -79,15 +99,21 @@ module Hanzoai models: T::Array[String], updated_at: Time, updated_by: String, - llm_budget_table: T.nilable(T.any(Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, Hanzoai::Internal::AnyHash)), - members: T::Array[T.any(Hanzoai::Models::OrganizationUpdateResponse::Member, Hanzoai::Internal::AnyHash)], + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable::OrHash + ), + members: + T::Array[ + Hanzoai::Models::OrganizationUpdateResponse::Member::OrHash + ], metadata: T.nilable(T.anything), organization_alias: T.nilable(String), organization_id: T.nilable(String), spend: Float, - teams: T::Array[T.any(Hanzoai::Models::OrganizationUpdateResponse::Team, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + teams: + T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team::OrHash] + ).returns(T.attached_class) end def self.new( budget_id:, @@ -104,30 +130,38 @@ module Hanzoai organization_id: nil, spend: nil, teams: nil - ); end + ) + end + sig do - override - .returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable), - members: T::Array[Hanzoai::Models::OrganizationUpdateResponse::Member], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] - } - ) + override.returns( + { + budget_id: String, + created_at: Time, + created_by: String, + models: T::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable + ), + members: + T::Array[Hanzoai::Models::OrganizationUpdateResponse::Member], + metadata: T.nilable(T.anything), + organization_alias: T.nilable(String), + organization_id: T.nilable(String), + spend: Float, + teams: T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -159,8 +193,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -170,25 +203,29 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end class Member < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -205,16 +242,22 @@ module Hanzoai attr_accessor :budget_id # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable::OrHash + ) + ).void end attr_writer :llm_budget_table @@ -242,14 +285,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any(Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, Hanzoai::Internal::AnyHash) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -262,26 +305,34 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable + ), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -313,8 +364,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -324,26 +374,30 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end class Team < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -368,16 +422,22 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :created_at - sig { returns(T.nilable(Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable + ) + ) + end attr_reader :llm_model_table sig do params( - llm_model_table: T.nilable( - T.any(Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, Hanzoai::Internal::AnyHash) - ) - ) - .void + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::OrHash + ) + ).void end attr_writer :llm_model_table @@ -393,10 +453,12 @@ module Hanzoai sig { params(members: T::Array[T.anything]).void } attr_writer :members - sig { returns(T.nilable(T::Array[Hanzoai::Models::Member])) } + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } attr_reader :members_with_roles - sig { params(members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)]).void } + sig do + params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void + end attr_writer :members_with_roles sig { returns(T.nilable(T.anything)) } @@ -434,13 +496,14 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: T.nilable( - T.any(Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, Hanzoai::Internal::AnyHash) - ), + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::OrHash + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_id: T.nilable(Integer), models: T::Array[T.anything], @@ -449,8 +512,7 @@ module Hanzoai spend: T.nilable(Float), team_alias: T.nilable(String), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( team_id:, @@ -472,36 +534,44 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: T.nilable(Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Models::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + team_id: String, + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + llm_model_table: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable + ), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T.anything), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :created_by @@ -516,26 +586,37 @@ module Hanzoai created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String)) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(created_by:, updated_by:, model_aliases: nil) end - def self.new(created_by:, updated_by:, model_aliases: nil); end sig do - override - .returns({ - created_by: String, - updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) - }) + override.returns( + { + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + } + ) + end + def to_hash end - def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/provider_list_budgets_params.rbi b/rbi/hanzoai/models/provider_list_budgets_params.rbi index 60d10c81..2c25bd81 100644 --- a/rbi/hanzoai/models/provider_list_budgets_params.rbi +++ b/rbi/hanzoai/models/provider_list_budgets_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/provider_list_budgets_response.rbi b/rbi/hanzoai/models/provider_list_budgets_response.rbi index 16cba784..56147308 100644 --- a/rbi/hanzoai/models/provider_list_budgets_response.rbi +++ b/rbi/hanzoai/models/provider_list_budgets_response.rbi @@ -3,14 +3,28 @@ module Hanzoai module Models class ProviderListBudgetsResponse < Hanzoai::Internal::Type::BaseModel - sig { returns(T.nilable(T::Hash[Symbol, Hanzoai::Models::ProviderListBudgetsResponse::Provider])) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig do + returns( + T.nilable( + T::Hash[ + Symbol, + Hanzoai::Models::ProviderListBudgetsResponse::Provider + ] + ) + ) + end attr_reader :providers sig do params( - providers: T::Hash[Symbol, T.any(Hanzoai::Models::ProviderListBudgetsResponse::Provider, Hanzoai::Internal::AnyHash)] - ) - .void + providers: + T::Hash[ + Symbol, + Hanzoai::Models::ProviderListBudgetsResponse::Provider::OrHash + ] + ).void end attr_writer :providers @@ -18,16 +32,33 @@ module Hanzoai # budget configs. sig do params( - providers: T::Hash[Symbol, T.any(Hanzoai::Models::ProviderListBudgetsResponse::Provider, Hanzoai::Internal::AnyHash)] - ) - .returns(T.attached_class) + providers: + T::Hash[ + Symbol, + Hanzoai::Models::ProviderListBudgetsResponse::Provider::OrHash + ] + ).returns(T.attached_class) + end + def self.new(providers: nil) end - def self.new(providers: nil); end - sig { override.returns({providers: T::Hash[Symbol, Hanzoai::Models::ProviderListBudgetsResponse::Provider]}) } - def to_hash; end + sig do + override.returns( + { + providers: + T::Hash[ + Symbol, + Hanzoai::Models::ProviderListBudgetsResponse::Provider + ] + } + ) + end + def to_hash + end class Provider < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(Float)) } attr_accessor :budget_limit @@ -47,23 +78,28 @@ module Hanzoai time_period: T.nilable(String), budget_reset_at: T.nilable(String), spend: T.nilable(Float) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + budget_limit:, + time_period:, + budget_reset_at: nil, + spend: nil + ) end - def self.new(budget_limit:, time_period:, budget_reset_at: nil, spend: nil); end sig do - override - .returns( - { - budget_limit: T.nilable(Float), - time_period: T.nilable(String), - budget_reset_at: T.nilable(String), - spend: T.nilable(Float) - } - ) + override.returns( + { + budget_limit: T.nilable(Float), + time_period: T.nilable(String), + budget_reset_at: T.nilable(String), + spend: T.nilable(Float) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/rerank_create_params.rbi b/rbi/hanzoai/models/rerank_create_params.rbi index 987385ce..f88539f9 100644 --- a/rbi/hanzoai/models/rerank_create_params.rbi +++ b/rbi/hanzoai/models/rerank_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/rerank_create_v1_params.rbi b/rbi/hanzoai/models/rerank_create_v1_params.rbi index 51c1ecdd..224179af 100644 --- a/rbi/hanzoai/models/rerank_create_v1_params.rbi +++ b/rbi/hanzoai/models/rerank_create_v1_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/rerank_create_v1_response.rbi b/rbi/hanzoai/models/rerank_create_v1_response.rbi index 7df23858..a183531c 100644 --- a/rbi/hanzoai/models/rerank_create_v1_response.rbi +++ b/rbi/hanzoai/models/rerank_create_v1_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - RerankCreateV1Response = T.let(T.anything, Hanzoai::Internal::Type::Converter) + RerankCreateV1Response = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/rerank_create_v2_params.rbi b/rbi/hanzoai/models/rerank_create_v2_params.rbi index dd0f87c5..35e2724c 100644 --- a/rbi/hanzoai/models/rerank_create_v2_params.rbi +++ b/rbi/hanzoai/models/rerank_create_v2_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/rerank_create_v2_response.rbi b/rbi/hanzoai/models/rerank_create_v2_response.rbi index 8f6bf1ff..bafd8dd7 100644 --- a/rbi/hanzoai/models/rerank_create_v2_response.rbi +++ b/rbi/hanzoai/models/rerank_create_v2_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - RerankCreateV2Response = T.let(T.anything, Hanzoai::Internal::Type::Converter) + RerankCreateV2Response = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/response_create_params.rbi b/rbi/hanzoai/models/response_create_params.rbi index f123dfd1..ce7ba900 100644 --- a/rbi/hanzoai/models/response_create_params.rbi +++ b/rbi/hanzoai/models/response_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/response_create_response.rbi b/rbi/hanzoai/models/response_create_response.rbi index 32db8ef6..7df60b0d 100644 --- a/rbi/hanzoai/models/response_create_response.rbi +++ b/rbi/hanzoai/models/response_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - ResponseCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ResponseCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/response_delete_params.rbi b/rbi/hanzoai/models/response_delete_params.rbi index 6b1ce857..1583b96c 100644 --- a/rbi/hanzoai/models/response_delete_params.rbi +++ b/rbi/hanzoai/models/response_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/response_delete_response.rbi b/rbi/hanzoai/models/response_delete_response.rbi index 9964d6bf..bd2ba788 100644 --- a/rbi/hanzoai/models/response_delete_response.rbi +++ b/rbi/hanzoai/models/response_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - ResponseDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ResponseDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/response_retrieve_params.rbi b/rbi/hanzoai/models/response_retrieve_params.rbi index d0fe1e26..41c72a1b 100644 --- a/rbi/hanzoai/models/response_retrieve_params.rbi +++ b/rbi/hanzoai/models/response_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/response_retrieve_response.rbi b/rbi/hanzoai/models/response_retrieve_response.rbi index 20a65b65..1d1251e1 100644 --- a/rbi/hanzoai/models/response_retrieve_response.rbi +++ b/rbi/hanzoai/models/response_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - ResponseRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ResponseRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/responses/input_item_list_params.rbi b/rbi/hanzoai/models/responses/input_item_list_params.rbi index e0d0a4f5..1903895d 100644 --- a/rbi/hanzoai/models/responses/input_item_list_params.rbi +++ b/rbi/hanzoai/models/responses/input_item_list_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/responses/input_item_list_response.rbi b/rbi/hanzoai/models/responses/input_item_list_response.rbi index df2eb6e3..15916c19 100644 --- a/rbi/hanzoai/models/responses/input_item_list_response.rbi +++ b/rbi/hanzoai/models/responses/input_item_list_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Responses - InputItemListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + InputItemListResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/route_list_params.rbi b/rbi/hanzoai/models/route_list_params.rbi index e2710be6..be477846 100644 --- a/rbi/hanzoai/models/route_list_params.rbi +++ b/rbi/hanzoai/models/route_list_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/setting_retrieve_params.rbi b/rbi/hanzoai/models/setting_retrieve_params.rbi index 4c7cc48d..ed99e660 100644 --- a/rbi/hanzoai/models/setting_retrieve_params.rbi +++ b/rbi/hanzoai/models/setting_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/setting_retrieve_response.rbi b/rbi/hanzoai/models/setting_retrieve_response.rbi index f988fe3a..5db9c937 100644 --- a/rbi/hanzoai/models/setting_retrieve_response.rbi +++ b/rbi/hanzoai/models/setting_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - SettingRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + SettingRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/spend_calculate_spend_params.rbi b/rbi/hanzoai/models/spend_calculate_spend_params.rbi index 517cfef5..a3f68463 100644 --- a/rbi/hanzoai/models/spend_calculate_spend_params.rbi +++ b/rbi/hanzoai/models/spend_calculate_spend_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.anything)) } attr_accessor :completion_response @@ -20,24 +22,29 @@ module Hanzoai completion_response: T.nilable(T.anything), messages: T.nilable(T::Array[T.anything]), model: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + completion_response: nil, + messages: nil, + model: nil, + request_options: {} + ) end - def self.new(completion_response: nil, messages: nil, model: nil, request_options: {}); end sig do - override - .returns( - { - completion_response: T.nilable(T.anything), - messages: T.nilable(T::Array[T.anything]), - model: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + completion_response: T.nilable(T.anything), + messages: T.nilable(T::Array[T.anything]), + model: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/spend_calculate_spend_response.rbi b/rbi/hanzoai/models/spend_calculate_spend_response.rbi index 7b16657a..dc49b920 100644 --- a/rbi/hanzoai/models/spend_calculate_spend_response.rbi +++ b/rbi/hanzoai/models/spend_calculate_spend_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - SpendCalculateSpendResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + SpendCalculateSpendResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/spend_list_logs_params.rbi b/rbi/hanzoai/models/spend_list_logs_params.rbi index eb67d326..e542e844 100644 --- a/rbi/hanzoai/models/spend_list_logs_params.rbi +++ b/rbi/hanzoai/models/spend_list_logs_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Get spend logs based on api key sig { returns(T.nilable(String)) } attr_accessor :api_key @@ -34,9 +36,8 @@ module Hanzoai request_id: T.nilable(String), start_date: T.nilable(String), user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Get spend logs based on api key @@ -51,21 +52,23 @@ module Hanzoai # Get spend logs based on user_id user_id: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - api_key: T.nilable(String), - end_date: T.nilable(String), - request_id: T.nilable(String), - start_date: T.nilable(String), - user_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + api_key: T.nilable(String), + end_date: T.nilable(String), + request_id: T.nilable(String), + start_date: T.nilable(String), + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/spend_list_logs_response.rbi b/rbi/hanzoai/models/spend_list_logs_response.rbi index 280608f8..9b478bf8 100644 --- a/rbi/hanzoai/models/spend_list_logs_response.rbi +++ b/rbi/hanzoai/models/spend_list_logs_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :api_key @@ -12,13 +14,17 @@ module Hanzoai sig { returns(T.nilable(T.any(String, Time))) } attr_accessor :end_time - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :messages sig { returns(String) } attr_accessor :request_id - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :response sig { returns(T.nilable(T.any(String, Time))) } @@ -87,8 +93,7 @@ module Hanzoai spend: T.nilable(Float), total_tokens: T.nilable(Integer), user: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( api_key:, @@ -110,47 +115,70 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ); end + ) + end + sig do - override - .returns( - { - api_key: String, - call_type: String, - end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), - api_base: T.nilable(String), - cache_hit: T.nilable(String), - cache_key: T.nilable(String), - completion_tokens: T.nilable(Integer), - metadata: T.anything, - model: T.nilable(String), - prompt_tokens: T.nilable(Integer), - request_tags: T.anything, - requester_ip_address: T.nilable(String), - spend: T.nilable(Float), - total_tokens: T.nilable(Integer), - user: T.nilable(String) - } - ) + override.returns( + { + api_key: String, + call_type: String, + end_time: T.nilable(T.any(String, Time)), + messages: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + request_id: String, + response: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + start_time: T.nilable(T.any(String, Time)), + api_base: T.nilable(String), + cache_hit: T.nilable(String), + cache_key: T.nilable(String), + completion_tokens: T.nilable(Integer), + metadata: T.anything, + model: T.nilable(String), + prompt_tokens: T.nilable(Integer), + request_tags: T.anything, + requester_ip_address: T.nilable(String), + spend: T.nilable(Float), + total_tokens: T.nilable(Integer), + user: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListLogsResponseItem::EndTime::Variants + ] + ) + end + def self.variants + end end module Messages extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListLogsResponseItem::Messages::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( @@ -162,8 +190,18 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListLogsResponseItem::Response::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( @@ -175,14 +213,25 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListLogsResponseItem::StartTime::Variants + ] + ) + end + def self.variants + end end end SpendListLogsResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::SpendListLogsResponseItem], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Models::SpendListLogsResponseItem + ], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/spend_list_tags_params.rbi b/rbi/hanzoai/models/spend_list_tags_params.rbi index e147d525..9ea5fc41 100644 --- a/rbi/hanzoai/models/spend_list_tags_params.rbi +++ b/rbi/hanzoai/models/spend_list_tags_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Time till which to view key spend sig { returns(T.nilable(String)) } attr_accessor :end_date @@ -18,9 +20,8 @@ module Hanzoai params( end_date: T.nilable(String), start_date: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Time till which to view key spend @@ -28,18 +29,20 @@ module Hanzoai # Time from which to start viewing key spend start_date: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - end_date: T.nilable(String), - start_date: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + end_date: T.nilable(String), + start_date: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/spend_list_tags_response.rbi b/rbi/hanzoai/models/spend_list_tags_response.rbi index b2e6af86..51efce78 100644 --- a/rbi/hanzoai/models/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/spend_list_tags_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :api_key @@ -12,13 +14,17 @@ module Hanzoai sig { returns(T.nilable(T.any(String, Time))) } attr_accessor :end_time - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :messages sig { returns(String) } attr_accessor :request_id - sig { returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) } + sig do + returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + end attr_accessor :response sig { returns(T.nilable(T.any(String, Time))) } @@ -87,8 +93,7 @@ module Hanzoai spend: T.nilable(Float), total_tokens: T.nilable(Integer), user: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( api_key:, @@ -110,47 +115,70 @@ module Hanzoai spend: nil, total_tokens: nil, user: nil - ); end + ) + end + sig do - override - .returns( - { - api_key: String, - call_type: String, - end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), - api_base: T.nilable(String), - cache_hit: T.nilable(String), - cache_key: T.nilable(String), - completion_tokens: T.nilable(Integer), - metadata: T.anything, - model: T.nilable(String), - prompt_tokens: T.nilable(Integer), - request_tags: T.anything, - requester_ip_address: T.nilable(String), - spend: T.nilable(Float), - total_tokens: T.nilable(Integer), - user: T.nilable(String) - } - ) + override.returns( + { + api_key: String, + call_type: String, + end_time: T.nilable(T.any(String, Time)), + messages: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + request_id: String, + response: + T.nilable(T.any(String, T::Array[T.anything], T.anything)), + start_time: T.nilable(T.any(String, Time)), + api_base: T.nilable(String), + cache_hit: T.nilable(String), + cache_key: T.nilable(String), + completion_tokens: T.nilable(Integer), + metadata: T.anything, + model: T.nilable(String), + prompt_tokens: T.nilable(Integer), + request_tags: T.anything, + requester_ip_address: T.nilable(String), + spend: T.nilable(Float), + total_tokens: T.nilable(Integer), + user: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end module EndTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListTagsResponseItem::EndTime::Variants + ] + ) + end + def self.variants + end end module Messages extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListTagsResponseItem::Messages::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( @@ -162,8 +190,18 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - sig { override.returns([String, T::Array[T.anything], T.anything]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListTagsResponseItem::Response::Variants + ] + ) + end + def self.variants + end UnionMember1Array = T.let( @@ -175,14 +213,25 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - sig { override.returns([String, Time]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Time) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::SpendListTagsResponseItem::StartTime::Variants + ] + ) + end + def self.variants + end end end SpendListTagsResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::SpendListTagsResponseItem], + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Models::SpendListTagsResponseItem + ], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/team/callback_add_params.rbi b/rbi/hanzoai/models/team/callback_add_params.rbi index fb5c3d56..4ee9acf0 100644 --- a/rbi/hanzoai/models/team/callback_add_params.rbi +++ b/rbi/hanzoai/models/team/callback_add_params.rbi @@ -7,13 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :callback_name sig { returns(T::Hash[Symbol, String]) } attr_accessor :callback_vars - sig { returns(T.nilable(Hanzoai::Models::Team::CallbackAddParams::CallbackType::OrSymbol)) } + sig do + returns( + T.nilable(Hanzoai::Team::CallbackAddParams::CallbackType::OrSymbol) + ) + end attr_accessor :callback_type # The llm-changed-by header enables tracking of actions performed by authorized @@ -28,11 +34,13 @@ module Hanzoai params( callback_name: String, callback_vars: T::Hash[Symbol, String], - callback_type: T.nilable(Hanzoai::Models::Team::CallbackAddParams::CallbackType::OrSymbol), + callback_type: + T.nilable( + Hanzoai::Team::CallbackAddParams::CallbackType::OrSymbol + ), llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( callback_name:, @@ -42,34 +50,60 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - callback_name: String, - callback_vars: T::Hash[Symbol, String], - callback_type: T.nilable(Hanzoai::Models::Team::CallbackAddParams::CallbackType::OrSymbol), - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + callback_name: String, + callback_vars: T::Hash[Symbol, String], + callback_type: + T.nilable( + Hanzoai::Team::CallbackAddParams::CallbackType::OrSymbol + ), + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module CallbackType extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Team::CallbackAddParams::CallbackType) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - SUCCESS = T.let(:success, Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol) - FAILURE = T.let(:failure, Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol) + SUCCESS = + T.let( + :success, + Hanzoai::Team::CallbackAddParams::CallbackType::TaggedSymbol + ) + FAILURE = + T.let( + :failure, + Hanzoai::Team::CallbackAddParams::CallbackType::TaggedSymbol + ) SUCCESS_AND_FAILURE = - T.let(:success_and_failure, Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol) + T.let( + :success_and_failure, + Hanzoai::Team::CallbackAddParams::CallbackType::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::Team::CallbackAddParams::CallbackType::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::Team::CallbackAddParams::CallbackType::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/team/callback_add_response.rbi b/rbi/hanzoai/models/team/callback_add_response.rbi index d95a1d3a..16234978 100644 --- a/rbi/hanzoai/models/team/callback_add_response.rbi +++ b/rbi/hanzoai/models/team/callback_add_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Team - CallbackAddResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CallbackAddResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/team/callback_retrieve_params.rbi b/rbi/hanzoai/models/team/callback_retrieve_params.rbi index 9bac5bc5..ff05e250 100644 --- a/rbi/hanzoai/models/team/callback_retrieve_params.rbi +++ b/rbi/hanzoai/models/team/callback_retrieve_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team/callback_retrieve_response.rbi b/rbi/hanzoai/models/team/callback_retrieve_response.rbi index 32940d4e..7c2e58be 100644 --- a/rbi/hanzoai/models/team/callback_retrieve_response.rbi +++ b/rbi/hanzoai/models/team/callback_retrieve_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Team - CallbackRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + CallbackRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/team/model_add_params.rbi b/rbi/hanzoai/models/team/model_add_params.rbi index 08db5440..61b6fb87 100644 --- a/rbi/hanzoai/models/team/model_add_params.rbi +++ b/rbi/hanzoai/models/team/model_add_params.rbi @@ -7,6 +7,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :models @@ -17,11 +19,11 @@ module Hanzoai params( models: T::Array[String], team_id: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(models:, team_id:, request_options: {}) end - def self.new(models:, team_id:, request_options: {}); end sig do override.returns( @@ -32,7 +34,8 @@ module Hanzoai } ) end - def to_hash; end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team/model_remove_params.rbi b/rbi/hanzoai/models/team/model_remove_params.rbi index a1ebb700..c3a751e6 100644 --- a/rbi/hanzoai/models/team/model_remove_params.rbi +++ b/rbi/hanzoai/models/team/model_remove_params.rbi @@ -7,6 +7,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :models @@ -17,11 +19,11 @@ module Hanzoai params( models: T::Array[String], team_id: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(models:, team_id:, request_options: {}) end - def self.new(models:, team_id:, request_options: {}); end sig do override.returns( @@ -32,7 +34,8 @@ module Hanzoai } ) end - def to_hash; end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team/model_remove_response.rbi b/rbi/hanzoai/models/team/model_remove_response.rbi index aa2c26bb..05159f7d 100644 --- a/rbi/hanzoai/models/team/model_remove_response.rbi +++ b/rbi/hanzoai/models/team/model_remove_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Team - ModelRemoveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ModelRemoveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/team_add_member_params.rbi b/rbi/hanzoai/models/team_add_member_params.rbi index ad1f3f27..d2219439 100644 --- a/rbi/hanzoai/models/team_add_member_params.rbi +++ b/rbi/hanzoai/models/team_add_member_params.rbi @@ -6,7 +6,9 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(T.any(T::Array[Hanzoai::Models::Member], Hanzoai::Models::Member)) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig { returns(T.any(T::Array[Hanzoai::Member], Hanzoai::Member)) } attr_accessor :member sig { returns(String) } @@ -17,40 +19,53 @@ module Hanzoai sig do params( - member: T.any( - T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], - Hanzoai::Models::Member, - Hanzoai::Internal::AnyHash - ), + member: + T.any(T::Array[Hanzoai::Member::OrHash], Hanzoai::Member::OrHash), team_id: String, max_budget_in_team: T.nilable(Float), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + member:, + team_id:, + max_budget_in_team: nil, + request_options: {} + ) end - def self.new(member:, team_id:, max_budget_in_team: nil, request_options: {}); end sig do - override - .returns( - { - member: T.any(T::Array[Hanzoai::Models::Member], Hanzoai::Models::Member), - team_id: String, - max_budget_in_team: T.nilable(Float), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + member: T.any(T::Array[Hanzoai::Member], Hanzoai::Member), + team_id: String, + max_budget_in_team: T.nilable(Float), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module Member extend Hanzoai::Internal::Type::Union - sig { override.returns([T::Array[Hanzoai::Models::Member], Hanzoai::Models::Member]) } - def self.variants; end + Variants = + T.type_alias { T.any(T::Array[Hanzoai::Member], Hanzoai::Member) } + + sig do + override.returns( + T::Array[Hanzoai::TeamAddMemberParams::Member::Variants] + ) + end + def self.variants + end MemberArray = - T.let(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member], Hanzoai::Internal::Type::Converter) + T.let( + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member], + Hanzoai::Internal::Type::Converter + ) end end end diff --git a/rbi/hanzoai/models/team_add_member_response.rbi b/rbi/hanzoai/models/team_add_member_response.rbi index a957e053..46bca597 100644 --- a/rbi/hanzoai/models/team_add_member_response.rbi +++ b/rbi/hanzoai/models/team_add_member_response.rbi @@ -3,13 +3,23 @@ module Hanzoai module Models class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id - sig { returns(T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership]) } + sig do + returns( + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership + ] + ) + end attr_accessor :updated_team_memberships - sig { returns(T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser]) } + sig do + returns(T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser]) + end attr_accessor :updated_users sig { returns(T.nilable(T::Array[T.anything])) } @@ -33,14 +43,20 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :created_at - sig { returns(T.nilable(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable)) } + sig do + returns( + T.nilable(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable) + ) + end attr_reader :llm_model_table sig do params( - llm_model_table: T.nilable(T.any(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, Hanzoai::Internal::AnyHash)) - ) - .void + llm_model_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::OrHash + ) + ).void end attr_writer :llm_model_table @@ -56,10 +72,10 @@ module Hanzoai sig { params(members: T::Array[T.anything]).void } attr_writer :members - sig { returns(T.nilable(T::Array[Hanzoai::Models::Member])) } + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } attr_reader :members_with_roles - sig { params(members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)]).void } + sig { params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void } attr_writer :members_with_roles sig { returns(T.nilable(T.anything)) } @@ -92,18 +108,27 @@ module Hanzoai sig do params( team_id: String, - updated_team_memberships: T::Array[T.any(Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership, Hanzoai::Internal::AnyHash)], - updated_users: T::Array[T.any(Hanzoai::Models::TeamAddMemberResponse::UpdatedUser, Hanzoai::Internal::AnyHash)], + updated_team_memberships: + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::OrHash + ], + updated_users: + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrHash + ], admins: T::Array[T.anything], blocked: T::Boolean, budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: T.nilable(T.any(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, Hanzoai::Internal::AnyHash)), + llm_model_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::OrHash + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_id: T.nilable(Integer), models: T::Array[T.anything], @@ -112,8 +137,7 @@ module Hanzoai spend: T.nilable(Float), team_alias: T.nilable(String), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( team_id:, @@ -137,55 +161,67 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - team_id: String, - updated_team_memberships: T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership], - updated_users: T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser], - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: T.nilable(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Models::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + team_id: String, + updated_team_memberships: + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership + ], + updated_users: + T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser], + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + llm_model_table: + T.nilable(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T.anything), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :budget_id # Represents user-controllable params for a LLM_BudgetTable record - sig { returns(T.nilable(Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable)) } + sig do + returns( + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable + ) + ) + end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash + llm_budget_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable::OrHash ) - ) - ) - .void + ).void end attr_writer :llm_budget_table @@ -198,16 +234,13 @@ module Hanzoai sig do params( budget_id: String, - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable::OrHash + ), team_id: String, user_id: String - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_id:, @@ -215,21 +248,29 @@ module Hanzoai llm_budget_table:, team_id:, user_id: - ); end + ) + end + sig do - override - .returns( - { - budget_id: String, - llm_budget_table: T.nilable(Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable), - team_id: String, - user_id: String - } - ) + override.returns( + { + budget_id: String, + llm_budget_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable + ), + team_id: String, + user_id: String + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -261,8 +302,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -272,26 +312,30 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end class UpdatedUser < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :user_id @@ -319,7 +363,15 @@ module Hanzoai sig { params(models: T::Array[T.anything]).void } attr_writer :models - sig { returns(T.nilable(T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership])) } + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership + ] + ) + ) + end attr_accessor :organization_memberships sig { returns(T.nilable(Integer)) } @@ -359,14 +411,12 @@ module Hanzoai model_max_budget: T.nilable(T.anything), model_spend: T.nilable(T.anything), models: T::Array[T.anything], - organization_memberships: T.nilable( - T::Array[ - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership, - Hanzoai::Internal::AnyHash - ) - ] - ), + organization_memberships: + T.nilable( + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::OrHash + ] + ), rpm_limit: T.nilable(Integer), spend: Float, sso_user_id: T.nilable(String), @@ -374,8 +424,7 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_email: T.nilable(String), user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( user_id:, @@ -394,33 +443,43 @@ module Hanzoai tpm_limit: nil, user_email: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - user_id: String, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_spend: T.nilable(T.anything), - models: T::Array[T.anything], - organization_memberships: T.nilable(T::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership]), - rpm_limit: T.nilable(Integer), - spend: Float, - sso_user_id: T.nilable(String), - teams: T::Array[String], - tpm_limit: T.nilable(Integer), - user_email: T.nilable(String), - user_role: T.nilable(String) - } - ) + override.returns( + { + user_id: String, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + max_budget: T.nilable(Float), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_spend: T.nilable(T.anything), + models: T::Array[T.anything], + organization_memberships: + T.nilable( + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership + ] + ), + rpm_limit: T.nilable(Integer), + spend: Float, + sso_user_id: T.nilable(String), + teams: T::Array[String], + tpm_limit: T.nilable(Integer), + user_email: T.nilable(String), + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class OrganizationMembership < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(Time) } attr_accessor :created_at @@ -439,21 +498,20 @@ module Hanzoai # Represents user-controllable params for a LLM_BudgetTable record sig do returns( - T.nilable(Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable) + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable + ) ) end attr_reader :llm_budget_table sig do params( - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash + llm_budget_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash ) - ) - ) - .void + ).void end attr_writer :llm_budget_table @@ -481,17 +539,14 @@ module Hanzoai updated_at: Time, user_id: String, budget_id: T.nilable(String), - llm_budget_table: T.nilable( - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - ), + llm_budget_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash + ), spend: Float, user: T.anything, user_role: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( created_at:, @@ -504,26 +559,34 @@ module Hanzoai spend: nil, user: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: T.nilable(Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + llm_budget_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable + ), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -555,8 +618,7 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( budget_duration: nil, @@ -566,27 +628,31 @@ module Hanzoai rpm_limit: nil, soft_budget: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + budget_duration: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end end end end class LlmModelTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :created_by @@ -597,26 +663,41 @@ module Hanzoai attr_accessor :model_aliases sig do - params(created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String))) - .returns(T.attached_class) + params( + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + ).returns(T.attached_class) + end + def self.new(created_by:, updated_by:, model_aliases: nil) end - def self.new(created_by:, updated_by:, model_aliases: nil); end sig do - override - .returns({ - created_by: String, - updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) - }) + override.returns( + { + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + } + ) + end + def to_hash end - def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/team_block_params.rbi b/rbi/hanzoai/models/team_block_params.rbi index 9f83545b..5dc63e6c 100644 --- a/rbi/hanzoai/models/team_block_params.rbi +++ b/rbi/hanzoai/models/team_block_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team_create_params.rbi b/rbi/hanzoai/models/team_create_params.rbi index 05960ce8..fc842b01 100644 --- a/rbi/hanzoai/models/team_create_params.rbi +++ b/rbi/hanzoai/models/team_create_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T::Array[T.anything])) } attr_reader :admins @@ -33,10 +35,10 @@ module Hanzoai sig { params(members: T::Array[T.anything]).void } attr_writer :members - sig { returns(T.nilable(T::Array[Hanzoai::Models::Member])) } + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } attr_reader :members_with_roles - sig { params(members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)]).void } + sig { params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void } attr_writer :members_with_roles sig { returns(T.nilable(T.anything)) } @@ -85,7 +87,7 @@ module Hanzoai guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_aliases: T.nilable(T.anything), models: T::Array[T.anything], @@ -96,9 +98,8 @@ module Hanzoai team_id: T.nilable(String), tpm_limit: T.nilable(Integer), llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( admins: nil, @@ -121,33 +122,35 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - guardrails: T.nilable(T::Array[String]), - max_budget: T.nilable(Float), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Models::Member], - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - tags: T.nilable(T::Array[T.anything]), - team_alias: T.nilable(String), - team_id: T.nilable(String), - tpm_limit: T.nilable(Integer), - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + guardrails: T.nilable(T::Array[String]), + max_budget: T.nilable(Float), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T.anything), + model_aliases: T.nilable(T.anything), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + tags: T.nilable(T::Array[T.anything]), + team_alias: T.nilable(String), + team_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/team_create_response.rbi b/rbi/hanzoai/models/team_create_response.rbi index d31a4f67..51f447b1 100644 --- a/rbi/hanzoai/models/team_create_response.rbi +++ b/rbi/hanzoai/models/team_create_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -27,14 +29,18 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :created_at - sig { returns(T.nilable(Hanzoai::Models::TeamCreateResponse::LlmModelTable)) } + sig do + returns(T.nilable(Hanzoai::Models::TeamCreateResponse::LlmModelTable)) + end attr_reader :llm_model_table sig do params( - llm_model_table: T.nilable(T.any(Hanzoai::Models::TeamCreateResponse::LlmModelTable, Hanzoai::Internal::AnyHash)) - ) - .void + llm_model_table: + T.nilable( + Hanzoai::Models::TeamCreateResponse::LlmModelTable::OrHash + ) + ).void end attr_writer :llm_model_table @@ -50,10 +56,10 @@ module Hanzoai sig { params(members: T::Array[T.anything]).void } attr_writer :members - sig { returns(T.nilable(T::Array[Hanzoai::Models::Member])) } + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } attr_reader :members_with_roles - sig { params(members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)]).void } + sig { params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void } attr_writer :members_with_roles sig { returns(T.nilable(T.anything)) } @@ -91,11 +97,14 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: T.nilable(T.any(Hanzoai::Models::TeamCreateResponse::LlmModelTable, Hanzoai::Internal::AnyHash)), + llm_model_table: + T.nilable( + Hanzoai::Models::TeamCreateResponse::LlmModelTable::OrHash + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_id: T.nilable(Integer), models: T::Array[T.anything], @@ -104,8 +113,7 @@ module Hanzoai spend: T.nilable(Float), team_alias: T.nilable(String), tpm_limit: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( team_id:, @@ -127,36 +135,41 @@ module Hanzoai spend: nil, team_alias: nil, tpm_limit: nil - ); end + ) + end + sig do - override - .returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: T.nilable(Hanzoai::Models::TeamCreateResponse::LlmModelTable), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Models::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) + override.returns( + { + team_id: String, + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + llm_model_table: + T.nilable(Hanzoai::Models::TeamCreateResponse::LlmModelTable), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T.anything), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class LlmModelTable < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :created_by @@ -167,26 +180,41 @@ module Hanzoai attr_accessor :model_aliases sig do - params(created_by: String, updated_by: String, model_aliases: T.nilable(T.any(T.anything, String))) - .returns(T.attached_class) + params( + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + ).returns(T.attached_class) + end + def self.new(created_by:, updated_by:, model_aliases: nil) end - def self.new(created_by:, updated_by:, model_aliases: nil); end sig do - override - .returns({ - created_by: String, - updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) - }) + override.returns( + { + created_by: String, + updated_by: String, + model_aliases: T.nilable(T.any(T.anything, String)) + } + ) + end + def to_hash end - def to_hash; end module ModelAliases extend Hanzoai::Internal::Type::Union - sig { override.returns([T.anything, String]) } - def self.variants; end + Variants = T.type_alias { T.any(T.anything, String) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/hanzoai/models/team_delete_params.rbi b/rbi/hanzoai/models/team_delete_params.rbi index c768946f..40589c73 100644 --- a/rbi/hanzoai/models/team_delete_params.rbi +++ b/rbi/hanzoai/models/team_delete_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :team_ids @@ -21,9 +23,8 @@ module Hanzoai params( team_ids: T::Array[String], llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( team_ids:, @@ -31,16 +32,20 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns({ - team_ids: T::Array[String], - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - }) + override.returns( + { + team_ids: T::Array[String], + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/team_disable_logging_params.rbi b/rbi/hanzoai/models/team_disable_logging_params.rbi index e3026e08..67c1b1c8 100644 --- a/rbi/hanzoai/models/team_disable_logging_params.rbi +++ b/rbi/hanzoai/models/team_disable_logging_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team_disable_logging_response.rbi b/rbi/hanzoai/models/team_disable_logging_response.rbi index 1e68ea6e..8b15a6a2 100644 --- a/rbi/hanzoai/models/team_disable_logging_response.rbi +++ b/rbi/hanzoai/models/team_disable_logging_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - TeamDisableLoggingResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + TeamDisableLoggingResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/team_list_available_params.rbi b/rbi/hanzoai/models/team_list_available_params.rbi index d2d59b8f..b12a4832 100644 --- a/rbi/hanzoai/models/team_list_available_params.rbi +++ b/rbi/hanzoai/models/team_list_available_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.anything)) } attr_reader :response_model @@ -15,14 +17,22 @@ module Hanzoai sig do params( response_model: T.anything, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(response_model: nil, request_options: {}) end - def self.new(response_model: nil, request_options: {}); end - sig { override.returns({response_model: T.anything, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + response_model: T.anything, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team_list_available_response.rbi b/rbi/hanzoai/models/team_list_available_response.rbi index cfafd9ba..f6dc1e51 100644 --- a/rbi/hanzoai/models/team_list_available_response.rbi +++ b/rbi/hanzoai/models/team_list_available_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - TeamListAvailableResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + TeamListAvailableResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/team_list_params.rbi b/rbi/hanzoai/models/team_list_params.rbi index 257e4205..bd7f1479 100644 --- a/rbi/hanzoai/models/team_list_params.rbi +++ b/rbi/hanzoai/models/team_list_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :organization_id @@ -17,27 +19,28 @@ module Hanzoai params( organization_id: T.nilable(String), user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( organization_id: nil, # Only return teams which this 'user_id' belongs to user_id: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - organization_id: T.nilable(String), - user_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + organization_id: T.nilable(String), + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/team_remove_member_params.rbi b/rbi/hanzoai/models/team_remove_member_params.rbi index 1fc3920d..1bd4eb3a 100644 --- a/rbi/hanzoai/models/team_remove_member_params.rbi +++ b/rbi/hanzoai/models/team_remove_member_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -20,24 +22,24 @@ module Hanzoai team_id: String, user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(team_id:, user_email: nil, user_id: nil, request_options: {}) end - def self.new(team_id:, user_email: nil, user_id: nil, request_options: {}); end sig do - override - .returns( - { - team_id: String, - user_email: T.nilable(String), - user_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + team_id: String, + user_email: T.nilable(String), + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/team_remove_member_response.rbi b/rbi/hanzoai/models/team_remove_member_response.rbi index 5f9e7999..88259905 100644 --- a/rbi/hanzoai/models/team_remove_member_response.rbi +++ b/rbi/hanzoai/models/team_remove_member_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - TeamRemoveMemberResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + TeamRemoveMemberResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/team_retrieve_info_params.rbi b/rbi/hanzoai/models/team_retrieve_info_params.rbi index d66002d1..f3feec02 100644 --- a/rbi/hanzoai/models/team_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/team_retrieve_info_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Team ID in the request parameters sig { returns(T.nilable(String)) } attr_reader :team_id @@ -14,16 +16,25 @@ module Hanzoai attr_writer :team_id sig do - params(team_id: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Team ID in the request parameters team_id: nil, request_options: {} - ); end - sig { override.returns({team_id: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { team_id: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team_retrieve_info_response.rbi b/rbi/hanzoai/models/team_retrieve_info_response.rbi index 22d3a395..07e0275b 100644 --- a/rbi/hanzoai/models/team_retrieve_info_response.rbi +++ b/rbi/hanzoai/models/team_retrieve_info_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - TeamRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + TeamRetrieveInfoResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/team_unblock_params.rbi b/rbi/hanzoai/models/team_unblock_params.rbi index 79f0d320..f0a20baf 100644 --- a/rbi/hanzoai/models/team_unblock_params.rbi +++ b/rbi/hanzoai/models/team_unblock_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/team_update_member_params.rbi b/rbi/hanzoai/models/team_update_member_params.rbi index 2a3970c7..688011d1 100644 --- a/rbi/hanzoai/models/team_update_member_params.rbi +++ b/rbi/hanzoai/models/team_update_member_params.rbi @@ -6,13 +6,17 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id sig { returns(T.nilable(Float)) } attr_accessor :max_budget_in_team - sig { returns(T.nilable(Hanzoai::Models::TeamUpdateMemberParams::Role::OrSymbol)) } + sig do + returns(T.nilable(Hanzoai::TeamUpdateMemberParams::Role::OrSymbol)) + end attr_accessor :role sig { returns(T.nilable(String)) } @@ -25,12 +29,11 @@ module Hanzoai params( team_id: String, max_budget_in_team: T.nilable(Float), - role: T.nilable(Hanzoai::Models::TeamUpdateMemberParams::Role::OrSymbol), + role: T.nilable(Hanzoai::TeamUpdateMemberParams::Role::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( team_id:, @@ -43,31 +46,38 @@ module Hanzoai end sig do - override - .returns( - { - team_id: String, - max_budget_in_team: T.nilable(Float), - role: T.nilable(Hanzoai::Models::TeamUpdateMemberParams::Role::OrSymbol), - user_email: T.nilable(String), - user_id: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + team_id: String, + max_budget_in_team: T.nilable(Float), + role: T.nilable(Hanzoai::TeamUpdateMemberParams::Role::OrSymbol), + user_email: T.nilable(String), + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module Role extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role) } + TaggedSymbol = + T.type_alias { T.all(Symbol, Hanzoai::TeamUpdateMemberParams::Role) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ADMIN = T.let(:admin, Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol) - USER = T.let(:user, Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol) + ADMIN = + T.let(:admin, Hanzoai::TeamUpdateMemberParams::Role::TaggedSymbol) + USER = T.let(:user, Hanzoai::TeamUpdateMemberParams::Role::TaggedSymbol) - sig { override.returns(T::Array[Hanzoai::Models::TeamUpdateMemberParams::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[Hanzoai::TeamUpdateMemberParams::Role::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/team_update_member_response.rbi b/rbi/hanzoai/models/team_update_member_response.rbi index 29779097..58b64efd 100644 --- a/rbi/hanzoai/models/team_update_member_response.rbi +++ b/rbi/hanzoai/models/team_update_member_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class TeamUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -21,23 +23,23 @@ module Hanzoai user_id: String, max_budget_in_team: T.nilable(Float), user_email: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(team_id:, user_id:, max_budget_in_team: nil, user_email: nil) end - def self.new(team_id:, user_id:, max_budget_in_team: nil, user_email: nil); end sig do - override - .returns( - { - team_id: String, - user_id: String, - max_budget_in_team: T.nilable(Float), - user_email: T.nilable(String) - } - ) + override.returns( + { + team_id: String, + user_id: String, + max_budget_in_team: T.nilable(Float), + user_email: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/team_update_params.rbi b/rbi/hanzoai/models/team_update_params.rbi index 8a96ba74..1d970251 100644 --- a/rbi/hanzoai/models/team_update_params.rbi +++ b/rbi/hanzoai/models/team_update_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :team_id @@ -69,9 +71,8 @@ module Hanzoai team_alias: T.nilable(String), tpm_limit: T.nilable(Integer), llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( team_id:, @@ -91,30 +92,32 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - team_id: String, - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - guardrails: T.nilable(T::Array[String]), - max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - tags: T.nilable(T::Array[T.anything]), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer), - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + team_id: String, + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + guardrails: T.nilable(T::Array[String]), + max_budget: T.nilable(Float), + metadata: T.nilable(T.anything), + model_aliases: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + organization_id: T.nilable(String), + rpm_limit: T.nilable(Integer), + tags: T.nilable(T::Array[T.anything]), + team_alias: T.nilable(String), + tpm_limit: T.nilable(Integer), + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/test_ping_params.rbi b/rbi/hanzoai/models/test_ping_params.rbi index 0f58fed3..4807193c 100644 --- a/rbi/hanzoai/models/test_ping_params.rbi +++ b/rbi/hanzoai/models/test_ping_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/thread_create_params.rbi b/rbi/hanzoai/models/thread_create_params.rbi index 222c4af9..69c5832a 100644 --- a/rbi/hanzoai/models/thread_create_params.rbi +++ b/rbi/hanzoai/models/thread_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/thread_retrieve_params.rbi b/rbi/hanzoai/models/thread_retrieve_params.rbi index 8ed7fc30..19c9dcbb 100644 --- a/rbi/hanzoai/models/thread_retrieve_params.rbi +++ b/rbi/hanzoai/models/thread_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/thread_retrieve_response.rbi b/rbi/hanzoai/models/thread_retrieve_response.rbi index d6824f8e..222770de 100644 --- a/rbi/hanzoai/models/thread_retrieve_response.rbi +++ b/rbi/hanzoai/models/thread_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - ThreadRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + ThreadRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/threads/message_create_params.rbi b/rbi/hanzoai/models/threads/message_create_params.rbi index a3218934..0ff5be73 100644 --- a/rbi/hanzoai/models/threads/message_create_params.rbi +++ b/rbi/hanzoai/models/threads/message_create_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/threads/message_create_response.rbi b/rbi/hanzoai/models/threads/message_create_response.rbi index 09126bd9..c5f60c42 100644 --- a/rbi/hanzoai/models/threads/message_create_response.rbi +++ b/rbi/hanzoai/models/threads/message_create_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Threads - MessageCreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + MessageCreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/threads/message_list_params.rbi b/rbi/hanzoai/models/threads/message_list_params.rbi index 70ca2403..88d2a93b 100644 --- a/rbi/hanzoai/models/threads/message_list_params.rbi +++ b/rbi/hanzoai/models/threads/message_list_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/threads/message_list_response.rbi b/rbi/hanzoai/models/threads/message_list_response.rbi index 329b05ed..d11f31a7 100644 --- a/rbi/hanzoai/models/threads/message_list_response.rbi +++ b/rbi/hanzoai/models/threads/message_list_response.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models module Threads - MessageListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + MessageListResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end end diff --git a/rbi/hanzoai/models/threads/run_create_params.rbi b/rbi/hanzoai/models/threads/run_create_params.rbi index 0012ec74..599d5438 100644 --- a/rbi/hanzoai/models/threads/run_create_params.rbi +++ b/rbi/hanzoai/models/threads/run_create_params.rbi @@ -7,14 +7,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/user_create_params.rbi b/rbi/hanzoai/models/user_create_params.rbi index 7a0be922..79a0670c 100644 --- a/rbi/hanzoai/models/user_create_params.rbi +++ b/rbi/hanzoai/models/user_create_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.anything)) } attr_accessor :aliases @@ -87,7 +89,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :user_id - sig { returns(T.nilable(Hanzoai::Models::UserCreateParams::UserRole::OrSymbol)) } + sig { returns(T.nilable(Hanzoai::UserCreateParams::UserRole::OrSymbol)) } attr_accessor :user_role sig do @@ -118,10 +120,9 @@ module Hanzoai user_alias: T.nilable(String), user_email: T.nilable(String), user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserCreateParams::UserRole::OrSymbol), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + user_role: T.nilable(Hanzoai::UserCreateParams::UserRole::OrSymbol), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( aliases: nil, @@ -152,59 +153,78 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - aliases: T.nilable(T.anything), - allowed_cache_controls: T.nilable(T::Array[T.anything]), - auto_create_key: T::Boolean, - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - config: T.nilable(T.anything), - duration: T.nilable(String), - guardrails: T.nilable(T::Array[String]), - key_alias: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - send_invite_email: T.nilable(T::Boolean), - spend: T.nilable(Float), - team_id: T.nilable(String), - teams: T.nilable(T::Array[T.anything]), - tpm_limit: T.nilable(Integer), - user_alias: T.nilable(String), - user_email: T.nilable(String), - user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserCreateParams::UserRole::OrSymbol), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + aliases: T.nilable(T.anything), + allowed_cache_controls: T.nilable(T::Array[T.anything]), + auto_create_key: T::Boolean, + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + config: T.nilable(T.anything), + duration: T.nilable(String), + guardrails: T.nilable(T::Array[String]), + key_alias: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_rpm_limit: T.nilable(T.anything), + model_tpm_limit: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + permissions: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + send_invite_email: T.nilable(T::Boolean), + spend: T.nilable(Float), + team_id: T.nilable(String), + teams: T.nilable(T::Array[T.anything]), + tpm_limit: T.nilable(Integer), + user_alias: T.nilable(String), + user_email: T.nilable(String), + user_id: T.nilable(String), + user_role: T.nilable(Hanzoai::UserCreateParams::UserRole::OrSymbol), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module UserRole extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UserCreateParams::UserRole) } + TaggedSymbol = + T.type_alias { T.all(Symbol, Hanzoai::UserCreateParams::UserRole) } OrSymbol = T.type_alias { T.any(Symbol, String) } - PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol) + PROXY_ADMIN = + T.let(:proxy_admin, Hanzoai::UserCreateParams::UserRole::TaggedSymbol) PROXY_ADMIN_VIEWER = - T.let(:proxy_admin_viewer, Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol) - INTERNAL_USER = T.let(:internal_user, Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol) + T.let( + :proxy_admin_viewer, + Hanzoai::UserCreateParams::UserRole::TaggedSymbol + ) + INTERNAL_USER = + T.let( + :internal_user, + Hanzoai::UserCreateParams::UserRole::TaggedSymbol + ) INTERNAL_USER_VIEWER = - T.let(:internal_user_viewer, Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol) + T.let( + :internal_user_viewer, + Hanzoai::UserCreateParams::UserRole::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::UserCreateParams::UserRole::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[Hanzoai::UserCreateParams::UserRole::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/user_create_response.rbi b/rbi/hanzoai/models/user_create_response.rbi index e773ce19..202a3549 100644 --- a/rbi/hanzoai/models/user_create_response.rbi +++ b/rbi/hanzoai/models/user_create_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class UserCreateResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(Time)) } attr_accessor :expires @@ -111,7 +113,11 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :user_id - sig { returns(T.nilable(Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol)) } + sig do + returns( + T.nilable(Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) + ) + end attr_accessor :user_role sig do @@ -151,9 +157,9 @@ module Hanzoai user_alias: T.nilable(String), user_email: T.nilable(String), user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserCreateResponse::UserRole::OrSymbol) - ) - .returns(T.attached_class) + user_role: + T.nilable(Hanzoai::Models::UserCreateResponse::UserRole::OrSymbol) + ).returns(T.attached_class) end def self.new( expires:, @@ -192,67 +198,96 @@ module Hanzoai user_email: nil, user_id: nil, user_role: nil - ); end + ) + end + sig do - override - .returns( - { - expires: T.nilable(Time), - key: String, - token: T.nilable(String), - aliases: T.nilable(T.anything), - allowed_cache_controls: T.nilable(T::Array[T.anything]), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - budget_id: T.nilable(String), - config: T.nilable(T.anything), - created_by: T.nilable(String), - duration: T.nilable(String), - enforced_params: T.nilable(T::Array[String]), - guardrails: T.nilable(T::Array[String]), - key_alias: T.nilable(String), - key_name: T.nilable(String), - llm_budget_table: T.anything, - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - tags: T.nilable(T::Array[String]), - team_id: T.nilable(String), - teams: T.nilable(T::Array[T.anything]), - token_id: T.nilable(String), - tpm_limit: T.nilable(Integer), - updated_by: T.nilable(String), - user_alias: T.nilable(String), - user_email: T.nilable(String), - user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) - } - ) + override.returns( + { + expires: T.nilable(Time), + key: String, + token: T.nilable(String), + aliases: T.nilable(T.anything), + allowed_cache_controls: T.nilable(T::Array[T.anything]), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + config: T.nilable(T.anything), + created_by: T.nilable(String), + duration: T.nilable(String), + enforced_params: T.nilable(T::Array[String]), + guardrails: T.nilable(T::Array[String]), + key_alias: T.nilable(String), + key_name: T.nilable(String), + llm_budget_table: T.anything, + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_rpm_limit: T.nilable(T.anything), + model_tpm_limit: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + permissions: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + tags: T.nilable(T::Array[String]), + team_id: T.nilable(String), + teams: T.nilable(T::Array[T.anything]), + token_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + updated_by: T.nilable(String), + user_alias: T.nilable(String), + user_email: T.nilable(String), + user_id: T.nilable(String), + user_role: + T.nilable( + Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol + ) + } + ) + end + def to_hash end - def to_hash; end module UserRole extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UserCreateResponse::UserRole) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Models::UserCreateResponse::UserRole) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) + PROXY_ADMIN = + T.let( + :proxy_admin, + Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol + ) PROXY_ADMIN_VIEWER = - T.let(:proxy_admin_viewer, Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) - INTERNAL_USER = T.let(:internal_user, Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) + T.let( + :proxy_admin_viewer, + Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol + ) + INTERNAL_USER = + T.let( + :internal_user, + Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol + ) INTERNAL_USER_VIEWER = - T.let(:internal_user_viewer, Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol) + T.let( + :internal_user_viewer, + Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::Models::UserCreateResponse::UserRole::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/user_delete_params.rbi b/rbi/hanzoai/models/user_delete_params.rbi index 12750d9b..6fc01350 100644 --- a/rbi/hanzoai/models/user_delete_params.rbi +++ b/rbi/hanzoai/models/user_delete_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T::Array[String]) } attr_accessor :user_ids @@ -21,9 +23,8 @@ module Hanzoai params( user_ids: T::Array[String], llm_changed_by: String, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( user_ids:, @@ -31,16 +32,20 @@ module Hanzoai # users on behalf of other users, providing an audit trail for accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns({ - user_ids: T::Array[String], - llm_changed_by: String, - request_options: Hanzoai::RequestOptions - }) + override.returns( + { + user_ids: T::Array[String], + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/user_list_params.rbi b/rbi/hanzoai/models/user_list_params.rbi index cf631563..e23f80db 100644 --- a/rbi/hanzoai/models/user_list_params.rbi +++ b/rbi/hanzoai/models/user_list_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # Page number sig { returns(T.nilable(Integer)) } attr_reader :page @@ -34,9 +36,8 @@ module Hanzoai page_size: Integer, role: T.nilable(String), user_ids: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Page number @@ -48,20 +49,22 @@ module Hanzoai # Get list of users by user_ids user_ids: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - page: Integer, - page_size: Integer, - role: T.nilable(String), - user_ids: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + page: Integer, + page_size: Integer, + role: T.nilable(String), + user_ids: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/user_retrieve_info_params.rbi b/rbi/hanzoai/models/user_retrieve_info_params.rbi index 1a665246..a7c3b466 100644 --- a/rbi/hanzoai/models/user_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/user_retrieve_info_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + # User ID in the request parameters sig { returns(T.nilable(String)) } attr_accessor :user_id @@ -13,17 +15,26 @@ module Hanzoai sig do params( user_id: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # User ID in the request parameters user_id: nil, request_options: {} - ); end - sig { override.returns({user_id: T.nilable(String), request_options: Hanzoai::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/user_retrieve_info_response.rbi b/rbi/hanzoai/models/user_retrieve_info_response.rbi index 27d87b10..8dce6e86 100644 --- a/rbi/hanzoai/models/user_retrieve_info_response.rbi +++ b/rbi/hanzoai/models/user_retrieve_info_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - UserRetrieveInfoResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + UserRetrieveInfoResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/user_update_params.rbi b/rbi/hanzoai/models/user_update_params.rbi index 2fa7130f..52974fdc 100644 --- a/rbi/hanzoai/models/user_update_params.rbi +++ b/rbi/hanzoai/models/user_update_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(T.anything)) } attr_accessor :aliases @@ -75,7 +77,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :user_id - sig { returns(T.nilable(Hanzoai::Models::UserUpdateParams::UserRole::OrSymbol)) } + sig { returns(T.nilable(Hanzoai::UserUpdateParams::UserRole::OrSymbol)) } attr_accessor :user_role sig do @@ -103,10 +105,9 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_email: T.nilable(String), user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserUpdateParams::UserRole::OrSymbol), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + user_role: T.nilable(Hanzoai::UserUpdateParams::UserRole::OrSymbol), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( aliases: nil, @@ -134,56 +135,75 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - aliases: T.nilable(T.anything), - allowed_cache_controls: T.nilable(T::Array[T.anything]), - blocked: T.nilable(T::Boolean), - budget_duration: T.nilable(String), - config: T.nilable(T.anything), - duration: T.nilable(String), - guardrails: T.nilable(T::Array[String]), - key_alias: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), - models: T.nilable(T::Array[T.anything]), - password: T.nilable(String), - permissions: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_id: T.nilable(String), - tpm_limit: T.nilable(Integer), - user_email: T.nilable(String), - user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserUpdateParams::UserRole::OrSymbol), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + aliases: T.nilable(T.anything), + allowed_cache_controls: T.nilable(T::Array[T.anything]), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + config: T.nilable(T.anything), + duration: T.nilable(String), + guardrails: T.nilable(T::Array[String]), + key_alias: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T.nilable(T.anything), + model_max_budget: T.nilable(T.anything), + model_rpm_limit: T.nilable(T.anything), + model_tpm_limit: T.nilable(T.anything), + models: T.nilable(T::Array[T.anything]), + password: T.nilable(String), + permissions: T.nilable(T.anything), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + user_email: T.nilable(String), + user_id: T.nilable(String), + user_role: T.nilable(Hanzoai::UserUpdateParams::UserRole::OrSymbol), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module UserRole extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UserUpdateParams::UserRole) } + TaggedSymbol = + T.type_alias { T.all(Symbol, Hanzoai::UserUpdateParams::UserRole) } OrSymbol = T.type_alias { T.any(Symbol, String) } - PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol) + PROXY_ADMIN = + T.let(:proxy_admin, Hanzoai::UserUpdateParams::UserRole::TaggedSymbol) PROXY_ADMIN_VIEWER = - T.let(:proxy_admin_viewer, Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol) - INTERNAL_USER = T.let(:internal_user, Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol) + T.let( + :proxy_admin_viewer, + Hanzoai::UserUpdateParams::UserRole::TaggedSymbol + ) + INTERNAL_USER = + T.let( + :internal_user, + Hanzoai::UserUpdateParams::UserRole::TaggedSymbol + ) INTERNAL_USER_VIEWER = - T.let(:internal_user_viewer, Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol) + T.let( + :internal_user_viewer, + Hanzoai::UserUpdateParams::UserRole::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::UserUpdateParams::UserRole::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[Hanzoai::UserUpdateParams::UserRole::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi b/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi index 3ca666f3..1f388cea 100644 --- a/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi +++ b/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi @@ -6,17 +6,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :model sig do - params(model: String, request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(model:, request_options: {}) end - def self.new(model:, request_options: {}); end - sig { override.returns({model: String, request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { model: String, request_options: Hanzoai::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/util_get_supported_openai_params_response.rbi b/rbi/hanzoai/models/util_get_supported_openai_params_response.rbi index 2bf5204a..f64fc94e 100644 --- a/rbi/hanzoai/models/util_get_supported_openai_params_response.rbi +++ b/rbi/hanzoai/models/util_get_supported_openai_params_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - UtilGetSupportedOpenAIParamsResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + UtilGetSupportedOpenAIParamsResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/util_token_counter_params.rbi b/rbi/hanzoai/models/util_token_counter_params.rbi index 281aff47..8b6f8823 100644 --- a/rbi/hanzoai/models/util_token_counter_params.rbi +++ b/rbi/hanzoai/models/util_token_counter_params.rbi @@ -6,6 +6,8 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :model @@ -20,24 +22,24 @@ module Hanzoai model: String, messages: T.nilable(T::Array[T.anything]), prompt: T.nilable(String), - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(model:, messages: nil, prompt: nil, request_options: {}) end - def self.new(model:, messages: nil, prompt: nil, request_options: {}); end sig do - override - .returns( - { - model: String, - messages: T.nilable(T::Array[T.anything]), - prompt: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + model: String, + messages: T.nilable(T::Array[T.anything]), + prompt: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/util_token_counter_response.rbi b/rbi/hanzoai/models/util_token_counter_response.rbi index 49dff275..13681d1e 100644 --- a/rbi/hanzoai/models/util_token_counter_response.rbi +++ b/rbi/hanzoai/models/util_token_counter_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class UtilTokenCounterResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(String) } attr_accessor :model_used @@ -16,16 +18,28 @@ module Hanzoai attr_accessor :total_tokens sig do - params(model_used: String, request_model: String, tokenizer_type: String, total_tokens: Integer) - .returns(T.attached_class) + params( + model_used: String, + request_model: String, + tokenizer_type: String, + total_tokens: Integer + ).returns(T.attached_class) + end + def self.new(model_used:, request_model:, tokenizer_type:, total_tokens:) end - def self.new(model_used:, request_model:, tokenizer_type:, total_tokens:); end sig do - override - .returns({model_used: String, request_model: String, tokenizer_type: String, total_tokens: Integer}) + override.returns( + { + model_used: String, + request_model: String, + tokenizer_type: String, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/util_transform_request_params.rbi b/rbi/hanzoai/models/util_transform_request_params.rbi index 2fb00ca2..3dd7ed60 100644 --- a/rbi/hanzoai/models/util_transform_request_params.rbi +++ b/rbi/hanzoai/models/util_transform_request_params.rbi @@ -6,7 +6,9 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - sig { returns(Hanzoai::Models::UtilTransformRequestParams::CallType::OrSymbol) } + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + + sig { returns(Hanzoai::UtilTransformRequestParams::CallType::OrSymbol) } attr_accessor :call_type sig { returns(T.anything) } @@ -14,130 +16,350 @@ module Hanzoai sig do params( - call_type: Hanzoai::Models::UtilTransformRequestParams::CallType::OrSymbol, + call_type: Hanzoai::UtilTransformRequestParams::CallType::OrSymbol, request_body: T.anything, - request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(call_type:, request_body:, request_options: {}) end - def self.new(call_type:, request_body:, request_options: {}); end sig do - override - .returns( - { - call_type: Hanzoai::Models::UtilTransformRequestParams::CallType::OrSymbol, - request_body: T.anything, - request_options: Hanzoai::RequestOptions - } - ) + override.returns( + { + call_type: Hanzoai::UtilTransformRequestParams::CallType::OrSymbol, + request_body: T.anything, + request_options: Hanzoai::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module CallType extend Hanzoai::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::UtilTransformRequestParams::CallType) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - EMBEDDING = T.let(:embedding, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - AEMBEDDING = T.let(:aembedding, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - COMPLETION = T.let(:completion, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - ACOMPLETION = T.let(:acompletion, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + EMBEDDING = + T.let( + :embedding, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AEMBEDDING = + T.let( + :aembedding, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + COMPLETION = + T.let( + :completion, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ACOMPLETION = + T.let( + :acompletion, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ATEXT_COMPLETION = - T.let(:atext_completion, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :atext_completion, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) TEXT_COMPLETION = - T.let(:text_completion, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :text_completion, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) IMAGE_GENERATION = - T.let(:image_generation, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :image_generation, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) AIMAGE_GENERATION = - T.let(:aimage_generation, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - MODERATION = T.let(:moderation, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - AMODERATION = T.let(:amoderation, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :aimage_generation, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + MODERATION = + T.let( + :moderation, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AMODERATION = + T.let( + :amoderation, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ATRANSCRIPTION = - T.let(:atranscription, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :atranscription, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) TRANSCRIPTION = - T.let(:transcription, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - ASPEECH = T.let(:aspeech, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - SPEECH = T.let(:speech, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - RERANK = T.let(:rerank, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - ARERANK = T.let(:arerank, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - AREALTIME = T.let(:_arealtime, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - CREATE_BATCH = T.let(:create_batch, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :transcription, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ASPEECH = + T.let( + :aspeech, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + SPEECH = + T.let( + :speech, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + RERANK = + T.let( + :rerank, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ARERANK = + T.let( + :arerank, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AREALTIME = + T.let( + :_arealtime, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + CREATE_BATCH = + T.let( + :create_batch, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ACREATE_BATCH = - T.let(:acreate_batch, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :acreate_batch, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ARETRIEVE_BATCH = - T.let(:aretrieve_batch, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :aretrieve_batch, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) RETRIEVE_BATCH = - T.let(:retrieve_batch, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :retrieve_batch, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) PASS_THROUGH_ENDPOINT = - T.let(:pass_through_endpoint, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :pass_through_endpoint, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ANTHROPIC_MESSAGES = - T.let(:anthropic_messages, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :anthropic_messages, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) GET_ASSISTANTS = - T.let(:get_assistants, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :get_assistants, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) AGET_ASSISTANTS = - T.let(:aget_assistants, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :aget_assistants, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) CREATE_ASSISTANTS = - T.let(:create_assistants, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :create_assistants, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ACREATE_ASSISTANTS = - T.let(:acreate_assistants, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :acreate_assistants, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) DELETE_ASSISTANT = - T.let(:delete_assistant, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :delete_assistant, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ADELETE_ASSISTANT = - T.let(:adelete_assistant, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :adelete_assistant, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ACREATE_THREAD = - T.let(:acreate_thread, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :acreate_thread, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) CREATE_THREAD = - T.let(:create_thread, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - AGET_THREAD = T.let(:aget_thread, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - GET_THREAD = T.let(:get_thread, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :create_thread, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AGET_THREAD = + T.let( + :aget_thread, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + GET_THREAD = + T.let( + :get_thread, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) A_ADD_MESSAGE = - T.let(:a_add_message, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - ADD_MESSAGE = T.let(:add_message, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :a_add_message, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ADD_MESSAGE = + T.let( + :add_message, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) AGET_MESSAGES = - T.let(:aget_messages, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - GET_MESSAGES = T.let(:get_messages, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - ARUN_THREAD = T.let(:arun_thread, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - RUN_THREAD = T.let(:run_thread, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :aget_messages, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + GET_MESSAGES = + T.let( + :get_messages, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ARUN_THREAD = + T.let( + :arun_thread, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + RUN_THREAD = + T.let( + :run_thread, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ARUN_THREAD_STREAM = - T.let(:arun_thread_stream, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :arun_thread_stream, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) RUN_THREAD_STREAM = - T.let(:run_thread_stream, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :run_thread_stream, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) AFILE_RETRIEVE = - T.let(:afile_retrieve, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :afile_retrieve, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) FILE_RETRIEVE = - T.let(:file_retrieve, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - AFILE_DELETE = T.let(:afile_delete, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - FILE_DELETE = T.let(:file_delete, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - AFILE_LIST = T.let(:afile_list, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - FILE_LIST = T.let(:file_list, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - ACREATE_FILE = T.let(:acreate_file, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - CREATE_FILE = T.let(:create_file, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :file_retrieve, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AFILE_DELETE = + T.let( + :afile_delete, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + FILE_DELETE = + T.let( + :file_delete, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AFILE_LIST = + T.let( + :afile_list, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + FILE_LIST = + T.let( + :file_list, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ACREATE_FILE = + T.let( + :acreate_file, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + CREATE_FILE = + T.let( + :create_file, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) AFILE_CONTENT = - T.let(:afile_content, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - FILE_CONTENT = T.let(:file_content, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :afile_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + FILE_CONTENT = + T.let( + :file_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) CREATE_FINE_TUNING_JOB = - T.let(:create_fine_tuning_job, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :create_fine_tuning_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ACREATE_FINE_TUNING_JOB = - T.let(:acreate_fine_tuning_job, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :acreate_fine_tuning_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ACANCEL_FINE_TUNING_JOB = - T.let(:acancel_fine_tuning_job, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :acancel_fine_tuning_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) CANCEL_FINE_TUNING_JOB = - T.let(:cancel_fine_tuning_job, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :cancel_fine_tuning_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ALIST_FINE_TUNING_JOBS = - T.let(:alist_fine_tuning_jobs, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :alist_fine_tuning_jobs, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) LIST_FINE_TUNING_JOBS = - T.let(:list_fine_tuning_jobs, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :list_fine_tuning_jobs, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ARETRIEVE_FINE_TUNING_JOB = - T.let(:aretrieve_fine_tuning_job, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :aretrieve_fine_tuning_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) RETRIEVE_FINE_TUNING_JOB = - T.let(:retrieve_fine_tuning_job, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - RESPONSES = T.let(:responses, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) - ARESPONSES = T.let(:aresponses, Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol) + T.let( + :retrieve_fine_tuning_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + RESPONSES = + T.let( + :responses, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ARESPONSES = + T.let( + :aresponses, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) - sig { override.returns(T::Array[Hanzoai::Models::UtilTransformRequestParams::CallType::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/hanzoai/models/util_transform_request_response.rbi b/rbi/hanzoai/models/util_transform_request_response.rbi index a9669348..b8fc5710 100644 --- a/rbi/hanzoai/models/util_transform_request_response.rbi +++ b/rbi/hanzoai/models/util_transform_request_response.rbi @@ -3,6 +3,8 @@ module Hanzoai module Models class UtilTransformRequestResponse < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :error @@ -21,24 +23,28 @@ module Hanzoai raw_request_api_base: T.nilable(String), raw_request_body: T.nilable(T.anything), raw_request_headers: T.nilable(T.anything) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end - def self.new(error: nil, raw_request_api_base: nil, raw_request_body: nil, raw_request_headers: nil) + def self.new( + error: nil, + raw_request_api_base: nil, + raw_request_body: nil, + raw_request_headers: nil + ) end sig do - override - .returns( - { - error: T.nilable(String), - raw_request_api_base: T.nilable(String), - raw_request_body: T.nilable(T.anything), - raw_request_headers: T.nilable(T.anything) - } - ) + override.returns( + { + error: T.nilable(String), + raw_request_api_base: T.nilable(String), + raw_request_body: T.nilable(T.anything), + raw_request_headers: T.nilable(T.anything) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/hanzoai/models/vertex_ai_create_params.rbi b/rbi/hanzoai/models/vertex_ai_create_params.rbi index a660a591..9546ddeb 100644 --- a/rbi/hanzoai/models/vertex_ai_create_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_create_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/vertex_ai_create_response.rbi b/rbi/hanzoai/models/vertex_ai_create_response.rbi index c2d03f72..9944833c 100644 --- a/rbi/hanzoai/models/vertex_ai_create_response.rbi +++ b/rbi/hanzoai/models/vertex_ai_create_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - VertexAICreateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + VertexAICreateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/vertex_ai_delete_params.rbi b/rbi/hanzoai/models/vertex_ai_delete_params.rbi index e68ae63d..92e683d7 100644 --- a/rbi/hanzoai/models/vertex_ai_delete_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_delete_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/vertex_ai_delete_response.rbi b/rbi/hanzoai/models/vertex_ai_delete_response.rbi index 94b350e3..8aabb6b1 100644 --- a/rbi/hanzoai/models/vertex_ai_delete_response.rbi +++ b/rbi/hanzoai/models/vertex_ai_delete_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - VertexAIDeleteResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + VertexAIDeleteResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/vertex_ai_patch_params.rbi b/rbi/hanzoai/models/vertex_ai_patch_params.rbi index 32d907dd..1912c8b3 100644 --- a/rbi/hanzoai/models/vertex_ai_patch_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_patch_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/vertex_ai_patch_response.rbi b/rbi/hanzoai/models/vertex_ai_patch_response.rbi index 716642e1..08b19536 100644 --- a/rbi/hanzoai/models/vertex_ai_patch_response.rbi +++ b/rbi/hanzoai/models/vertex_ai_patch_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - VertexAIPatchResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + VertexAIPatchResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi b/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi index cc0394e5..da070dc8 100644 --- a/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/vertex_ai_retrieve_response.rbi b/rbi/hanzoai/models/vertex_ai_retrieve_response.rbi index f5235b45..4ff4dc82 100644 --- a/rbi/hanzoai/models/vertex_ai_retrieve_response.rbi +++ b/rbi/hanzoai/models/vertex_ai_retrieve_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - VertexAIRetrieveResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + VertexAIRetrieveResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/models/vertex_ai_update_params.rbi b/rbi/hanzoai/models/vertex_ai_update_params.rbi index 1da4bdac..bd9a4f95 100644 --- a/rbi/hanzoai/models/vertex_ai_update_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_update_params.rbi @@ -6,14 +6,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + sig do - params(request_options: T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash)) - .returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: Hanzoai::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/hanzoai/models/vertex_ai_update_response.rbi b/rbi/hanzoai/models/vertex_ai_update_response.rbi index 8f1c3663..a8f8e3fb 100644 --- a/rbi/hanzoai/models/vertex_ai_update_response.rbi +++ b/rbi/hanzoai/models/vertex_ai_update_response.rbi @@ -2,6 +2,7 @@ module Hanzoai module Models - VertexAIUpdateResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) + VertexAIUpdateResponse = + T.let(T.anything, Hanzoai::Internal::Type::Converter) end end diff --git a/rbi/hanzoai/request_options.rbi b/rbi/hanzoai/request_options.rbi index 994c6323..820b50fd 100644 --- a/rbi/hanzoai/request_options.rbi +++ b/rbi/hanzoai/request_options.rbi @@ -1,17 +1,18 @@ # typed: strong module Hanzoai - RequestOpts = T.type_alias { T.any(Hanzoai::RequestOptions, Hanzoai::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 < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, Hanzoai::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: Hanzoai::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 Hanzoai # 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 Hanzoai # Returns a new instance of RequestOptions. sig { params(values: Hanzoai::Internal::AnyHash).returns(T.attached_class) } - def self.new(values = {}); end + def self.new(values = {}) + end end end diff --git a/rbi/hanzoai/resources/active.rbi b/rbi/hanzoai/resources/active.rbi index 4e72e4ad..d3262f8c 100644 --- a/rbi/hanzoai/resources/active.rbi +++ b/rbi/hanzoai/resources/active.rbi @@ -26,12 +26,18 @@ module Hanzoai # "llm.request_timeout": llm.request_timeout, # } # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list_callbacks(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def list_callbacks(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/add.rbi b/rbi/hanzoai/resources/add.rbi index cdad43e1..137bdcf9 100644 --- a/rbi/hanzoai/resources/add.rbi +++ b/rbi/hanzoai/resources/add.rbi @@ -4,12 +4,19 @@ module Hanzoai module Resources class Add # Add Allowed Ip - sig { params(ip: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def add_allowed_ip(ip:, request_options: {}); end + sig do + params( + ip: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def add_allowed_ip(ip:, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/anthropic.rbi b/rbi/hanzoai/resources/anthropic.rbi index f42e7417..681a5bf5 100644 --- a/rbi/hanzoai/resources/anthropic.rbi +++ b/rbi/hanzoai/resources/anthropic.rbi @@ -4,28 +4,59 @@ module Hanzoai module Resources class Anthropic # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def modify(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def modify(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/assemblyai.rbi b/rbi/hanzoai/resources/assemblyai.rbi index c081f7dc..0c8f0aeb 100644 --- a/rbi/hanzoai/resources/assemblyai.rbi +++ b/rbi/hanzoai/resources/assemblyai.rbi @@ -4,28 +4,59 @@ module Hanzoai module Resources class Assemblyai # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/assistants.rbi b/rbi/hanzoai/resources/assistants.rbi index 4bf7eab9..1086298c 100644 --- a/rbi/hanzoai/resources/assistants.rbi +++ b/rbi/hanzoai/resources/assistants.rbi @@ -7,26 +7,43 @@ module Hanzoai # # API Reference docs - # https://platform.openai.com/docs/api-reference/assistants/createAssistant - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create(request_options: {}) + end # Returns a list of assistants. # # API Reference docs - # https://platform.openai.com/docs/api-reference/assistants/listAssistants - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def list(request_options: {}) + end # Delete assistant # # API Reference docs - # https://platform.openai.com/docs/api-reference/assistants/createAssistant - sig { params(assistant_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(assistant_id, request_options: {}); end + sig do + params( + assistant_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(assistant_id, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/audio.rbi b/rbi/hanzoai/resources/audio.rbi index 4a4c3c55..df73790e 100644 --- a/rbi/hanzoai/resources/audio.rbi +++ b/rbi/hanzoai/resources/audio.rbi @@ -11,7 +11,8 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/audio/speech.rbi b/rbi/hanzoai/resources/audio/speech.rbi index 264d2d21..22ec498a 100644 --- a/rbi/hanzoai/resources/audio/speech.rbi +++ b/rbi/hanzoai/resources/audio/speech.rbi @@ -7,12 +7,18 @@ module Hanzoai # Same params as: # # https://platform.openai.com/docs/api-reference/audio/createSpeech - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/audio/transcriptions.rbi b/rbi/hanzoai/resources/audio/transcriptions.rbi index a6730f87..291b480d 100644 --- a/rbi/hanzoai/resources/audio/transcriptions.rbi +++ b/rbi/hanzoai/resources/audio/transcriptions.rbi @@ -10,15 +10,16 @@ module Hanzoai sig do params( file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(file:, request_options: {}) end - def create(file:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/azure.rbi b/rbi/hanzoai/resources/azure.rbi index fb9de889..41d4c9da 100644 --- a/rbi/hanzoai/resources/azure.rbi +++ b/rbi/hanzoai/resources/azure.rbi @@ -6,36 +6,67 @@ module Hanzoai # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def call(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def call(endpoint, request_options: {}) + end # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/batches.rbi b/rbi/hanzoai/resources/batches.rbi index b15a3060..1584a761 100644 --- a/rbi/hanzoai/resources/batches.rbi +++ b/rbi/hanzoai/resources/batches.rbi @@ -19,8 +19,14 @@ module Hanzoai # "completion_window": "24h" # }' # ``` - sig { params(provider: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(provider: nil, request_options: {}); end + sig do + params( + provider: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(provider: nil, request_options: {}) + end # Retrieves a batch. This is the equivalent of GET # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: @@ -32,15 +38,20 @@ module Hanzoai # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" # ``` sig do - params(batch_id: String, provider: T.nilable(String), request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + batch_id: String, + provider: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def retrieve( # The ID of the batch to retrieve batch_id, provider: nil, request_options: {} - ); end + ) + end + # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list # @@ -54,11 +65,11 @@ module Hanzoai after: T.nilable(String), limit: T.nilable(Integer), provider: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list(after: nil, limit: nil, provider: nil, request_options: {}) end - def list(after: nil, limit: nil, provider: nil, request_options: {}); end # Cancel a batch. This is the equivalent of POST # https://api.openai.com/v1/batches/{batch_id}/cancel @@ -73,9 +84,14 @@ module Hanzoai # # ``` sig do - params(batch_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + batch_id: String, + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def cancel_with_provider(batch_id, provider:, request_options: {}) end - def cancel_with_provider(batch_id, provider:, request_options: {}); end # Create large batches of API requests for asynchronous processing. This is the # equivalent of POST https://api.openai.com/v1/batch Supports Identical Params as: @@ -90,8 +106,14 @@ module Hanzoai # "completion_window": "24h" # }' # ``` - sig { params(provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create_with_provider(provider, request_options: {}); end + sig do + params( + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create_with_provider(provider, request_options: {}) + end # Lists This is the equivalent of GET https://api.openai.com/v1/batches/ Supports # Identical Params as: https://platform.openai.com/docs/api-reference/batch/list @@ -106,11 +128,16 @@ module Hanzoai provider: String, after: T.nilable(String), limit: T.nilable(Integer), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list_with_provider( + provider, + after: nil, + limit: nil, + request_options: {} + ) end - def list_with_provider(provider, after: nil, limit: nil, request_options: {}); end # Retrieves a batch. This is the equivalent of GET # https://api.openai.com/v1/batches/{batch_id} Supports Identical Params as: @@ -122,17 +149,24 @@ module Hanzoai # curl http://localhost:4000/v1/batches/batch_abc123 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" # ``` sig do - params(batch_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + batch_id: String, + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def retrieve_with_provider( # The ID of the batch to retrieve batch_id, provider:, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/batches/cancel.rbi b/rbi/hanzoai/resources/batches/cancel.rbi index 5f83a75a..b3ba2d25 100644 --- a/rbi/hanzoai/resources/batches/cancel.rbi +++ b/rbi/hanzoai/resources/batches/cancel.rbi @@ -17,14 +17,19 @@ module Hanzoai # # ``` sig do - params(batch_id: String, provider: T.nilable(String), request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + batch_id: String, + provider: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def cancel(batch_id, provider: nil, request_options: {}) end - def cancel(batch_id, provider: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/bedrock.rbi b/rbi/hanzoai/resources/bedrock.rbi index c4c6e31b..826d1d3a 100644 --- a/rbi/hanzoai/resources/bedrock.rbi +++ b/rbi/hanzoai/resources/bedrock.rbi @@ -4,28 +4,59 @@ module Hanzoai module Resources class Bedrock # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/budget.rbi b/rbi/hanzoai/resources/budget.rbi index 6e4aff3b..fa020873 100644 --- a/rbi/hanzoai/resources/budget.rbi +++ b/rbi/hanzoai/resources/budget.rbi @@ -25,13 +25,15 @@ module Hanzoai budget_id: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T::Hash[Symbol, T.any(Hanzoai::Models::BudgetNew::ModelMaxBudget, Hanzoai::Internal::AnyHash)]), + model_max_budget: + T.nilable( + T::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget::OrHash] + ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def create( # Max duration budget should be set for (e.g. '1hr', '1d', '28d') @@ -52,7 +54,9 @@ module Hanzoai # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} - ); end + ) + end + # Update an existing budget object. # # Parameters: @@ -75,13 +79,15 @@ module Hanzoai budget_id: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T::Hash[Symbol, T.any(Hanzoai::Models::BudgetNew::ModelMaxBudget, Hanzoai::Internal::AnyHash)]), + model_max_budget: + T.nilable( + T::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget::OrHash] + ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def update( # Max duration budget should be set for (e.g. '1hr', '1d', '28d') @@ -102,26 +108,45 @@ module Hanzoai # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} - ); end + ) + end + # List all the created budgets in proxy db. Used on Admin UI. - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def list(request_options: {}) + end # Delete budget # # Parameters: # # - id: str - The budget id to delete - sig { params(id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(id:, request_options: {}); end + sig do + params( + id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(id:, request_options: {}) + end # Get the budget id specific information # # Parameters: # # - budgets: List[str] - The list of budget ids to get information for - sig { params(budgets: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } - def info(budgets:, request_options: {}); end + sig do + params( + budgets: T::Array[String], + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def info(budgets:, request_options: {}) + end # Get list of configurable params + current value for a budget item + description # of each field @@ -131,12 +156,19 @@ module Hanzoai # Query Parameters: # # - budget_id: str - The budget id to get information for - sig { params(budget_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def settings(budget_id:, request_options: {}); end + sig do + params( + budget_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def settings(budget_id:, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/cache.rbi b/rbi/hanzoai/resources/cache.rbi index 801a3c47..175e0cf3 100644 --- a/rbi/hanzoai/resources/cache.rbi +++ b/rbi/hanzoai/resources/cache.rbi @@ -17,8 +17,13 @@ module Hanzoai # ```shell # curl -X POST "http://0.0.0.0:4000/cache/delete" -H "Authorization: Bearer sk-1234" -d '{"keys": ["key1", "key2"]}' # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def delete(request_options: {}) + end # A function to flush all items from the cache. (All items will be deleted from # the cache with this) Raises HTTPException if the cache is not initialized or if @@ -30,16 +35,27 @@ module Hanzoai # ``` # curl -X POST http://0.0.0.0:4000/cache/flushall -H "Authorization: Bearer sk-1234" # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def flush_all(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def flush_all(request_options: {}) + end # Endpoint for checking if cache can be pinged - sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::CachePingResponse) } - def ping(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + Hanzoai::Models::CachePingResponse + ) + end + def ping(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/cache/redis.rbi b/rbi/hanzoai/resources/cache/redis.rbi index cd22643b..ec83d25d 100644 --- a/rbi/hanzoai/resources/cache/redis.rbi +++ b/rbi/hanzoai/resources/cache/redis.rbi @@ -5,12 +5,18 @@ module Hanzoai class Cache class Redis # Endpoint for getting /redis/info - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve_info(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def retrieve_info(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/chat.rbi b/rbi/hanzoai/resources/chat.rbi index 314d1dba..6b9e564e 100644 --- a/rbi/hanzoai/resources/chat.rbi +++ b/rbi/hanzoai/resources/chat.rbi @@ -8,7 +8,8 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/chat/completions.rbi b/rbi/hanzoai/resources/chat/completions.rbi index 18e79282..c6b8ec08 100644 --- a/rbi/hanzoai/resources/chat/completions.rbi +++ b/rbi/hanzoai/resources/chat/completions.rbi @@ -21,12 +21,19 @@ module Hanzoai # ] # }' # ``` - sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(model: nil, request_options: {}); end + sig do + params( + model: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(model: nil, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/cohere.rbi b/rbi/hanzoai/resources/cohere.rbi index e3113013..18441782 100644 --- a/rbi/hanzoai/resources/cohere.rbi +++ b/rbi/hanzoai/resources/cohere.rbi @@ -4,28 +4,59 @@ module Hanzoai module Resources class Cohere # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def modify(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def modify(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/completions.rbi b/rbi/hanzoai/resources/completions.rbi index eede2038..9c7ff880 100644 --- a/rbi/hanzoai/resources/completions.rbi +++ b/rbi/hanzoai/resources/completions.rbi @@ -17,12 +17,19 @@ module Hanzoai # "temperature": 0.7 # }' # ``` - sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(model: nil, request_options: {}); end + sig do + params( + model: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(model: nil, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/config.rbi b/rbi/hanzoai/resources/config.rbi index 4644834c..d44ffc75 100644 --- a/rbi/hanzoai/resources/config.rbi +++ b/rbi/hanzoai/resources/config.rbi @@ -8,7 +8,8 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/config/pass_through_endpoint.rbi b/rbi/hanzoai/resources/config/pass_through_endpoint.rbi index 3f59de13..fc7cc13e 100644 --- a/rbi/hanzoai/resources/config/pass_through_endpoint.rbi +++ b/rbi/hanzoai/resources/config/pass_through_endpoint.rbi @@ -6,8 +6,12 @@ module Hanzoai class PassThroughEndpoint # Create new pass-through endpoint sig do - params(headers: T.anything, path: String, target: String, request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + headers: T.anything, + path: String, + target: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def create( # Key-value pairs of headers to be forwarded with the request. You can set any key @@ -18,32 +22,47 @@ module Hanzoai # The URL to which requests for this path should be forwarded. target:, request_options: {} - ); end + ) + end + # Update a pass-through endpoint - sig { params(endpoint_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint_id, request_options: {}); end + sig do + params( + endpoint_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint_id, request_options: {}) + end # GET configured pass through endpoint. # # If no endpoint_id given, return all configured endpoints. sig do - params(endpoint_id: T.nilable(String), request_options: Hanzoai::RequestOpts) - .returns(Hanzoai::Models::Config::PassThroughEndpointResponse) + params( + endpoint_id: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Config::PassThroughEndpointResponse) + end + def list(endpoint_id: nil, request_options: {}) end - def list(endpoint_id: nil, request_options: {}); end # Delete a pass-through endpoint # # Returns - the deleted endpoint sig do - params(endpoint_id: String, request_options: Hanzoai::RequestOpts) - .returns(Hanzoai::Models::Config::PassThroughEndpointResponse) + params( + endpoint_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Config::PassThroughEndpointResponse) + end + def delete(endpoint_id:, request_options: {}) end - def delete(endpoint_id:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/credentials.rbi b/rbi/hanzoai/resources/credentials.rbi index 2b62b937..d1e32882 100644 --- a/rbi/hanzoai/resources/credentials.rbi +++ b/rbi/hanzoai/resources/credentials.rbi @@ -11,9 +11,8 @@ module Hanzoai credential_name: String, credential_values: T.nilable(T.anything), model_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def create( credential_info:, @@ -25,16 +24,28 @@ module Hanzoai end # [BETA] endpoint. This might change unexpectedly. - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def list(request_options: {}) + end # [BETA] endpoint. This might change unexpectedly. - sig { params(credential_name: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(credential_name, request_options: {}); end + sig do + params( + credential_name: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(credential_name, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/customer.rbi b/rbi/hanzoai/resources/customer.rbi index 7f4e1134..3ac39da6 100644 --- a/rbi/hanzoai/resources/customer.rbi +++ b/rbi/hanzoai/resources/customer.rbi @@ -58,22 +58,28 @@ module Hanzoai params( user_id: String, alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerCreateParams::AllowedModelRegion::OrSymbol), + allowed_model_region: + T.nilable( + Hanzoai::CustomerCreateParams::AllowedModelRegion::OrSymbol + ), blocked: T::Boolean, budget_duration: T.nilable(String), budget_id: T.nilable(String), default_model: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable( - T::Hash[Symbol, T.any(Hanzoai::Models::CustomerCreateParams::ModelMaxBudget, Hanzoai::Internal::AnyHash)] - ), + model_max_budget: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::CustomerCreateParams::ModelMaxBudget::OrHash + ] + ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def create( user_id:, @@ -98,7 +104,9 @@ module Hanzoai # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} - ); end + ) + end + # Example curl # # Parameters: @@ -127,14 +135,16 @@ module Hanzoai params( user_id: String, alias_: T.nilable(String), - allowed_model_region: T.nilable(Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion::OrSymbol), + allowed_model_region: + T.nilable( + Hanzoai::CustomerUpdateParams::AllowedModelRegion::OrSymbol + ), blocked: T::Boolean, budget_id: T.nilable(String), default_model: T.nilable(String), max_budget: T.nilable(Float), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def update( user_id:, @@ -145,7 +155,9 @@ module Hanzoai default_model: nil, max_budget: nil, request_options: {} - ); end + ) + end + # [Admin-only] List all available customers # # Example curl: @@ -153,8 +165,13 @@ module Hanzoai # ``` # curl --location --request GET 'http://0.0.0.0:4000/customer/list' --header 'Authorization: Bearer sk-1234' # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(T::Array[Hanzoai::Models::CustomerListResponseItem]) } - def list(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T::Array[Hanzoai::Models::CustomerListResponseItem] + ) + end + def list(request_options: {}) + end # Delete multiple end-users. # @@ -171,8 +188,14 @@ module Hanzoai # # See below for all params # ``` - sig { params(user_ids: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(user_ids:, request_options: {}); end + sig do + params( + user_ids: T::Array[String], + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(user_ids:, request_options: {}) + end # [BETA] Reject calls with this end-user id # @@ -190,8 +213,14 @@ module Hanzoai # "user_ids": [, ...] # }' # ``` - sig { params(user_ids: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } - def block(user_ids:, request_options: {}); end + sig do + params( + user_ids: T::Array[String], + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def block(user_ids:, request_options: {}) + end # Get information about an end-user. An `end_user` is a customer (external user) # of the proxy. @@ -206,14 +235,18 @@ module Hanzoai # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' # ``` sig do - params(end_user_id: String, request_options: Hanzoai::RequestOpts) - .returns(Hanzoai::Models::CustomerRetrieveInfoResponse) + params( + end_user_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::CustomerRetrieveInfoResponse) end def retrieve_info( # End User ID in the request parameters end_user_id:, request_options: {} - ); end + ) + end + # [BETA] Unblock calls with this user id # # Example @@ -225,12 +258,19 @@ module Hanzoai # "user_ids": [, ...] # }' # ``` - sig { params(user_ids: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) } - def unblock(user_ids:, request_options: {}); end + sig do + params( + user_ids: T::Array[String], + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def unblock(user_ids:, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/delete.rbi b/rbi/hanzoai/resources/delete.rbi index 461fd4a0..a5b50bc8 100644 --- a/rbi/hanzoai/resources/delete.rbi +++ b/rbi/hanzoai/resources/delete.rbi @@ -4,12 +4,19 @@ module Hanzoai module Resources class Delete # Delete Allowed Ip - sig { params(ip: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create_allowed_ip(ip:, request_options: {}); end + sig do + params( + ip: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create_allowed_ip(ip:, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/embeddings.rbi b/rbi/hanzoai/resources/embeddings.rbi index 6caf070b..1a97823a 100644 --- a/rbi/hanzoai/resources/embeddings.rbi +++ b/rbi/hanzoai/resources/embeddings.rbi @@ -15,12 +15,19 @@ module Hanzoai # "input": "The quick brown fox jumps over the lazy dog" # }' # ``` - sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(model: nil, request_options: {}); end + sig do + params( + model: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(model: nil, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/engines.rbi b/rbi/hanzoai/resources/engines.rbi index 8f443a81..15621080 100644 --- a/rbi/hanzoai/resources/engines.rbi +++ b/rbi/hanzoai/resources/engines.rbi @@ -20,8 +20,14 @@ module Hanzoai # "temperature": 0.7 # }' # ``` - sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def complete(model, request_options: {}); end + sig do + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def complete(model, request_options: {}) + end # Follows the exact same API spec as # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` @@ -35,12 +41,19 @@ module Hanzoai # "input": "The quick brown fox jumps over the lazy dog" # }' # ``` - sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def embed(model, request_options: {}); end + sig do + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def embed(model, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/engines/chat.rbi b/rbi/hanzoai/resources/engines/chat.rbi index 53e6f9bd..978de496 100644 --- a/rbi/hanzoai/resources/engines/chat.rbi +++ b/rbi/hanzoai/resources/engines/chat.rbi @@ -21,12 +21,19 @@ module Hanzoai # ] # }' # ``` - sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def complete(model, request_options: {}); end + sig do + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def complete(model, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/eu_assemblyai.rbi b/rbi/hanzoai/resources/eu_assemblyai.rbi index f6abfea0..70179f95 100644 --- a/rbi/hanzoai/resources/eu_assemblyai.rbi +++ b/rbi/hanzoai/resources/eu_assemblyai.rbi @@ -4,28 +4,59 @@ module Hanzoai module Resources class EuAssemblyai # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # Assemblyai Proxy Route - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/files.rbi b/rbi/hanzoai/resources/files.rbi index 0ab69af7..b2df58c4 100644 --- a/rbi/hanzoai/resources/files.rbi +++ b/rbi/hanzoai/resources/files.rbi @@ -24,11 +24,17 @@ module Hanzoai file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), purpose: String, custom_llm_provider: String, - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create( + provider, + file:, + purpose:, + custom_llm_provider: nil, + request_options: {} + ) end - def create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}); end # Returns information about a specific file. that can be used across - Assistants # API, Batch API This is the equivalent of GET @@ -44,9 +50,14 @@ module Hanzoai # # ``` sig do - params(file_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + file_id: String, + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(file_id, provider:, request_options: {}) end - def retrieve(file_id, provider:, request_options: {}); end # Returns information about a specific file. that can be used across - Assistants # API, Batch API This is the equivalent of GET https://api.openai.com/v1/files/ @@ -61,10 +72,14 @@ module Hanzoai # # ``` sig do - params(provider: String, purpose: T.nilable(String), request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + provider: String, + purpose: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list(provider, purpose: nil, request_options: {}) end - def list(provider, purpose: nil, request_options: {}); end # Deletes a specified file. that can be used across - Assistants API, Batch API # This is the equivalent of DELETE https://api.openai.com/v1/files/{file_id} @@ -79,13 +94,19 @@ module Hanzoai # # ``` sig do - params(file_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + file_id: String, + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(file_id, provider:, request_options: {}) end - def delete(file_id, provider:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/files/content.rbi b/rbi/hanzoai/resources/files/content.rbi index 6aa0b06b..645c3311 100644 --- a/rbi/hanzoai/resources/files/content.rbi +++ b/rbi/hanzoai/resources/files/content.rbi @@ -18,13 +18,19 @@ module Hanzoai # # ``` sig do - params(file_id: String, provider: String, request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + file_id: String, + provider: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(file_id, provider:, request_options: {}) end - def retrieve(file_id, provider:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/fine_tuning.rbi b/rbi/hanzoai/resources/fine_tuning.rbi index 132ef958..4ce565bc 100644 --- a/rbi/hanzoai/resources/fine_tuning.rbi +++ b/rbi/hanzoai/resources/fine_tuning.rbi @@ -8,7 +8,8 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/fine_tuning/jobs.rbi b/rbi/hanzoai/resources/fine_tuning/jobs.rbi index 119b10cd..f61f7880 100644 --- a/rbi/hanzoai/resources/fine_tuning/jobs.rbi +++ b/rbi/hanzoai/resources/fine_tuning/jobs.rbi @@ -27,19 +27,20 @@ module Hanzoai # ``` sig do params( - custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, + custom_llm_provider: + Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, model: String, training_file: String, - hyperparameters: T.nilable( - T.any(Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, Hanzoai::Internal::AnyHash) - ), + hyperparameters: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::OrHash + ), integrations: T.nilable(T::Array[String]), seed: T.nilable(Integer), suffix: T.nilable(String), validation_file: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def create( custom_llm_provider:, @@ -51,7 +52,9 @@ module Hanzoai suffix: nil, validation_file: nil, request_options: {} - ); end + ) + end + # Retrieves a fine-tuning job. This is the equivalent of GET # https://api.openai.com/v1/fine_tuning/jobs/{fine_tuning_job_id} # @@ -62,12 +65,17 @@ module Hanzoai sig do params( fine_tuning_job_id: String, - custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + custom_llm_provider: + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve( + fine_tuning_job_id, + custom_llm_provider:, + request_options: {} + ) end - def retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}); end # Lists fine-tuning jobs for the organization. This is the equivalent of GET # https://api.openai.com/v1/fine_tuning/jobs @@ -79,18 +87,25 @@ module Hanzoai # - `limit`: Number of fine-tuning jobs to retrieve (default is 20). sig do params( - custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, + custom_llm_provider: + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, after: T.nilable(String), limit: T.nilable(Integer), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list( + custom_llm_provider:, + after: nil, + limit: nil, + request_options: {} + ) end - def list(custom_llm_provider:, after: nil, limit: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi b/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi index 7df31793..59261f95 100644 --- a/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi +++ b/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi @@ -15,13 +15,18 @@ module Hanzoai # - `custom_llm_provider`: Name of the LLM provider # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. sig do - params(fine_tuning_job_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + fine_tuning_job_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(fine_tuning_job_id, request_options: {}) end - def create(fine_tuning_job_id, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/gemini.rbi b/rbi/hanzoai/resources/gemini.rbi index 126ccd36..a08ce1bb 100644 --- a/rbi/hanzoai/resources/gemini.rbi +++ b/rbi/hanzoai/resources/gemini.rbi @@ -4,28 +4,59 @@ module Hanzoai module Resources class Gemini # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/global.rbi b/rbi/hanzoai/resources/global.rbi index 3a626114..a4a13a1f 100644 --- a/rbi/hanzoai/resources/global.rbi +++ b/rbi/hanzoai/resources/global.rbi @@ -8,7 +8,8 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/global/spend.rbi b/rbi/hanzoai/resources/global/spend.rbi index 8d00d211..c70401f9 100644 --- a/rbi/hanzoai/resources/global/spend.rbi +++ b/rbi/hanzoai/resources/global/spend.rbi @@ -22,9 +22,10 @@ module Hanzoai end_date: T.nilable(String), start_date: T.nilable(String), tags: T.nilable(String), - request_options: Hanzoai::RequestOpts + request_options: Hanzoai::RequestOptions::OrHash + ).returns( + T::Array[Hanzoai::Models::Global::SpendListTagsResponseItem] ) - .returns(T::Array[Hanzoai::Models::Global::SpendListTagsResponseItem]) end def list_tags( # Time till which to view key spend @@ -34,7 +35,9 @@ module Hanzoai # comman separated tags to filter on tags: nil, request_options: {} - ); end + ) + end + # ADMIN ONLY / MASTER KEY Only Endpoint # # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs @@ -43,8 +46,13 @@ module Hanzoai # there # 2. LLM_VerificationTokens spend will be set = 0 # 3. LLM_TeamTable spend will be set = 0 - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def reset(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def reset(request_options: {}) + end # Get Daily Spend per Team, based on specific startTime and endTime. Per team, # view usage by each key, model [ { "group-by-day": "2024-05-10", "teams": [ { @@ -57,13 +65,17 @@ module Hanzoai api_key: T.nilable(String), customer_id: T.nilable(String), end_date: T.nilable(String), - group_by: T.nilable(Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy::OrSymbol), + group_by: + T.nilable( + Hanzoai::Global::SpendRetrieveReportParams::GroupBy::OrSymbol + ), internal_user_id: T.nilable(String), start_date: T.nilable(String), team_id: T.nilable(String), - request_options: Hanzoai::RequestOpts + request_options: Hanzoai::RequestOptions::OrHash + ).returns( + T::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem] ) - .returns(T::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem]) end def retrieve_report( # View spend for a specific api_key. Example api_key='sk-1234 @@ -82,10 +94,13 @@ module Hanzoai # View spend for a specific team_id. Example team_id='1234 team_id: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/guardrails.rbi b/rbi/hanzoai/resources/guardrails.rbi index bf505a80..77cf7f2b 100644 --- a/rbi/hanzoai/resources/guardrails.rbi +++ b/rbi/hanzoai/resources/guardrails.rbi @@ -37,12 +37,18 @@ module Hanzoai # ] # } # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::GuardrailListResponse) } - def list(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + Hanzoai::Models::GuardrailListResponse + ) + end + def list(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/health.rbi b/rbi/hanzoai/resources/health.rbi index c3117a40..2f94a02b 100644 --- a/rbi/hanzoai/resources/health.rbi +++ b/rbi/hanzoai/resources/health.rbi @@ -18,23 +18,45 @@ module Hanzoai # ``` # # else, the health checks will be run on models when /health is called. - sig { params(model: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } + sig do + params( + model: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end def check_all( # Specify the model name (optional) model: nil, request_options: {} - ); end + ) + end + # Unprotected endpoint for checking if worker is alive - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def check_liveliness(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def check_liveliness(request_options: {}) + end # Unprotected endpoint for checking if worker is alive - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def check_liveness(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def check_liveness(request_options: {}) + end # Unprotected endpoint for checking if worker can receive requests - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def check_readiness(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def check_readiness(request_options: {}) + end # Use this admin-only endpoint to check if the service is healthy. # @@ -45,19 +67,25 @@ module Hanzoai # ``` sig do params( - service: T.any(Hanzoai::Models::HealthCheckServicesParams::Service::OrSymbol, String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + service: + T.any( + Hanzoai::HealthCheckServicesParams::Service::OrSymbol, + String + ), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def check_services( # Specify the service being hit. service:, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/images.rbi b/rbi/hanzoai/resources/images.rbi index 826ba73a..6cbc3db1 100644 --- a/rbi/hanzoai/resources/images.rbi +++ b/rbi/hanzoai/resources/images.rbi @@ -8,7 +8,8 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/images/generations.rbi b/rbi/hanzoai/resources/images/generations.rbi index abaac34e..37a1d40b 100644 --- a/rbi/hanzoai/resources/images/generations.rbi +++ b/rbi/hanzoai/resources/images/generations.rbi @@ -5,12 +5,18 @@ module Hanzoai class Images class Generations # Image Generation - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/key.rbi b/rbi/hanzoai/resources/key.rbi index ce66e127..301882a6 100644 --- a/rbi/hanzoai/resources/key.rbi +++ b/rbi/hanzoai/resources/key.rbi @@ -93,9 +93,8 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def update( # Body param: @@ -157,7 +156,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # List all keys for a given user / team / organization. # # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, @@ -172,9 +173,8 @@ module Hanzoai size: Integer, team_id: T.nilable(String), user_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::KeyListResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::KeyListResponse) end def list( # Include all keys for teams that user is an admin of. @@ -194,7 +194,9 @@ module Hanzoai # Filter keys by user ID user_id: nil, request_options: {} - ); end + ) + end + # Delete a key from the key management system. # # Parameters:: @@ -225,9 +227,8 @@ module Hanzoai key_aliases: T.nilable(T::Array[String]), keys: T.nilable(T::Array[String]), llm_changed_by: String, - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def delete( # Body param: @@ -239,7 +240,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # Block an Virtual key from making any requests. # # Parameters: @@ -257,8 +260,11 @@ module Hanzoai # # Note: This is an admin-only endpoint. Only proxy admins can block keys. sig do - params(key: String, llm_changed_by: String, request_options: Hanzoai::RequestOpts) - .returns(T.nilable(Hanzoai::Models::KeyBlockResponse)) + params( + key: String, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.nilable(Hanzoai::Models::KeyBlockResponse)) end def block( # Body param: @@ -268,7 +274,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # Check the health of the key # # Checks: @@ -308,8 +316,13 @@ module Hanzoai # } # } # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::KeyCheckHealthResponse) } - def check_health(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + Hanzoai::Models::KeyCheckHealthResponse + ) + end + def check_health(request_options: {}) + end # Generate an API key based on the provided data. # @@ -424,9 +437,8 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::GenerateKeyResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::GenerateKeyResponse) end def generate( # Body param: @@ -488,7 +500,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # Regenerate an existing API key while optionally updating its parameters. # # Parameters: @@ -571,9 +585,8 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_id: T.nilable(String), llm_changed_by: String, - request_options: Hanzoai::RequestOpts - ) - .returns(T.nilable(Hanzoai::Models::GenerateKeyResponse)) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.nilable(Hanzoai::GenerateKeyResponse)) end def regenerate_by_key( # Path param: @@ -639,7 +652,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # Retrieve information about a key. Parameters: key: Optional[str] = Query # parameter representing the key in the request user_api_key_dict: UserAPIKeyAuth # = Dependency representing the user's API key Returns: Dict containing the key @@ -657,12 +672,19 @@ module Hanzoai # ``` # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" # ``` - sig { params(key: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } + sig do + params( + key: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end def retrieve_info( # Key in the request parameters key: nil, request_options: {} - ); end + ) + end + # Unblock a Virtual key to allow it to make requests again. # # Parameters: @@ -680,7 +702,11 @@ module Hanzoai # # Note: This is an admin-only endpoint. Only proxy admins can unblock keys. sig do - params(key: String, llm_changed_by: String, request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + key: String, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def unblock( # Body param: @@ -690,10 +716,13 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/key/regenerate.rbi b/rbi/hanzoai/resources/key/regenerate.rbi index bcbe9fb6..4e788c3d 100644 --- a/rbi/hanzoai/resources/key/regenerate.rbi +++ b/rbi/hanzoai/resources/key/regenerate.rbi @@ -6,7 +6,8 @@ module Hanzoai class Regenerate # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/langfuse.rbi b/rbi/hanzoai/resources/langfuse.rbi index 014c8b68..c9215456 100644 --- a/rbi/hanzoai/resources/langfuse.rbi +++ b/rbi/hanzoai/resources/langfuse.rbi @@ -6,36 +6,67 @@ module Hanzoai # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # Call Langfuse via LLM proxy. Works with Langfuse SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/model.rbi b/rbi/hanzoai/resources/model.rbi index 2320acbb..7f32984e 100644 --- a/rbi/hanzoai/resources/model.rbi +++ b/rbi/hanzoai/resources/model.rbi @@ -12,12 +12,11 @@ module Hanzoai # Allows adding new models to the model list in the config.yaml sig do params( - llm_params: T.any(Hanzoai::Models::ModelCreateParams::LlmParams, Hanzoai::Internal::AnyHash), - model_info: T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash), + llm_params: Hanzoai::ModelCreateParams::LlmParams::OrHash, + model_info: Hanzoai::ModelInfo::OrHash, model_name: String, - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def create( # LLM Params with 'model' requirement - used for completions @@ -25,14 +24,23 @@ module Hanzoai model_info:, model_name:, request_options: {} - ); end + ) + end + # Allows deleting models in the model list in the config.yaml - sig { params(id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(id:, request_options: {}); end + sig do + params( + id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(id:, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/model/info.rbi b/rbi/hanzoai/resources/model/info.rbi index 85cb3b34..33dad6df 100644 --- a/rbi/hanzoai/resources/model/info.rbi +++ b/rbi/hanzoai/resources/model/info.rbi @@ -35,13 +35,18 @@ module Hanzoai # } # ``` sig do - params(llm_model_id: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + llm_model_id: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list(llm_model_id: nil, request_options: {}) end - def list(llm_model_id: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/model/update.rbi b/rbi/hanzoai/resources/model/update.rbi index b0fb46d0..d4ce6069 100644 --- a/rbi/hanzoai/resources/model/update.rbi +++ b/rbi/hanzoai/resources/model/update.rbi @@ -7,14 +7,20 @@ module Hanzoai # Edit existing model params sig do params( - llm_params: T.nilable(T.any(Hanzoai::Models::Model::UpdateDeployment::LlmParams, Hanzoai::Internal::AnyHash)), - model_info: T.nilable(T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash)), + llm_params: + T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash), + model_info: T.nilable(Hanzoai::ModelInfo::OrHash), model_name: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def full( + llm_params: nil, + model_info: nil, + model_name: nil, + request_options: {} + ) end - def full(llm_params: nil, model_info: nil, model_name: nil, request_options: {}); end # PATCH Endpoint for partial model updates. # @@ -31,18 +37,26 @@ module Hanzoai sig do params( model_id: String, - llm_params: T.nilable(T.any(Hanzoai::Models::Model::UpdateDeployment::LlmParams, Hanzoai::Internal::AnyHash)), - model_info: T.nilable(T.any(Hanzoai::Models::ModelInfo, Hanzoai::Internal::AnyHash)), + llm_params: + T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash), + model_info: T.nilable(Hanzoai::ModelInfo::OrHash), model_name: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def partial( + model_id, + llm_params: nil, + model_info: nil, + model_name: nil, + request_options: {} + ) end - def partial(model_id, llm_params: nil, model_info: nil, model_name: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/model_group.rbi b/rbi/hanzoai/resources/model_group.rbi index 3f4b2ec4..082109cf 100644 --- a/rbi/hanzoai/resources/model_group.rbi +++ b/rbi/hanzoai/resources/model_group.rbi @@ -146,13 +146,18 @@ module Hanzoai # } # ``` sig do - params(model_group: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + model_group: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve_info(model_group: nil, request_options: {}) end - def retrieve_info(model_group: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/models.rbi b/rbi/hanzoai/resources/models.rbi index 85622a8e..f59bc43f 100644 --- a/rbi/hanzoai/resources/models.rbi +++ b/rbi/hanzoai/resources/models.rbi @@ -11,15 +11,16 @@ module Hanzoai params( return_wildcard_routes: T.nilable(T::Boolean), team_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list(return_wildcard_routes: nil, team_id: nil, request_options: {}) end - def list(return_wildcard_routes: nil, team_id: nil, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/moderations.rbi b/rbi/hanzoai/resources/moderations.rbi index e1a8e4d5..da4c7a7c 100644 --- a/rbi/hanzoai/resources/moderations.rbi +++ b/rbi/hanzoai/resources/moderations.rbi @@ -11,12 +11,18 @@ module Hanzoai # ``` # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/openai.rbi b/rbi/hanzoai/resources/openai.rbi index b7f3a43c..24838e9e 100644 --- a/rbi/hanzoai/resources/openai.rbi +++ b/rbi/hanzoai/resources/openai.rbi @@ -8,32 +8,63 @@ module Hanzoai # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # Simple pass-through for OpenAI. Use this if you want to directly send a request # to OpenAI. - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/openai/deployments.rbi b/rbi/hanzoai/resources/openai/deployments.rbi index 33471076..40aa7f21 100644 --- a/rbi/hanzoai/resources/openai/deployments.rbi +++ b/rbi/hanzoai/resources/openai/deployments.rbi @@ -21,8 +21,14 @@ module Hanzoai # "temperature": 0.7 # }' # ``` - sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def complete(model, request_options: {}); end + sig do + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def complete(model, request_options: {}) + end # Follows the exact same API spec as # `OpenAI's Embeddings API https://platform.openai.com/docs/api-reference/embeddings` @@ -36,12 +42,19 @@ module Hanzoai # "input": "The quick brown fox jumps over the lazy dog" # }' # ``` - sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def embed(model, request_options: {}); end + sig do + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def embed(model, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/openai/deployments/chat.rbi b/rbi/hanzoai/resources/openai/deployments/chat.rbi index 0d7978eb..31035991 100644 --- a/rbi/hanzoai/resources/openai/deployments/chat.rbi +++ b/rbi/hanzoai/resources/openai/deployments/chat.rbi @@ -22,12 +22,19 @@ module Hanzoai # ] # }' # ``` - sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def complete(model, request_options: {}); end + sig do + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def complete(model, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/organization.rbi b/rbi/hanzoai/resources/organization.rbi index 4a41919c..2b55cfba 100644 --- a/rbi/hanzoai/resources/organization.rbi +++ b/rbi/hanzoai/resources/organization.rbi @@ -84,9 +84,8 @@ module Hanzoai rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), tpm_limit: T.nilable(Integer), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::OrganizationCreateResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::OrganizationCreateResponse) end def create( organization_alias:, @@ -102,7 +101,9 @@ module Hanzoai soft_budget: nil, tpm_limit: nil, request_options: {} - ); end + ) + end + # Update an organization sig do params( @@ -113,9 +114,8 @@ module Hanzoai organization_id: T.nilable(String), spend: T.nilable(Float), updated_by: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::OrganizationUpdateResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::OrganizationUpdateResponse) end def update( budget_id: nil, @@ -126,15 +126,19 @@ module Hanzoai spend: nil, updated_by: nil, request_options: {} - ); end + ) + end + # ``` # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' # ``` sig do - params(request_options: Hanzoai::RequestOpts) - .returns(T::Array[Hanzoai::Models::OrganizationListResponseItem]) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T::Array[Hanzoai::Models::OrganizationListResponseItem] + ) + end + def list(request_options: {}) end - def list(request_options: {}); end # Delete an organization # @@ -142,10 +146,13 @@ module Hanzoai # # - organization_ids: List[str] - The organization ids to delete. sig do - params(organization_ids: T::Array[String], request_options: Hanzoai::RequestOpts) - .returns(T::Array[Hanzoai::Models::OrganizationDeleteResponseItem]) + params( + organization_ids: T::Array[String], + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T::Array[Hanzoai::Models::OrganizationDeleteResponseItem]) + end + def delete(organization_ids:, request_options: {}) end - def delete(organization_ids:, request_options: {}); end # [BETA] # @@ -186,18 +193,23 @@ module Hanzoai # 3. Add Internal User to the `LLM_OrganizationMembership` table sig do params( - member: T.any( - T::Array[T.any(Hanzoai::Models::OrgMember, Hanzoai::Internal::AnyHash)], - Hanzoai::Models::OrgMember, - Hanzoai::Internal::AnyHash - ), + member: + T.any( + T::Array[Hanzoai::OrgMember::OrHash], + Hanzoai::OrgMember::OrHash + ), organization_id: String, max_budget_in_organization: T.nilable(Float), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::OrganizationAddMemberResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::OrganizationAddMemberResponse) + end + def add_member( + member:, + organization_id:, + max_budget_in_organization: nil, + request_options: {} + ) end - def add_member(member:, organization_id:, max_budget_in_organization: nil, request_options: {}); end # Delete a member from an organization sig do @@ -205,23 +217,28 @@ module Hanzoai organization_id: String, user_email: T.nilable(String), user_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete_member( + organization_id:, + user_email: nil, + user_id: nil, + request_options: {} + ) end - def delete_member(organization_id:, user_email: nil, user_id: nil, request_options: {}); end # Update a member's role in an organization sig do params( organization_id: String, max_budget_in_organization: T.nilable(Float), - role: T.nilable(Hanzoai::Models::OrganizationUpdateMemberParams::Role::OrSymbol), + role: + T.nilable(Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::OrganizationUpdateMemberResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::OrganizationUpdateMemberResponse) end def update_member( organization_id:, @@ -241,10 +258,13 @@ module Hanzoai user_email: nil, user_id: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/organization/info.rbi b/rbi/hanzoai/resources/organization/info.rbi index f39c0c89..afc315c5 100644 --- a/rbi/hanzoai/resources/organization/info.rbi +++ b/rbi/hanzoai/resources/organization/info.rbi @@ -6,20 +6,28 @@ module Hanzoai class Info # Get the org specific information sig do - params(organization_id: String, request_options: Hanzoai::RequestOpts) - .returns(Hanzoai::Models::Organization::InfoRetrieveResponse) + params( + organization_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::Organization::InfoRetrieveResponse) + end + def retrieve(organization_id:, request_options: {}) end - def retrieve(organization_id:, request_options: {}); end # DEPRECATED: Use GET /organization/info instead sig do - params(organizations: T::Array[String], request_options: Hanzoai::RequestOpts).returns(T.anything) + params( + organizations: T::Array[String], + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def deprecated(organizations:, request_options: {}) end - def deprecated(organizations:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/provider.rbi b/rbi/hanzoai/resources/provider.rbi index 7580fb1e..4a3115be 100644 --- a/rbi/hanzoai/resources/provider.rbi +++ b/rbi/hanzoai/resources/provider.rbi @@ -47,12 +47,18 @@ module Hanzoai # } # } # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(Hanzoai::Models::ProviderListBudgetsResponse) } - def list_budgets(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + Hanzoai::Models::ProviderListBudgetsResponse + ) + end + def list_budgets(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/rerank.rbi b/rbi/hanzoai/resources/rerank.rbi index 9a4a9b6d..13ea256f 100644 --- a/rbi/hanzoai/resources/rerank.rbi +++ b/rbi/hanzoai/resources/rerank.rbi @@ -4,20 +4,36 @@ module Hanzoai module Resources class Rerank # Rerank - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create(request_options: {}) + end # Rerank - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create_v1(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create_v1(request_options: {}) + end # Rerank - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create_v2(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create_v2(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/responses.rbi b/rbi/hanzoai/resources/responses.rbi index 692faa79..512fe394 100644 --- a/rbi/hanzoai/resources/responses.rbi +++ b/rbi/hanzoai/resources/responses.rbi @@ -15,8 +15,13 @@ module Hanzoai # "input": "Tell me about AI" # }' # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create(request_options: {}) + end # Get a response by ID. # @@ -26,8 +31,14 @@ module Hanzoai # ```bash # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" # ``` - sig { params(response_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(response_id, request_options: {}); end + sig do + params( + response_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(response_id, request_options: {}) + end # Delete a response by ID. # @@ -37,12 +48,19 @@ module Hanzoai # ```bash # curl -X DELETE http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" # ``` - sig { params(response_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(response_id, request_options: {}); end + sig do + params( + response_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(response_id, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/responses/input_items.rbi b/rbi/hanzoai/resources/responses/input_items.rbi index 77eca0cc..44ecd943 100644 --- a/rbi/hanzoai/resources/responses/input_items.rbi +++ b/rbi/hanzoai/resources/responses/input_items.rbi @@ -12,12 +12,19 @@ module Hanzoai # ```bash # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" # ``` - sig { params(response_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list(response_id, request_options: {}); end + sig do + params( + response_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list(response_id, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/routes.rbi b/rbi/hanzoai/resources/routes.rbi index fa0681c2..2a864e67 100644 --- a/rbi/hanzoai/resources/routes.rbi +++ b/rbi/hanzoai/resources/routes.rbi @@ -4,12 +4,18 @@ module Hanzoai module Resources class Routes # Get a list of available routes in the FastAPI application. - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def list(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/settings.rbi b/rbi/hanzoai/resources/settings.rbi index 66d2750f..84a45485 100644 --- a/rbi/hanzoai/resources/settings.rbi +++ b/rbi/hanzoai/resources/settings.rbi @@ -26,12 +26,18 @@ module Hanzoai # "llm.request_timeout": llm.request_timeout, # } # ``` - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def retrieve(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/spend.rbi b/rbi/hanzoai/resources/spend.rbi index 7cd75f73..4b285996 100644 --- a/rbi/hanzoai/resources/spend.rbi +++ b/rbi/hanzoai/resources/spend.rbi @@ -55,11 +55,16 @@ module Hanzoai completion_response: T.nilable(T.anything), messages: T.nilable(T::Array[T.anything]), model: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def calculate_spend( + completion_response: nil, + messages: nil, + model: nil, + request_options: {} + ) end - def calculate_spend(completion_response: nil, messages: nil, model: nil, request_options: {}); end # View all spend logs, if request_id is provided, only logs for that request_id # will be returned @@ -94,9 +99,8 @@ module Hanzoai request_id: T.nilable(String), start_date: T.nilable(String), user_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T::Array[Hanzoai::Models::SpendListLogsResponseItem]) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T::Array[Hanzoai::Models::SpendListLogsResponseItem]) end def list_logs( # Get spend logs based on api key @@ -111,7 +115,9 @@ module Hanzoai # Get spend logs based on user_id user_id: nil, request_options: {} - ); end + ) + end + # LLM Enterprise - View Spend Per Request Tag # # Example Request: @@ -129,9 +135,8 @@ module Hanzoai params( end_date: T.nilable(String), start_date: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T::Array[Hanzoai::Models::SpendListTagsResponseItem]) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T::Array[Hanzoai::Models::SpendListTagsResponseItem]) end def list_tags( # Time till which to view key spend @@ -139,10 +144,13 @@ module Hanzoai # Time from which to start viewing key spend start_date: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/team.rbi b/rbi/hanzoai/resources/team.rbi index 48c08c58..5da2a947 100644 --- a/rbi/hanzoai/resources/team.rbi +++ b/rbi/hanzoai/resources/team.rbi @@ -83,7 +83,7 @@ module Hanzoai guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), members: T::Array[T.anything], - members_with_roles: T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], + members_with_roles: T::Array[Hanzoai::Member::OrHash], metadata: T.nilable(T.anything), model_aliases: T.nilable(T.anything), models: T::Array[T.anything], @@ -94,9 +94,8 @@ module Hanzoai team_id: T.nilable(String), tpm_limit: T.nilable(Integer), llm_changed_by: String, - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::TeamCreateResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::TeamCreateResponse) end def create( # Body param: @@ -136,7 +135,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # Use `/team/member_add` AND `/team/member/delete` to add/remove new team members # # You can now update team budget / rate limits via /team/update @@ -204,9 +205,8 @@ module Hanzoai team_alias: T.nilable(String), tpm_limit: T.nilable(Integer), llm_changed_by: String, - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def update( # Body param: @@ -240,7 +240,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # ``` # curl --location --request GET 'http://0.0.0.0:4000/team/list' --header 'Authorization: Bearer sk-1234' # ``` @@ -256,16 +258,17 @@ module Hanzoai params( organization_id: T.nilable(String), user_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def list( organization_id: nil, # Only return teams which this 'user_id' belongs to user_id: nil, request_options: {} - ); end + ) + end + # delete team and associated team keys # # Parameters: @@ -279,8 +282,11 @@ module Hanzoai # }' # ``` sig do - params(team_ids: T::Array[String], llm_changed_by: String, request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + team_ids: T::Array[String], + llm_changed_by: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def delete( # Body param: @@ -290,7 +296,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # [BETA] # # Add new members (either via user_email or user_id) to a team @@ -306,18 +314,20 @@ module Hanzoai # ``` sig do params( - member: T.any( - T::Array[T.any(Hanzoai::Models::Member, Hanzoai::Internal::AnyHash)], - Hanzoai::Models::Member, - Hanzoai::Internal::AnyHash - ), + member: + T.any(T::Array[Hanzoai::Member::OrHash], Hanzoai::Member::OrHash), team_id: String, max_budget_in_team: T.nilable(Float), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::TeamAddMemberResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::TeamAddMemberResponse) + end + def add_member( + member:, + team_id:, + max_budget_in_team: nil, + request_options: {} + ) end - def add_member(member:, team_id:, max_budget_in_team: nil, request_options: {}); end # Blocks all calls from keys with this team id. # @@ -336,8 +346,14 @@ module Hanzoai # Returns: # # - The updated team record with blocked=True - sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def block(team_id:, request_options: {}); end + sig do + params( + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def block(team_id:, request_options: {}) + end # Disable all logging callbacks for a team # @@ -350,12 +366,24 @@ module Hanzoai # ``` # curl -X POST 'http://localhost:4000/team/dbe2f686-a686-4896-864a-4c3924458709/disable_logging' -H 'Authorization: Bearer sk-1234' # ``` - sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def disable_logging(team_id, request_options: {}); end + sig do + params( + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def disable_logging(team_id, request_options: {}) + end # List Available Teams - sig { params(response_model: T.anything, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list_available(response_model: nil, request_options: {}); end + sig do + params( + response_model: T.anything, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list_available(response_model: nil, request_options: {}) + end # [BETA] # @@ -377,11 +405,16 @@ module Hanzoai team_id: String, user_email: T.nilable(String), user_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def remove_member( + team_id:, + user_email: nil, + user_id: nil, + request_options: {} + ) end - def remove_member(team_id:, user_email: nil, user_id: nil, request_options: {}); end # get info on team + related keys # @@ -392,12 +425,19 @@ module Hanzoai # ``` # curl --location 'http://localhost:4000/team/info?team_id=your_team_id_here' --header 'Authorization: Bearer your_api_key_here' # ``` - sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } + sig do + params( + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end def retrieve_info( # Team ID in the request parameters team_id: nil, request_options: {} - ); end + ) + end + # Blocks all calls from keys with this team id. # # Parameters: @@ -411,8 +451,14 @@ module Hanzoai # "team_id": "team-1234" # }' # ``` - sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def unblock(team_id:, request_options: {}); end + sig do + params( + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def unblock(team_id:, request_options: {}) + end # [BETA] # @@ -421,12 +467,11 @@ module Hanzoai params( team_id: String, max_budget_in_team: T.nilable(Float), - role: T.nilable(Hanzoai::Models::TeamUpdateMemberParams::Role::OrSymbol), + role: T.nilable(Hanzoai::TeamUpdateMemberParams::Role::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::TeamUpdateMemberResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::TeamUpdateMemberResponse) end def update_member( team_id:, @@ -440,7 +485,8 @@ module Hanzoai # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/team/callback.rbi b/rbi/hanzoai/resources/team/callback.rbi index 19dccc01..00ef590c 100644 --- a/rbi/hanzoai/resources/team/callback.rbi +++ b/rbi/hanzoai/resources/team/callback.rbi @@ -23,8 +23,14 @@ module Hanzoai # "success_callbacks": team_callback_settings_obj.success_callback, # "failure_callbacks": team_callback_settings_obj.failure_callback, # "callback_vars": team_callback_settings_obj.callback_vars, }, } - sig { params(team_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(team_id, request_options: {}); end + sig do + params( + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(team_id, request_options: {}) + end # Add a success/failure callback to a team # @@ -71,11 +77,13 @@ module Hanzoai team_id: String, callback_name: String, callback_vars: T::Hash[Symbol, String], - callback_type: T.nilable(Hanzoai::Models::Team::CallbackAddParams::CallbackType::OrSymbol), + callback_type: + T.nilable( + Hanzoai::Team::CallbackAddParams::CallbackType::OrSymbol + ), llm_changed_by: String, - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def add( # Path param: @@ -91,10 +99,13 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/team/model.rbi b/rbi/hanzoai/resources/team/model.rbi index af0bffb1..9e28cc22 100644 --- a/rbi/hanzoai/resources/team/model.rbi +++ b/rbi/hanzoai/resources/team/model.rbi @@ -21,10 +21,14 @@ module Hanzoai # }' # ``` sig do - params(models: T::Array[String], team_id: String, request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + models: T::Array[String], + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def add(models:, team_id:, request_options: {}) end - def add(models:, team_id:, request_options: {}); end # Remove models from a team's allowed model list. Only proxy admin or team admin # can remove models. @@ -43,14 +47,19 @@ module Hanzoai # }' # ``` sig do - params(models: T::Array[String], team_id: String, request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + models: T::Array[String], + team_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def remove(models:, team_id:, request_options: {}) end - def remove(models:, team_id:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/test.rbi b/rbi/hanzoai/resources/test.rbi index 36eee234..869a19c2 100644 --- a/rbi/hanzoai/resources/test.rbi +++ b/rbi/hanzoai/resources/test.rbi @@ -10,12 +10,18 @@ module Hanzoai # Parameters: request (Request): The incoming request. # # Returns: dict: A dictionary containing the route of the request URL. - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def ping(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def ping(request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/threads.rbi b/rbi/hanzoai/resources/threads.rbi index 4aca456a..31956140 100644 --- a/rbi/hanzoai/resources/threads.rbi +++ b/rbi/hanzoai/resources/threads.rbi @@ -13,18 +13,30 @@ module Hanzoai # # API Reference - # https://platform.openai.com/docs/api-reference/threads/createThread - sig { params(request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(request_options: {}); end + sig do + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.anything + ) + end + def create(request_options: {}) + end # Retrieves a thread. # # API Reference - https://platform.openai.com/docs/api-reference/threads/getThread - sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(thread_id, request_options: {}); end + sig do + params( + thread_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(thread_id, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/threads/messages.rbi b/rbi/hanzoai/resources/threads/messages.rbi index 6196e088..0f30541b 100644 --- a/rbi/hanzoai/resources/threads/messages.rbi +++ b/rbi/hanzoai/resources/threads/messages.rbi @@ -8,19 +8,32 @@ module Hanzoai # # API Reference - # https://platform.openai.com/docs/api-reference/messages/createMessage - sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(thread_id, request_options: {}); end + sig do + params( + thread_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(thread_id, request_options: {}) + end # Returns a list of messages for a given thread. # # API Reference - # https://platform.openai.com/docs/api-reference/messages/listMessages - sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def list(thread_id, request_options: {}); end + sig do + params( + thread_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def list(thread_id, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/threads/runs.rbi b/rbi/hanzoai/resources/threads/runs.rbi index 5752ddb9..ededbce5 100644 --- a/rbi/hanzoai/resources/threads/runs.rbi +++ b/rbi/hanzoai/resources/threads/runs.rbi @@ -7,12 +7,19 @@ module Hanzoai # Create a run. # # API Reference: https://platform.openai.com/docs/api-reference/runs/createRun - sig { params(thread_id: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(thread_id, request_options: {}); end + sig do + params( + thread_id: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(thread_id, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/user.rbi b/rbi/hanzoai/resources/user.rbi index 2eefe6b2..876da43e 100644 --- a/rbi/hanzoai/resources/user.rbi +++ b/rbi/hanzoai/resources/user.rbi @@ -113,10 +113,9 @@ module Hanzoai user_alias: T.nilable(String), user_email: T.nilable(String), user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserCreateParams::UserRole::OrSymbol), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::UserCreateResponse) + user_role: T.nilable(Hanzoai::UserCreateParams::UserRole::OrSymbol), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::UserCreateResponse) end def create( aliases: nil, @@ -147,7 +146,9 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ); end + ) + end + # Example curl # # ``` @@ -229,10 +230,9 @@ module Hanzoai tpm_limit: T.nilable(Integer), user_email: T.nilable(String), user_id: T.nilable(String), - user_role: T.nilable(Hanzoai::Models::UserUpdateParams::UserRole::OrSymbol), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + user_role: T.nilable(Hanzoai::UserUpdateParams::UserRole::OrSymbol), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def update( aliases: nil, @@ -260,7 +260,9 @@ module Hanzoai user_id: nil, user_role: nil, request_options: {} - ); end + ) + end + # Get a paginated list of users, optionally filtered by role. # # Used by the UI to populate the user lists. @@ -284,9 +286,8 @@ module Hanzoai page_size: Integer, role: T.nilable(String), user_ids: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(T.anything) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def list( # Page number @@ -298,7 +299,9 @@ module Hanzoai # Get list of users by user_ids user_ids: nil, request_options: {} - ); end + ) + end + # delete user and associated user keys # # ``` @@ -314,8 +317,11 @@ module Hanzoai # # - user_ids: List[str] - The list of user id's to be deleted. sig do - params(user_ids: T::Array[String], llm_changed_by: String, request_options: Hanzoai::RequestOpts) - .returns(T.anything) + params( + user_ids: T::Array[String], + llm_changed_by: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end def delete( # Body param: @@ -325,7 +331,9 @@ module Hanzoai # accountability llm_changed_by: nil, request_options: {} - ); end + ) + end + # [10/07/2024] Note: To get all users (+pagination), use `/user/list` endpoint. # # Use this to get user information. (user row + all user key info) @@ -335,15 +343,23 @@ module Hanzoai # ``` # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' # ``` - sig { params(user_id: T.nilable(String), request_options: Hanzoai::RequestOpts).returns(T.anything) } + sig do + params( + user_id: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end def retrieve_info( # User ID in the request parameters user_id: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/utils.rbi b/rbi/hanzoai/resources/utils.rbi index 8f4832f8..2c2e4cca 100644 --- a/rbi/hanzoai/resources/utils.rbi +++ b/rbi/hanzoai/resources/utils.rbi @@ -12,8 +12,14 @@ module Hanzoai # ``` # curl -X GET --location 'http://localhost:4000/utils/supported_openai_params?model=gpt-3.5-turbo-16k' --header 'Authorization: Bearer sk-1234' # ``` - sig { params(model: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def get_supported_openai_params(model:, request_options: {}); end + sig do + params( + model: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def get_supported_openai_params(model:, request_options: {}) + end # Token Counter sig do @@ -21,26 +27,27 @@ module Hanzoai model: String, messages: T.nilable(T::Array[T.anything]), prompt: T.nilable(String), - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::UtilTokenCounterResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::UtilTokenCounterResponse) + end + def token_counter(model:, messages: nil, prompt: nil, request_options: {}) end - def token_counter(model:, messages: nil, prompt: nil, request_options: {}); end # Transform Request sig do params( - call_type: Hanzoai::Models::UtilTransformRequestParams::CallType::OrSymbol, + call_type: Hanzoai::UtilTransformRequestParams::CallType::OrSymbol, request_body: T.anything, - request_options: Hanzoai::RequestOpts - ) - .returns(Hanzoai::Models::UtilTransformRequestResponse) + request_options: Hanzoai::RequestOptions::OrHash + ).returns(Hanzoai::Models::UtilTransformRequestResponse) + end + def transform_request(call_type:, request_body:, request_options: {}) end - def transform_request(call_type:, request_body:, request_options: {}); end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/hanzoai/resources/vertex_ai.rbi b/rbi/hanzoai/resources/vertex_ai.rbi index 54068f57..b1bb54b8 100644 --- a/rbi/hanzoai/resources/vertex_ai.rbi +++ b/rbi/hanzoai/resources/vertex_ai.rbi @@ -6,36 +6,67 @@ module Hanzoai # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def create(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def create(endpoint, request_options: {}) + end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def retrieve(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def retrieve(endpoint, request_options: {}) + end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def update(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def update(endpoint, request_options: {}) + end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def delete(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def delete(endpoint, request_options: {}) + end # Call LLM proxy via Vertex AI SDK. # # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) - sig { params(endpoint: String, request_options: Hanzoai::RequestOpts).returns(T.anything) } - def patch(endpoint, request_options: {}); end + sig do + params( + endpoint: String, + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) + end + def patch(endpoint, request_options: {}) + end # @api private sig { params(client: Hanzoai::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/sig/hanzoai/internal/type/request_parameters.rbs b/sig/hanzoai/internal/type/request_parameters.rbs index 6e21e7a3..3538ddf6 100644 --- a/sig/hanzoai/internal/type/request_parameters.rbs +++ b/sig/hanzoai/internal/type/request_parameters.rbs @@ -4,7 +4,9 @@ module Hanzoai type request_parameters = { request_options: Hanzoai::request_opts } module RequestParameters - attr_accessor request_options: Hanzoai::request_opts + attr_reader request_options: Hanzoai::request_opts + + def request_options=: (Hanzoai::request_opts) -> Hanzoai::request_opts module Converter def dump_request: (top params) -> [top, ::Hash[Symbol, top]] diff --git a/sig/hanzoai/models/active_list_callbacks_params.rbs b/sig/hanzoai/models/active_list_callbacks_params.rbs index 773b53fd..c156577f 100644 --- a/sig/hanzoai/models/active_list_callbacks_params.rbs +++ b/sig/hanzoai/models/active_list_callbacks_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::active_list_callbacks_params end end end diff --git a/sig/hanzoai/models/add_add_allowed_ip_params.rbs b/sig/hanzoai/models/add_add_allowed_ip_params.rbs index 612e394a..0deac50f 100644 --- a/sig/hanzoai/models/add_add_allowed_ip_params.rbs +++ b/sig/hanzoai/models/add_add_allowed_ip_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::add_add_allowed_ip_params end end end diff --git a/sig/hanzoai/models/anthropic_create_params.rbs b/sig/hanzoai/models/anthropic_create_params.rbs index 40e53837..507aebef 100644 --- a/sig/hanzoai/models/anthropic_create_params.rbs +++ b/sig/hanzoai/models/anthropic_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::anthropic_create_params end end end diff --git a/sig/hanzoai/models/anthropic_delete_params.rbs b/sig/hanzoai/models/anthropic_delete_params.rbs index 714f002d..5c17b994 100644 --- a/sig/hanzoai/models/anthropic_delete_params.rbs +++ b/sig/hanzoai/models/anthropic_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::anthropic_delete_params end end end diff --git a/sig/hanzoai/models/anthropic_modify_params.rbs b/sig/hanzoai/models/anthropic_modify_params.rbs index 5ac4f81a..f9566e0f 100644 --- a/sig/hanzoai/models/anthropic_modify_params.rbs +++ b/sig/hanzoai/models/anthropic_modify_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::anthropic_modify_params end end end diff --git a/sig/hanzoai/models/anthropic_retrieve_params.rbs b/sig/hanzoai/models/anthropic_retrieve_params.rbs index cbc35563..3c113c90 100644 --- a/sig/hanzoai/models/anthropic_retrieve_params.rbs +++ b/sig/hanzoai/models/anthropic_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::anthropic_retrieve_params end end end diff --git a/sig/hanzoai/models/anthropic_update_params.rbs b/sig/hanzoai/models/anthropic_update_params.rbs index 8f6121d2..0ae52853 100644 --- a/sig/hanzoai/models/anthropic_update_params.rbs +++ b/sig/hanzoai/models/anthropic_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::anthropic_update_params end end end diff --git a/sig/hanzoai/models/assemblyai_create_params.rbs b/sig/hanzoai/models/assemblyai_create_params.rbs index 1c2349e8..d147342a 100644 --- a/sig/hanzoai/models/assemblyai_create_params.rbs +++ b/sig/hanzoai/models/assemblyai_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assemblyai_create_params end end end diff --git a/sig/hanzoai/models/assemblyai_delete_params.rbs b/sig/hanzoai/models/assemblyai_delete_params.rbs index 1a4e3a66..b11c5c80 100644 --- a/sig/hanzoai/models/assemblyai_delete_params.rbs +++ b/sig/hanzoai/models/assemblyai_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assemblyai_delete_params end end end diff --git a/sig/hanzoai/models/assemblyai_patch_params.rbs b/sig/hanzoai/models/assemblyai_patch_params.rbs index dac0ba62..b14d1ad6 100644 --- a/sig/hanzoai/models/assemblyai_patch_params.rbs +++ b/sig/hanzoai/models/assemblyai_patch_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assemblyai_patch_params end end end diff --git a/sig/hanzoai/models/assemblyai_retrieve_params.rbs b/sig/hanzoai/models/assemblyai_retrieve_params.rbs index 250d2125..dfec8feb 100644 --- a/sig/hanzoai/models/assemblyai_retrieve_params.rbs +++ b/sig/hanzoai/models/assemblyai_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assemblyai_retrieve_params end end end diff --git a/sig/hanzoai/models/assemblyai_update_params.rbs b/sig/hanzoai/models/assemblyai_update_params.rbs index 6542f33f..d93af73e 100644 --- a/sig/hanzoai/models/assemblyai_update_params.rbs +++ b/sig/hanzoai/models/assemblyai_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assemblyai_update_params end end end diff --git a/sig/hanzoai/models/assistant_create_params.rbs b/sig/hanzoai/models/assistant_create_params.rbs index cac9313c..ad1683eb 100644 --- a/sig/hanzoai/models/assistant_create_params.rbs +++ b/sig/hanzoai/models/assistant_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assistant_create_params end end end diff --git a/sig/hanzoai/models/assistant_delete_params.rbs b/sig/hanzoai/models/assistant_delete_params.rbs index 710b7fb2..6008cb25 100644 --- a/sig/hanzoai/models/assistant_delete_params.rbs +++ b/sig/hanzoai/models/assistant_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assistant_delete_params end end end diff --git a/sig/hanzoai/models/assistant_list_params.rbs b/sig/hanzoai/models/assistant_list_params.rbs index 7b380a87..87e22b9d 100644 --- a/sig/hanzoai/models/assistant_list_params.rbs +++ b/sig/hanzoai/models/assistant_list_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::assistant_list_params end end end diff --git a/sig/hanzoai/models/audio/speech_create_params.rbs b/sig/hanzoai/models/audio/speech_create_params.rbs index e0a23671..347ea22a 100644 --- a/sig/hanzoai/models/audio/speech_create_params.rbs +++ b/sig/hanzoai/models/audio/speech_create_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Audio::speech_create_params end end end diff --git a/sig/hanzoai/models/audio/transcription_create_params.rbs b/sig/hanzoai/models/audio/transcription_create_params.rbs index b61a11d2..2e93c94d 100644 --- a/sig/hanzoai/models/audio/transcription_create_params.rbs +++ b/sig/hanzoai/models/audio/transcription_create_params.rbs @@ -15,8 +15,6 @@ module Hanzoai file: Pathname | StringIO | IO | Hanzoai::FilePart, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Audio::transcription_create_params end end end diff --git a/sig/hanzoai/models/azure_call_params.rbs b/sig/hanzoai/models/azure_call_params.rbs index 94ba750d..7cee35fc 100644 --- a/sig/hanzoai/models/azure_call_params.rbs +++ b/sig/hanzoai/models/azure_call_params.rbs @@ -7,8 +7,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::azure_call_params end end end diff --git a/sig/hanzoai/models/azure_create_params.rbs b/sig/hanzoai/models/azure_create_params.rbs index 983af52a..5864a200 100644 --- a/sig/hanzoai/models/azure_create_params.rbs +++ b/sig/hanzoai/models/azure_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::azure_create_params end end end diff --git a/sig/hanzoai/models/azure_delete_params.rbs b/sig/hanzoai/models/azure_delete_params.rbs index ae0a7bea..addcfa8a 100644 --- a/sig/hanzoai/models/azure_delete_params.rbs +++ b/sig/hanzoai/models/azure_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::azure_delete_params end end end diff --git a/sig/hanzoai/models/azure_patch_params.rbs b/sig/hanzoai/models/azure_patch_params.rbs index c96232ea..409a1f14 100644 --- a/sig/hanzoai/models/azure_patch_params.rbs +++ b/sig/hanzoai/models/azure_patch_params.rbs @@ -7,8 +7,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::azure_patch_params end end end diff --git a/sig/hanzoai/models/azure_update_params.rbs b/sig/hanzoai/models/azure_update_params.rbs index ff990184..3951c88b 100644 --- a/sig/hanzoai/models/azure_update_params.rbs +++ b/sig/hanzoai/models/azure_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::azure_update_params end end end diff --git a/sig/hanzoai/models/batch_cancel_with_provider_params.rbs b/sig/hanzoai/models/batch_cancel_with_provider_params.rbs index 02eb36c2..1177428e 100644 --- a/sig/hanzoai/models/batch_cancel_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_cancel_with_provider_params.rbs @@ -13,8 +13,6 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::batch_cancel_with_provider_params end end end diff --git a/sig/hanzoai/models/batch_create_params.rbs b/sig/hanzoai/models/batch_create_params.rbs index 372cbd97..2fff9984 100644 --- a/sig/hanzoai/models/batch_create_params.rbs +++ b/sig/hanzoai/models/batch_create_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::batch_create_params end end end diff --git a/sig/hanzoai/models/batch_create_with_provider_params.rbs b/sig/hanzoai/models/batch_create_with_provider_params.rbs index e725a6fc..4c729726 100644 --- a/sig/hanzoai/models/batch_create_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_create_with_provider_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::batch_create_with_provider_params end end end diff --git a/sig/hanzoai/models/batch_list_params.rbs b/sig/hanzoai/models/batch_list_params.rbs index d911d689..ddff0f69 100644 --- a/sig/hanzoai/models/batch_list_params.rbs +++ b/sig/hanzoai/models/batch_list_params.rbs @@ -20,8 +20,6 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::batch_list_params end end end diff --git a/sig/hanzoai/models/batch_list_with_provider_params.rbs b/sig/hanzoai/models/batch_list_with_provider_params.rbs index 035b14c4..90a53567 100644 --- a/sig/hanzoai/models/batch_list_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_list_with_provider_params.rbs @@ -17,8 +17,6 @@ module Hanzoai ?limit: Integer?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::batch_list_with_provider_params end end end diff --git a/sig/hanzoai/models/batch_retrieve_params.rbs b/sig/hanzoai/models/batch_retrieve_params.rbs index 374779cc..85cc09f2 100644 --- a/sig/hanzoai/models/batch_retrieve_params.rbs +++ b/sig/hanzoai/models/batch_retrieve_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::batch_retrieve_params end end end diff --git a/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs b/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs index 53b17339..b3786ae8 100644 --- a/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs @@ -13,8 +13,6 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::batch_retrieve_with_provider_params end end end diff --git a/sig/hanzoai/models/batches/cancel_cancel_params.rbs b/sig/hanzoai/models/batches/cancel_cancel_params.rbs index 3c95dd8e..a7fa046c 100644 --- a/sig/hanzoai/models/batches/cancel_cancel_params.rbs +++ b/sig/hanzoai/models/batches/cancel_cancel_params.rbs @@ -14,8 +14,6 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Batches::cancel_cancel_params end end end diff --git a/sig/hanzoai/models/bedrock_create_params.rbs b/sig/hanzoai/models/bedrock_create_params.rbs index de0ef2ff..c3bfcd97 100644 --- a/sig/hanzoai/models/bedrock_create_params.rbs +++ b/sig/hanzoai/models/bedrock_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::bedrock_create_params end end end diff --git a/sig/hanzoai/models/bedrock_delete_params.rbs b/sig/hanzoai/models/bedrock_delete_params.rbs index daee0df9..5566cbe0 100644 --- a/sig/hanzoai/models/bedrock_delete_params.rbs +++ b/sig/hanzoai/models/bedrock_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::bedrock_delete_params end end end diff --git a/sig/hanzoai/models/bedrock_patch_params.rbs b/sig/hanzoai/models/bedrock_patch_params.rbs index 6aeea2ed..b2c303fd 100644 --- a/sig/hanzoai/models/bedrock_patch_params.rbs +++ b/sig/hanzoai/models/bedrock_patch_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::bedrock_patch_params end end end diff --git a/sig/hanzoai/models/bedrock_retrieve_params.rbs b/sig/hanzoai/models/bedrock_retrieve_params.rbs index 4ec2f531..d80040be 100644 --- a/sig/hanzoai/models/bedrock_retrieve_params.rbs +++ b/sig/hanzoai/models/bedrock_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::bedrock_retrieve_params end end end diff --git a/sig/hanzoai/models/bedrock_update_params.rbs b/sig/hanzoai/models/bedrock_update_params.rbs index 03a4f4e5..5afb1b51 100644 --- a/sig/hanzoai/models/bedrock_update_params.rbs +++ b/sig/hanzoai/models/bedrock_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::bedrock_update_params end end end diff --git a/sig/hanzoai/models/block_key_request.rbs b/sig/hanzoai/models/block_key_request.rbs index 2ce7130c..514d6100 100644 --- a/sig/hanzoai/models/block_key_request.rbs +++ b/sig/hanzoai/models/block_key_request.rbs @@ -6,8 +6,6 @@ module Hanzoai attr_accessor key: String def initialize: (key: String) -> void - - def to_hash: -> Hanzoai::Models::block_key_request end end end diff --git a/sig/hanzoai/models/block_team_request.rbs b/sig/hanzoai/models/block_team_request.rbs index 9e254895..6ab3dbbc 100644 --- a/sig/hanzoai/models/block_team_request.rbs +++ b/sig/hanzoai/models/block_team_request.rbs @@ -6,8 +6,6 @@ module Hanzoai attr_accessor team_id: String def initialize: (team_id: String) -> void - - def to_hash: -> Hanzoai::Models::block_team_request end end end diff --git a/sig/hanzoai/models/block_users.rbs b/sig/hanzoai/models/block_users.rbs index 79cf8837..c55c14da 100644 --- a/sig/hanzoai/models/block_users.rbs +++ b/sig/hanzoai/models/block_users.rbs @@ -6,8 +6,6 @@ module Hanzoai attr_accessor user_ids: ::Array[String] def initialize: (user_ids: ::Array[String]) -> void - - def to_hash: -> Hanzoai::Models::block_users end end end diff --git a/sig/hanzoai/models/budget_create_params.rbs b/sig/hanzoai/models/budget_create_params.rbs index 709d77dd..f11cd84e 100644 --- a/sig/hanzoai/models/budget_create_params.rbs +++ b/sig/hanzoai/models/budget_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::budget_create_params end end end diff --git a/sig/hanzoai/models/budget_delete_params.rbs b/sig/hanzoai/models/budget_delete_params.rbs index ff470840..66124a46 100644 --- a/sig/hanzoai/models/budget_delete_params.rbs +++ b/sig/hanzoai/models/budget_delete_params.rbs @@ -13,8 +13,6 @@ module Hanzoai id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::budget_delete_params end end end diff --git a/sig/hanzoai/models/budget_info_params.rbs b/sig/hanzoai/models/budget_info_params.rbs index 1bb86ae9..633bda2c 100644 --- a/sig/hanzoai/models/budget_info_params.rbs +++ b/sig/hanzoai/models/budget_info_params.rbs @@ -13,8 +13,6 @@ module Hanzoai budgets: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::budget_info_params end end end diff --git a/sig/hanzoai/models/budget_list_params.rbs b/sig/hanzoai/models/budget_list_params.rbs index 62606a76..b398b2e0 100644 --- a/sig/hanzoai/models/budget_list_params.rbs +++ b/sig/hanzoai/models/budget_list_params.rbs @@ -7,8 +7,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::budget_list_params end end end diff --git a/sig/hanzoai/models/budget_new.rbs b/sig/hanzoai/models/budget_new.rbs index fe5fab67..42d124af 100644 --- a/sig/hanzoai/models/budget_new.rbs +++ b/sig/hanzoai/models/budget_new.rbs @@ -6,7 +6,7 @@ module Hanzoai budget_id: String?, max_budget: Float?, max_parallel_requests: Integer?, - model_max_budget: ::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget]?, + model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, rpm_limit: Integer?, soft_budget: Float?, tpm_limit: Integer? @@ -21,7 +21,7 @@ module Hanzoai attr_accessor max_parallel_requests: Integer? - attr_accessor model_max_budget: ::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget]? + attr_accessor model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]? attr_accessor rpm_limit: Integer? @@ -34,14 +34,12 @@ module Hanzoai ?budget_id: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?model_max_budget: ::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget]?, + ?model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, ?rpm_limit: Integer?, ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::budget_new - type model_max_budget = { budget_duration: String?, @@ -65,8 +63,6 @@ module Hanzoai ?rpm_limit: Integer?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::BudgetNew::model_max_budget end end end diff --git a/sig/hanzoai/models/budget_settings_params.rbs b/sig/hanzoai/models/budget_settings_params.rbs index 8b894c43..005d7534 100644 --- a/sig/hanzoai/models/budget_settings_params.rbs +++ b/sig/hanzoai/models/budget_settings_params.rbs @@ -13,8 +13,6 @@ module Hanzoai budget_id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::budget_settings_params end end end diff --git a/sig/hanzoai/models/budget_update_params.rbs b/sig/hanzoai/models/budget_update_params.rbs index be42f6aa..f39f1ddd 100644 --- a/sig/hanzoai/models/budget_update_params.rbs +++ b/sig/hanzoai/models/budget_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::budget_update_params end end end diff --git a/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs b/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs index 3afc9865..6e143901 100644 --- a/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs +++ b/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Cache::redi_retrieve_info_params end end end diff --git a/sig/hanzoai/models/cache_delete_params.rbs b/sig/hanzoai/models/cache_delete_params.rbs index 374d8e29..eb9f6f19 100644 --- a/sig/hanzoai/models/cache_delete_params.rbs +++ b/sig/hanzoai/models/cache_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cache_delete_params end end end diff --git a/sig/hanzoai/models/cache_flush_all_params.rbs b/sig/hanzoai/models/cache_flush_all_params.rbs index 9af82674..df5a1673 100644 --- a/sig/hanzoai/models/cache_flush_all_params.rbs +++ b/sig/hanzoai/models/cache_flush_all_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cache_flush_all_params end end end diff --git a/sig/hanzoai/models/cache_ping_params.rbs b/sig/hanzoai/models/cache_ping_params.rbs index 44e15bfd..f82cf73c 100644 --- a/sig/hanzoai/models/cache_ping_params.rbs +++ b/sig/hanzoai/models/cache_ping_params.rbs @@ -7,8 +7,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cache_ping_params end end end diff --git a/sig/hanzoai/models/cache_ping_response.rbs b/sig/hanzoai/models/cache_ping_response.rbs index 7ab11878..4ccf7f12 100644 --- a/sig/hanzoai/models/cache_ping_response.rbs +++ b/sig/hanzoai/models/cache_ping_response.rbs @@ -31,8 +31,6 @@ module Hanzoai ?ping_response: bool?, ?set_cache_response: String? ) -> void - - def to_hash: -> Hanzoai::Models::cache_ping_response end end end diff --git a/sig/hanzoai/models/chat/completion_create_params.rbs b/sig/hanzoai/models/chat/completion_create_params.rbs index 02a5a6a0..948dd41e 100644 --- a/sig/hanzoai/models/chat/completion_create_params.rbs +++ b/sig/hanzoai/models/chat/completion_create_params.rbs @@ -14,8 +14,6 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Chat::completion_create_params end end end diff --git a/sig/hanzoai/models/client_get_home_params.rbs b/sig/hanzoai/models/client_get_home_params.rbs index 85e3f7b1..1a97f746 100644 --- a/sig/hanzoai/models/client_get_home_params.rbs +++ b/sig/hanzoai/models/client_get_home_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::client_get_home_params end end end diff --git a/sig/hanzoai/models/cohere_create_params.rbs b/sig/hanzoai/models/cohere_create_params.rbs index 757b836d..ae8fc178 100644 --- a/sig/hanzoai/models/cohere_create_params.rbs +++ b/sig/hanzoai/models/cohere_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cohere_create_params end end end diff --git a/sig/hanzoai/models/cohere_delete_params.rbs b/sig/hanzoai/models/cohere_delete_params.rbs index 0e5de723..05ece41c 100644 --- a/sig/hanzoai/models/cohere_delete_params.rbs +++ b/sig/hanzoai/models/cohere_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cohere_delete_params end end end diff --git a/sig/hanzoai/models/cohere_modify_params.rbs b/sig/hanzoai/models/cohere_modify_params.rbs index 235b9650..a274b913 100644 --- a/sig/hanzoai/models/cohere_modify_params.rbs +++ b/sig/hanzoai/models/cohere_modify_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cohere_modify_params end end end diff --git a/sig/hanzoai/models/cohere_retrieve_params.rbs b/sig/hanzoai/models/cohere_retrieve_params.rbs index 87c29c24..5a174465 100644 --- a/sig/hanzoai/models/cohere_retrieve_params.rbs +++ b/sig/hanzoai/models/cohere_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cohere_retrieve_params end end end diff --git a/sig/hanzoai/models/cohere_update_params.rbs b/sig/hanzoai/models/cohere_update_params.rbs index 6561ba5b..3bc493e9 100644 --- a/sig/hanzoai/models/cohere_update_params.rbs +++ b/sig/hanzoai/models/cohere_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::cohere_update_params end end end diff --git a/sig/hanzoai/models/completion_create_params.rbs b/sig/hanzoai/models/completion_create_params.rbs index f9d06cbb..dce06679 100644 --- a/sig/hanzoai/models/completion_create_params.rbs +++ b/sig/hanzoai/models/completion_create_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::completion_create_params end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs index 946aab93..4579537d 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Config::pass_through_endpoint_create_params end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs index 5a80317b..82d3486a 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs @@ -14,8 +14,6 @@ module Hanzoai endpoint_id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Config::pass_through_endpoint_delete_params end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs index b46d5c0b..b0a81f60 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs @@ -14,8 +14,6 @@ module Hanzoai ?endpoint_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Config::pass_through_endpoint_list_params end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_response.rbs b/sig/hanzoai/models/config/pass_through_endpoint_response.rbs index 0ffdde4c..48571b5f 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_response.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_response.rbs @@ -2,18 +2,14 @@ module Hanzoai module Models module Config type pass_through_endpoint_response = - { - endpoints: ::Array[Hanzoai::Models::Config::PassThroughGenericEndpoint] - } + { endpoints: ::Array[Hanzoai::Config::PassThroughGenericEndpoint] } class PassThroughEndpointResponse < Hanzoai::Internal::Type::BaseModel - attr_accessor endpoints: ::Array[Hanzoai::Models::Config::PassThroughGenericEndpoint] + attr_accessor endpoints: ::Array[Hanzoai::Config::PassThroughGenericEndpoint] def initialize: ( - endpoints: ::Array[Hanzoai::Models::Config::PassThroughGenericEndpoint] + endpoints: ::Array[Hanzoai::Config::PassThroughGenericEndpoint] ) -> void - - def to_hash: -> Hanzoai::Models::Config::pass_through_endpoint_response end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs index 73c333cf..f0dcb8d4 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Config::pass_through_endpoint_update_params end end end diff --git a/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs b/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs index 25e3531a..f8842427 100644 --- a/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs +++ b/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs @@ -12,8 +12,6 @@ module Hanzoai attr_accessor target: String def initialize: (headers: top, path: String, target: String) -> void - - def to_hash: -> Hanzoai::Models::Config::pass_through_generic_endpoint end end end diff --git a/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs b/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs index ba3dc18a..0bd091f4 100644 --- a/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs +++ b/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs @@ -6,8 +6,6 @@ module Hanzoai attr_accessor api_base: String def initialize: (api_base: String) -> void - - def to_hash: -> Hanzoai::Models::configurable_clientside_params_custom_auth end end end diff --git a/sig/hanzoai/models/credential_create_params.rbs b/sig/hanzoai/models/credential_create_params.rbs index 004a5a68..eacd67ea 100644 --- a/sig/hanzoai/models/credential_create_params.rbs +++ b/sig/hanzoai/models/credential_create_params.rbs @@ -28,8 +28,6 @@ module Hanzoai ?model_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::credential_create_params end end end diff --git a/sig/hanzoai/models/credential_delete_params.rbs b/sig/hanzoai/models/credential_delete_params.rbs index c696aaa7..e536cc23 100644 --- a/sig/hanzoai/models/credential_delete_params.rbs +++ b/sig/hanzoai/models/credential_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::credential_delete_params end end end diff --git a/sig/hanzoai/models/credential_item.rbs b/sig/hanzoai/models/credential_item.rbs index afcbe75a..c83b483c 100644 --- a/sig/hanzoai/models/credential_item.rbs +++ b/sig/hanzoai/models/credential_item.rbs @@ -15,8 +15,6 @@ module Hanzoai credential_name: String, credential_values: top ) -> void - - def to_hash: -> Hanzoai::Models::credential_item end end end diff --git a/sig/hanzoai/models/credential_list_params.rbs b/sig/hanzoai/models/credential_list_params.rbs index ef17d91f..ca5a52fb 100644 --- a/sig/hanzoai/models/credential_list_params.rbs +++ b/sig/hanzoai/models/credential_list_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::credential_list_params end end end diff --git a/sig/hanzoai/models/customer_block_params.rbs b/sig/hanzoai/models/customer_block_params.rbs index a707df2b..fed8874a 100644 --- a/sig/hanzoai/models/customer_block_params.rbs +++ b/sig/hanzoai/models/customer_block_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::customer_block_params end end end diff --git a/sig/hanzoai/models/customer_create_params.rbs b/sig/hanzoai/models/customer_create_params.rbs index e2af1c54..e858d2a6 100644 --- a/sig/hanzoai/models/customer_create_params.rbs +++ b/sig/hanzoai/models/customer_create_params.rbs @@ -11,7 +11,7 @@ module Hanzoai default_model: String?, max_budget: Float?, max_parallel_requests: Integer?, - model_max_budget: ::Hash[Symbol, Hanzoai::Models::CustomerCreateParams::ModelMaxBudget]?, + model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, rpm_limit: Integer?, soft_budget: Float?, tpm_limit: Integer? @@ -42,7 +42,7 @@ module Hanzoai attr_accessor max_parallel_requests: Integer? - attr_accessor model_max_budget: ::Hash[Symbol, Hanzoai::Models::CustomerCreateParams::ModelMaxBudget]? + attr_accessor model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]? attr_accessor rpm_limit: Integer? @@ -60,15 +60,13 @@ module Hanzoai ?default_model: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?model_max_budget: ::Hash[Symbol, Hanzoai::Models::CustomerCreateParams::ModelMaxBudget]?, + ?model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, ?rpm_limit: Integer?, ?soft_budget: Float?, ?tpm_limit: Integer?, ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::customer_create_params - type allowed_model_region = :eu | :us module AllowedModelRegion @@ -103,8 +101,6 @@ module Hanzoai ?rpm_limit: Integer?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::CustomerCreateParams::model_max_budget end end end diff --git a/sig/hanzoai/models/customer_delete_params.rbs b/sig/hanzoai/models/customer_delete_params.rbs index aa9cc991..4c078c59 100644 --- a/sig/hanzoai/models/customer_delete_params.rbs +++ b/sig/hanzoai/models/customer_delete_params.rbs @@ -14,8 +14,6 @@ module Hanzoai user_ids: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::customer_delete_params end end end diff --git a/sig/hanzoai/models/customer_list_params.rbs b/sig/hanzoai/models/customer_list_params.rbs index 3b4772c2..a998ff78 100644 --- a/sig/hanzoai/models/customer_list_params.rbs +++ b/sig/hanzoai/models/customer_list_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::customer_list_params end end end diff --git a/sig/hanzoai/models/customer_list_response.rbs b/sig/hanzoai/models/customer_list_response.rbs index 8b78dd37..4211d00e 100644 --- a/sig/hanzoai/models/customer_list_response.rbs +++ b/sig/hanzoai/models/customer_list_response.rbs @@ -38,8 +38,6 @@ module Hanzoai ?spend: Float ) -> void - def to_hash: -> Hanzoai::Models::customer_list_response_item - type allowed_model_region = :eu | :us module AllowedModelRegion @@ -86,8 +84,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::CustomerListResponseItem::llm_budget_table end end diff --git a/sig/hanzoai/models/customer_retrieve_info_params.rbs b/sig/hanzoai/models/customer_retrieve_info_params.rbs index d605054d..e63f3f52 100644 --- a/sig/hanzoai/models/customer_retrieve_info_params.rbs +++ b/sig/hanzoai/models/customer_retrieve_info_params.rbs @@ -13,8 +13,6 @@ module Hanzoai end_user_id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::customer_retrieve_info_params end end end diff --git a/sig/hanzoai/models/customer_retrieve_info_response.rbs b/sig/hanzoai/models/customer_retrieve_info_response.rbs index 1c41f18b..dc689065 100644 --- a/sig/hanzoai/models/customer_retrieve_info_response.rbs +++ b/sig/hanzoai/models/customer_retrieve_info_response.rbs @@ -38,8 +38,6 @@ module Hanzoai ?spend: Float ) -> void - def to_hash: -> Hanzoai::Models::customer_retrieve_info_response - type allowed_model_region = :eu | :us module AllowedModelRegion @@ -86,8 +84,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::CustomerRetrieveInfoResponse::llm_budget_table end end end diff --git a/sig/hanzoai/models/customer_unblock_params.rbs b/sig/hanzoai/models/customer_unblock_params.rbs index b0e3225b..40108a04 100644 --- a/sig/hanzoai/models/customer_unblock_params.rbs +++ b/sig/hanzoai/models/customer_unblock_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::customer_unblock_params end end end diff --git a/sig/hanzoai/models/customer_update_params.rbs b/sig/hanzoai/models/customer_update_params.rbs index 48370d97..f570938a 100644 --- a/sig/hanzoai/models/customer_update_params.rbs +++ b/sig/hanzoai/models/customer_update_params.rbs @@ -43,8 +43,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::customer_update_params - type allowed_model_region = :eu | :us module AllowedModelRegion diff --git a/sig/hanzoai/models/delete_create_allowed_ip_params.rbs b/sig/hanzoai/models/delete_create_allowed_ip_params.rbs index e3cd1b3e..5efa7f90 100644 --- a/sig/hanzoai/models/delete_create_allowed_ip_params.rbs +++ b/sig/hanzoai/models/delete_create_allowed_ip_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::delete_create_allowed_ip_params end end end diff --git a/sig/hanzoai/models/embedding_create_params.rbs b/sig/hanzoai/models/embedding_create_params.rbs index 5cd11467..e836e414 100644 --- a/sig/hanzoai/models/embedding_create_params.rbs +++ b/sig/hanzoai/models/embedding_create_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::embedding_create_params end end end diff --git a/sig/hanzoai/models/engine_complete_params.rbs b/sig/hanzoai/models/engine_complete_params.rbs index afd2be72..2dc3e0ff 100644 --- a/sig/hanzoai/models/engine_complete_params.rbs +++ b/sig/hanzoai/models/engine_complete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::engine_complete_params end end end diff --git a/sig/hanzoai/models/engine_embed_params.rbs b/sig/hanzoai/models/engine_embed_params.rbs index 511d711c..8026ac5c 100644 --- a/sig/hanzoai/models/engine_embed_params.rbs +++ b/sig/hanzoai/models/engine_embed_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::engine_embed_params end end end diff --git a/sig/hanzoai/models/engines/chat_complete_params.rbs b/sig/hanzoai/models/engines/chat_complete_params.rbs index d670ab67..21fc656d 100644 --- a/sig/hanzoai/models/engines/chat_complete_params.rbs +++ b/sig/hanzoai/models/engines/chat_complete_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Engines::chat_complete_params end end end diff --git a/sig/hanzoai/models/eu_assemblyai_create_params.rbs b/sig/hanzoai/models/eu_assemblyai_create_params.rbs index c69c147b..6627e231 100644 --- a/sig/hanzoai/models/eu_assemblyai_create_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::eu_assemblyai_create_params end end end diff --git a/sig/hanzoai/models/eu_assemblyai_delete_params.rbs b/sig/hanzoai/models/eu_assemblyai_delete_params.rbs index 7cba95e6..95bd2981 100644 --- a/sig/hanzoai/models/eu_assemblyai_delete_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::eu_assemblyai_delete_params end end end diff --git a/sig/hanzoai/models/eu_assemblyai_patch_params.rbs b/sig/hanzoai/models/eu_assemblyai_patch_params.rbs index 61eed0a2..77b85532 100644 --- a/sig/hanzoai/models/eu_assemblyai_patch_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_patch_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::eu_assemblyai_patch_params end end end diff --git a/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs b/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs index 79f6e2a3..eff44a4c 100644 --- a/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::eu_assemblyai_retrieve_params end end end diff --git a/sig/hanzoai/models/eu_assemblyai_update_params.rbs b/sig/hanzoai/models/eu_assemblyai_update_params.rbs index 84cb42cf..91c0f049 100644 --- a/sig/hanzoai/models/eu_assemblyai_update_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::eu_assemblyai_update_params end end end diff --git a/sig/hanzoai/models/file_create_params.rbs b/sig/hanzoai/models/file_create_params.rbs index 4d52d579..affb1325 100644 --- a/sig/hanzoai/models/file_create_params.rbs +++ b/sig/hanzoai/models/file_create_params.rbs @@ -26,8 +26,6 @@ module Hanzoai ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::file_create_params end end end diff --git a/sig/hanzoai/models/file_delete_params.rbs b/sig/hanzoai/models/file_delete_params.rbs index 11227870..f7f76f69 100644 --- a/sig/hanzoai/models/file_delete_params.rbs +++ b/sig/hanzoai/models/file_delete_params.rbs @@ -13,8 +13,6 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::file_delete_params end end end diff --git a/sig/hanzoai/models/file_list_params.rbs b/sig/hanzoai/models/file_list_params.rbs index 76c08b76..f87ea356 100644 --- a/sig/hanzoai/models/file_list_params.rbs +++ b/sig/hanzoai/models/file_list_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?purpose: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::file_list_params end end end diff --git a/sig/hanzoai/models/file_retrieve_params.rbs b/sig/hanzoai/models/file_retrieve_params.rbs index cf18187c..6e56d62f 100644 --- a/sig/hanzoai/models/file_retrieve_params.rbs +++ b/sig/hanzoai/models/file_retrieve_params.rbs @@ -13,8 +13,6 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::file_retrieve_params end end end diff --git a/sig/hanzoai/models/files/content_retrieve_params.rbs b/sig/hanzoai/models/files/content_retrieve_params.rbs index 2c51991f..6f5e10a4 100644 --- a/sig/hanzoai/models/files/content_retrieve_params.rbs +++ b/sig/hanzoai/models/files/content_retrieve_params.rbs @@ -14,8 +14,6 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Files::content_retrieve_params end end end diff --git a/sig/hanzoai/models/fine_tuning/job_create_params.rbs b/sig/hanzoai/models/fine_tuning/job_create_params.rbs index 3cfc801f..65e94a67 100644 --- a/sig/hanzoai/models/fine_tuning/job_create_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_create_params.rbs @@ -6,7 +6,7 @@ module Hanzoai custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, model: String, training_file: String, - hyperparameters: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters?, + hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, integrations: ::Array[String]?, seed: Integer?, suffix: String?, @@ -24,7 +24,7 @@ module Hanzoai attr_accessor training_file: String - attr_accessor hyperparameters: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters? + attr_accessor hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters? attr_accessor integrations: ::Array[String]? @@ -38,7 +38,7 @@ module Hanzoai custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, model: String, training_file: String, - ?hyperparameters: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters?, + ?hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, ?integrations: ::Array[String]?, ?seed: Integer?, ?suffix: String?, @@ -46,8 +46,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::FineTuning::job_create_params - type custom_llm_provider = :openai | :azure | :vertex_ai module CustomLlmProvider @@ -62,32 +60,30 @@ module Hanzoai type hyperparameters = { - batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, - learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, - n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + batch_size: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size?, + learning_rate_multiplier: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, + n_epochs: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs? } class Hyperparameters < Hanzoai::Internal::Type::BaseModel - attr_accessor batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size? + attr_accessor batch_size: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size? - attr_accessor learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier? + attr_accessor learning_rate_multiplier: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier? - attr_accessor n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + attr_accessor n_epochs: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs? def initialize: ( - ?batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, - ?learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, - ?n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + ?batch_size: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size?, + ?learning_rate_multiplier: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, + ?n_epochs: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs? ) -> void - def to_hash: -> Hanzoai::Models::FineTuning::JobCreateParams::hyperparameters - type batch_size = String | Integer module BatchSize extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Integer] + def self?.variants: -> ::Array[Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size] end type learning_rate_multiplier = String | Float @@ -95,7 +91,7 @@ module Hanzoai module LearningRateMultiplier extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Float] + def self?.variants: -> ::Array[Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier] end type n_epochs = String | Integer @@ -103,7 +99,7 @@ module Hanzoai module NEpochs extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Integer] + def self?.variants: -> ::Array[Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs] end end end diff --git a/sig/hanzoai/models/fine_tuning/job_list_params.rbs b/sig/hanzoai/models/fine_tuning/job_list_params.rbs index d076d3e8..3bf34d8b 100644 --- a/sig/hanzoai/models/fine_tuning/job_list_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_list_params.rbs @@ -26,8 +26,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::FineTuning::job_list_params - type custom_llm_provider = :openai | :azure module CustomLlmProvider diff --git a/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs b/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs index c7281ede..9b422c7d 100644 --- a/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs @@ -18,8 +18,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::FineTuning::job_retrieve_params - type custom_llm_provider = :openai | :azure module CustomLlmProvider diff --git a/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs b/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs index 0396d3bd..91cd8023 100644 --- a/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs +++ b/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs @@ -10,8 +10,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::FineTuning::Jobs::cancel_create_params end end end diff --git a/sig/hanzoai/models/gemini_create_params.rbs b/sig/hanzoai/models/gemini_create_params.rbs index 191e54b2..35eb12cd 100644 --- a/sig/hanzoai/models/gemini_create_params.rbs +++ b/sig/hanzoai/models/gemini_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::gemini_create_params end end end diff --git a/sig/hanzoai/models/gemini_delete_params.rbs b/sig/hanzoai/models/gemini_delete_params.rbs index 89a3b0d8..c5c01e06 100644 --- a/sig/hanzoai/models/gemini_delete_params.rbs +++ b/sig/hanzoai/models/gemini_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::gemini_delete_params end end end diff --git a/sig/hanzoai/models/gemini_patch_params.rbs b/sig/hanzoai/models/gemini_patch_params.rbs index e576d6d1..eea624de 100644 --- a/sig/hanzoai/models/gemini_patch_params.rbs +++ b/sig/hanzoai/models/gemini_patch_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::gemini_patch_params end end end diff --git a/sig/hanzoai/models/gemini_retrieve_params.rbs b/sig/hanzoai/models/gemini_retrieve_params.rbs index a1ef803c..b602569c 100644 --- a/sig/hanzoai/models/gemini_retrieve_params.rbs +++ b/sig/hanzoai/models/gemini_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::gemini_retrieve_params end end end diff --git a/sig/hanzoai/models/gemini_update_params.rbs b/sig/hanzoai/models/gemini_update_params.rbs index e7fd9ec4..e689eab3 100644 --- a/sig/hanzoai/models/gemini_update_params.rbs +++ b/sig/hanzoai/models/gemini_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::gemini_update_params end end end diff --git a/sig/hanzoai/models/generate_key_response.rbs b/sig/hanzoai/models/generate_key_response.rbs index abd1ab7a..50e90366 100644 --- a/sig/hanzoai/models/generate_key_response.rbs +++ b/sig/hanzoai/models/generate_key_response.rbs @@ -137,8 +137,6 @@ module Hanzoai ?updated_by: String?, ?user_id: String? ) -> void - - def to_hash: -> Hanzoai::Models::generate_key_response end end end diff --git a/sig/hanzoai/models/global/spend_list_tags_params.rbs b/sig/hanzoai/models/global/spend_list_tags_params.rbs index b5faf8bd..e6796529 100644 --- a/sig/hanzoai/models/global/spend_list_tags_params.rbs +++ b/sig/hanzoai/models/global/spend_list_tags_params.rbs @@ -21,8 +21,6 @@ module Hanzoai ?tags: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Global::spend_list_tags_params end end end diff --git a/sig/hanzoai/models/global/spend_list_tags_response.rbs b/sig/hanzoai/models/global/spend_list_tags_response.rbs index 3773d6f2..10b1c2c8 100644 --- a/sig/hanzoai/models/global/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/global/spend_list_tags_response.rbs @@ -89,14 +89,12 @@ module Hanzoai ?user: String? ) -> void - def to_hash: -> Hanzoai::Models::Global::spend_list_tags_response_item - type end_time = String | Time module EndTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem::end_time] end type messages = String | ::Array[top] | top @@ -104,7 +102,7 @@ module Hanzoai module Messages extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -114,7 +112,7 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -124,7 +122,7 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem::start_time] end end diff --git a/sig/hanzoai/models/global/spend_reset_params.rbs b/sig/hanzoai/models/global/spend_reset_params.rbs index 9905f8d0..3957761b 100644 --- a/sig/hanzoai/models/global/spend_reset_params.rbs +++ b/sig/hanzoai/models/global/spend_reset_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Global::spend_reset_params end end end diff --git a/sig/hanzoai/models/global/spend_retrieve_report_params.rbs b/sig/hanzoai/models/global/spend_retrieve_report_params.rbs index 6c4d88bf..3e0b11ed 100644 --- a/sig/hanzoai/models/global/spend_retrieve_report_params.rbs +++ b/sig/hanzoai/models/global/spend_retrieve_report_params.rbs @@ -42,8 +42,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::Global::spend_retrieve_report_params - type group_by = :team | :customer | :api_key module GroupBy diff --git a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs index 9fae7479..8674bffa 100644 --- a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs +++ b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs @@ -89,14 +89,12 @@ module Hanzoai ?user: String? ) -> void - def to_hash: -> Hanzoai::Models::Global::spend_retrieve_report_response_item - type end_time = String | Time module EndTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem::end_time] end type messages = String | ::Array[top] | top @@ -104,7 +102,7 @@ module Hanzoai module Messages extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -114,7 +112,7 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -124,7 +122,7 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem::start_time] end end diff --git a/sig/hanzoai/models/guardrail_list_params.rbs b/sig/hanzoai/models/guardrail_list_params.rbs index 51fcfbe2..555d86b0 100644 --- a/sig/hanzoai/models/guardrail_list_params.rbs +++ b/sig/hanzoai/models/guardrail_list_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::guardrail_list_params end end end diff --git a/sig/hanzoai/models/guardrail_list_response.rbs b/sig/hanzoai/models/guardrail_list_response.rbs index 85cabb9d..4eaf4e8e 100644 --- a/sig/hanzoai/models/guardrail_list_response.rbs +++ b/sig/hanzoai/models/guardrail_list_response.rbs @@ -10,8 +10,6 @@ module Hanzoai guardrails: ::Array[Hanzoai::Models::GuardrailListResponse::Guardrail] ) -> void - def to_hash: -> Hanzoai::Models::guardrail_list_response - type guardrail = { guardrail_info: top?, @@ -32,8 +30,6 @@ module Hanzoai llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams ) -> void - def to_hash: -> Hanzoai::Models::GuardrailListResponse::guardrail - type llm_params = { guardrail: String, @@ -56,14 +52,12 @@ module Hanzoai ?default_on: bool ) -> void - def to_hash: -> Hanzoai::Models::GuardrailListResponse::Guardrail::llm_params - type mode = String | ::Array[String] module Mode extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[String]] + def self?.variants: -> ::Array[Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::mode] StringArray: Hanzoai::Internal::Type::Converter end diff --git a/sig/hanzoai/models/health_check_all_params.rbs b/sig/hanzoai/models/health_check_all_params.rbs index 9aa72df2..8986c7d3 100644 --- a/sig/hanzoai/models/health_check_all_params.rbs +++ b/sig/hanzoai/models/health_check_all_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::health_check_all_params end end end diff --git a/sig/hanzoai/models/health_check_liveliness_params.rbs b/sig/hanzoai/models/health_check_liveliness_params.rbs index 6ca458c8..0d6eb44e 100644 --- a/sig/hanzoai/models/health_check_liveliness_params.rbs +++ b/sig/hanzoai/models/health_check_liveliness_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::health_check_liveliness_params end end end diff --git a/sig/hanzoai/models/health_check_liveness_params.rbs b/sig/hanzoai/models/health_check_liveness_params.rbs index a95d52f0..0511785b 100644 --- a/sig/hanzoai/models/health_check_liveness_params.rbs +++ b/sig/hanzoai/models/health_check_liveness_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::health_check_liveness_params end end end diff --git a/sig/hanzoai/models/health_check_readiness_params.rbs b/sig/hanzoai/models/health_check_readiness_params.rbs index 8c719c6a..2c91e728 100644 --- a/sig/hanzoai/models/health_check_readiness_params.rbs +++ b/sig/hanzoai/models/health_check_readiness_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::health_check_readiness_params end end end diff --git a/sig/hanzoai/models/health_check_services_params.rbs b/sig/hanzoai/models/health_check_services_params.rbs index 6c170147..aa3afbb6 100644 --- a/sig/hanzoai/models/health_check_services_params.rbs +++ b/sig/hanzoai/models/health_check_services_params.rbs @@ -15,8 +15,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::health_check_services_params - type service = :slack_budget_alerts | :langfuse @@ -31,14 +29,7 @@ module Hanzoai module Service extend Hanzoai::Internal::Type::Union - def self?.variants: -> [(:slack_budget_alerts - | :langfuse - | :slack - | :openmeter - | :webhook - | :email - | :braintrust - | :datadog), String] + def self?.variants: -> ::Array[Hanzoai::Models::HealthCheckServicesParams::service] SLACK_BUDGET_ALERTS: :slack_budget_alerts LANGFUSE: :langfuse diff --git a/sig/hanzoai/models/images/generation_create_params.rbs b/sig/hanzoai/models/images/generation_create_params.rbs index 8e4b9097..83a9f092 100644 --- a/sig/hanzoai/models/images/generation_create_params.rbs +++ b/sig/hanzoai/models/images/generation_create_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Images::generation_create_params end end end diff --git a/sig/hanzoai/models/ip_address.rbs b/sig/hanzoai/models/ip_address.rbs index 6220b915..ee73e743 100644 --- a/sig/hanzoai/models/ip_address.rbs +++ b/sig/hanzoai/models/ip_address.rbs @@ -6,8 +6,6 @@ module Hanzoai attr_accessor ip: String def initialize: (ip: String) -> void - - def to_hash: -> Hanzoai::Models::ip_address end end end diff --git a/sig/hanzoai/models/key/regenerate_key_request.rbs b/sig/hanzoai/models/key/regenerate_key_request.rbs index 8b93956e..1061bee1 100644 --- a/sig/hanzoai/models/key/regenerate_key_request.rbs +++ b/sig/hanzoai/models/key/regenerate_key_request.rbs @@ -120,8 +120,6 @@ module Hanzoai ?tpm_limit: Integer?, ?user_id: String? ) -> void - - def to_hash: -> Hanzoai::Models::Key::regenerate_key_request end end end diff --git a/sig/hanzoai/models/key_block_params.rbs b/sig/hanzoai/models/key_block_params.rbs index 6fb37bbe..c60496b8 100644 --- a/sig/hanzoai/models/key_block_params.rbs +++ b/sig/hanzoai/models/key_block_params.rbs @@ -15,8 +15,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_block_params end end end diff --git a/sig/hanzoai/models/key_block_response.rbs b/sig/hanzoai/models/key_block_response.rbs index 3e169b4e..9e68b738 100644 --- a/sig/hanzoai/models/key_block_response.rbs +++ b/sig/hanzoai/models/key_block_response.rbs @@ -142,14 +142,12 @@ module Hanzoai ?user_id: String? ) -> void - def to_hash: -> Hanzoai::Models::key_block_response - type expires = String | Time module Expires extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::KeyBlockResponse::expires] end end end diff --git a/sig/hanzoai/models/key_check_health_params.rbs b/sig/hanzoai/models/key_check_health_params.rbs index 1a4c783c..6dfdbf95 100644 --- a/sig/hanzoai/models/key_check_health_params.rbs +++ b/sig/hanzoai/models/key_check_health_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::key_check_health_params end end end diff --git a/sig/hanzoai/models/key_check_health_response.rbs b/sig/hanzoai/models/key_check_health_response.rbs index 41d6406a..3998c2cc 100644 --- a/sig/hanzoai/models/key_check_health_response.rbs +++ b/sig/hanzoai/models/key_check_health_response.rbs @@ -20,8 +20,6 @@ module Hanzoai ?logging_callbacks: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks? ) -> void - def to_hash: -> Hanzoai::Models::key_check_health_response - type key = :healthy | :unhealthy module Key @@ -59,8 +57,6 @@ module Hanzoai ?status: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::status ) -> void - def to_hash: -> Hanzoai::Models::KeyCheckHealthResponse::logging_callbacks - type status = :healthy | :unhealthy module Status diff --git a/sig/hanzoai/models/key_delete_params.rbs b/sig/hanzoai/models/key_delete_params.rbs index 30d6f16b..7854f200 100644 --- a/sig/hanzoai/models/key_delete_params.rbs +++ b/sig/hanzoai/models/key_delete_params.rbs @@ -26,8 +26,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_delete_params end end end diff --git a/sig/hanzoai/models/key_generate_params.rbs b/sig/hanzoai/models/key_generate_params.rbs index b57c9abf..56fc9f96 100644 --- a/sig/hanzoai/models/key_generate_params.rbs +++ b/sig/hanzoai/models/key_generate_params.rbs @@ -126,8 +126,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_generate_params end end end diff --git a/sig/hanzoai/models/key_list_params.rbs b/sig/hanzoai/models/key_list_params.rbs index 3d5e4b1d..c3e4db01 100644 --- a/sig/hanzoai/models/key_list_params.rbs +++ b/sig/hanzoai/models/key_list_params.rbs @@ -52,8 +52,6 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_list_params end end end diff --git a/sig/hanzoai/models/key_list_response.rbs b/sig/hanzoai/models/key_list_response.rbs index 0d8095f7..f3adbf17 100644 --- a/sig/hanzoai/models/key_list_response.rbs +++ b/sig/hanzoai/models/key_list_response.rbs @@ -28,8 +28,6 @@ module Hanzoai ?total_pages: Integer? ) -> void - def to_hash: -> Hanzoai::Models::key_list_response - type key = String | Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth module Key @@ -75,7 +73,7 @@ module Hanzoai team_blocked: bool, team_id: String?, team_max_budget: Float?, - team_member: Hanzoai::Models::Member?, + team_member: Hanzoai::Member?, team_member_spend: Float?, team_metadata: top?, team_model_aliases: top?, @@ -193,7 +191,7 @@ module Hanzoai attr_accessor team_max_budget: Float? - attr_accessor team_member: Hanzoai::Models::Member? + attr_accessor team_member: Hanzoai::Member? attr_accessor team_member_spend: Float? @@ -268,7 +266,7 @@ module Hanzoai ?team_blocked: bool, ?team_id: String?, ?team_max_budget: Float?, - ?team_member: Hanzoai::Models::Member?, + ?team_member: Hanzoai::Member?, ?team_member_spend: Float?, ?team_metadata: top?, ?team_model_aliases: top?, @@ -287,8 +285,6 @@ module Hanzoai ?user_tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::KeyListResponse::Key::user_api_key_auth - type allowed_model_region = :eu | :us module AllowedModelRegion @@ -305,7 +301,7 @@ module Hanzoai module Expires extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::expires] end type user_role = @@ -332,7 +328,7 @@ module Hanzoai end end - def self?.variants: -> [String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth] + def self?.variants: -> ::Array[Hanzoai::Models::KeyListResponse::key] end end end diff --git a/sig/hanzoai/models/key_regenerate_by_key_params.rbs b/sig/hanzoai/models/key_regenerate_by_key_params.rbs index d2c51d6d..29b90a4d 100644 --- a/sig/hanzoai/models/key_regenerate_by_key_params.rbs +++ b/sig/hanzoai/models/key_regenerate_by_key_params.rbs @@ -15,8 +15,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_regenerate_by_key_params end end end diff --git a/sig/hanzoai/models/key_retrieve_info_params.rbs b/sig/hanzoai/models/key_retrieve_info_params.rbs index c74c1886..9190f6a0 100644 --- a/sig/hanzoai/models/key_retrieve_info_params.rbs +++ b/sig/hanzoai/models/key_retrieve_info_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?key: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_retrieve_info_params end end end diff --git a/sig/hanzoai/models/key_unblock_params.rbs b/sig/hanzoai/models/key_unblock_params.rbs index f2fdc6b1..83f28c87 100644 --- a/sig/hanzoai/models/key_unblock_params.rbs +++ b/sig/hanzoai/models/key_unblock_params.rbs @@ -15,8 +15,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_unblock_params end end end diff --git a/sig/hanzoai/models/key_update_params.rbs b/sig/hanzoai/models/key_update_params.rbs index a5559503..0709232e 100644 --- a/sig/hanzoai/models/key_update_params.rbs +++ b/sig/hanzoai/models/key_update_params.rbs @@ -126,8 +126,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::key_update_params end end end diff --git a/sig/hanzoai/models/langfuse_create_params.rbs b/sig/hanzoai/models/langfuse_create_params.rbs index ce44529b..08ea7933 100644 --- a/sig/hanzoai/models/langfuse_create_params.rbs +++ b/sig/hanzoai/models/langfuse_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::langfuse_create_params end end end diff --git a/sig/hanzoai/models/langfuse_delete_params.rbs b/sig/hanzoai/models/langfuse_delete_params.rbs index b20db106..cb626a3b 100644 --- a/sig/hanzoai/models/langfuse_delete_params.rbs +++ b/sig/hanzoai/models/langfuse_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::langfuse_delete_params end end end diff --git a/sig/hanzoai/models/langfuse_patch_params.rbs b/sig/hanzoai/models/langfuse_patch_params.rbs index 72b8bdcd..f0d0096c 100644 --- a/sig/hanzoai/models/langfuse_patch_params.rbs +++ b/sig/hanzoai/models/langfuse_patch_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::langfuse_patch_params end end end diff --git a/sig/hanzoai/models/langfuse_retrieve_params.rbs b/sig/hanzoai/models/langfuse_retrieve_params.rbs index f1b6561a..fb309098 100644 --- a/sig/hanzoai/models/langfuse_retrieve_params.rbs +++ b/sig/hanzoai/models/langfuse_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::langfuse_retrieve_params end end end diff --git a/sig/hanzoai/models/langfuse_update_params.rbs b/sig/hanzoai/models/langfuse_update_params.rbs index 2e816114..6a8df7f7 100644 --- a/sig/hanzoai/models/langfuse_update_params.rbs +++ b/sig/hanzoai/models/langfuse_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::langfuse_update_params end end end diff --git a/sig/hanzoai/models/member.rbs b/sig/hanzoai/models/member.rbs index 00e241fb..13a7c261 100644 --- a/sig/hanzoai/models/member.rbs +++ b/sig/hanzoai/models/member.rbs @@ -1,27 +1,21 @@ module Hanzoai module Models type member = - { - role: Hanzoai::Models::Member::role, - user_email: String?, - user_id: String? - } + { role: Hanzoai::Member::role, user_email: String?, user_id: String? } class Member < Hanzoai::Internal::Type::BaseModel - attr_accessor role: Hanzoai::Models::Member::role + attr_accessor role: Hanzoai::Member::role attr_accessor user_email: String? attr_accessor user_id: String? def initialize: ( - role: Hanzoai::Models::Member::role, + role: Hanzoai::Member::role, ?user_email: String?, ?user_id: String? ) -> void - def to_hash: -> Hanzoai::Models::member - type role = :admin | :user module Role @@ -30,7 +24,7 @@ module Hanzoai ADMIN: :admin USER: :user - def self?.values: -> ::Array[Hanzoai::Models::Member::role] + def self?.values: -> ::Array[Hanzoai::Member::role] end end end diff --git a/sig/hanzoai/models/model/info_list_params.rbs b/sig/hanzoai/models/model/info_list_params.rbs index a64492a2..c583a6c6 100644 --- a/sig/hanzoai/models/model/info_list_params.rbs +++ b/sig/hanzoai/models/model/info_list_params.rbs @@ -14,8 +14,6 @@ module Hanzoai ?llm_model_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Model::info_list_params end end end diff --git a/sig/hanzoai/models/model/update_deployment.rbs b/sig/hanzoai/models/model/update_deployment.rbs index 50f86d94..3588db0c 100644 --- a/sig/hanzoai/models/model/update_deployment.rbs +++ b/sig/hanzoai/models/model/update_deployment.rbs @@ -3,26 +3,24 @@ module Hanzoai module Model type update_deployment = { - llm_params: Hanzoai::Models::Model::UpdateDeployment::LlmParams?, - model_info: Hanzoai::Models::ModelInfo?, + llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + model_info: Hanzoai::ModelInfo?, model_name: String? } class UpdateDeployment < Hanzoai::Internal::Type::BaseModel - attr_accessor llm_params: Hanzoai::Models::Model::UpdateDeployment::LlmParams? + attr_accessor llm_params: Hanzoai::Model::UpdateDeployment::LlmParams? - attr_accessor model_info: Hanzoai::Models::ModelInfo? + attr_accessor model_info: Hanzoai::ModelInfo? attr_accessor model_name: String? def initialize: ( - ?llm_params: Hanzoai::Models::Model::UpdateDeployment::LlmParams?, - ?model_info: Hanzoai::Models::ModelInfo?, + ?llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + ?model_info: Hanzoai::ModelInfo?, ?model_name: String? ) -> void - def to_hash: -> Hanzoai::Models::Model::update_deployment - type llm_params = { api_base: String?, @@ -32,7 +30,7 @@ module Hanzoai aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + configurable_clientside_auth_params: ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, input_cost_per_second: Float?, input_cost_per_token: Float?, @@ -48,11 +46,11 @@ module Hanzoai output_cost_per_token: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, - timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, + stream_timeout: Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout?, + timeout: Hanzoai::Model::UpdateDeployment::LlmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, + vertex_credentials: Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? @@ -73,7 +71,7 @@ module Hanzoai attr_accessor budget_duration: String? - attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]? + attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]? attr_accessor custom_llm_provider: String? @@ -105,15 +103,15 @@ module Hanzoai attr_accessor rpm: Integer? - attr_accessor stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout? + attr_accessor stream_timeout: Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout? - attr_accessor timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout? + attr_accessor timeout: Hanzoai::Model::UpdateDeployment::LlmParams::timeout? attr_accessor tpm: Integer? attr_accessor use_in_pass_through: bool? - attr_accessor vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials? + attr_accessor vertex_credentials: Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials? attr_accessor vertex_location: String? @@ -129,7 +127,7 @@ module Hanzoai ?aws_region_name: String?, ?aws_secret_access_key: String?, ?budget_duration: String?, - ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + ?configurable_clientside_auth_params: ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, ?custom_llm_provider: String?, ?input_cost_per_second: Float?, ?input_cost_per_token: Float?, @@ -145,25 +143,23 @@ module Hanzoai ?output_cost_per_token: Float?, ?region_name: String?, ?rpm: Integer?, - ?stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, - ?timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, + ?stream_timeout: Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout?, + ?timeout: Hanzoai::Model::UpdateDeployment::LlmParams::timeout?, ?tpm: Integer?, ?use_in_pass_through: bool?, - ?vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, + ?vertex_credentials: Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials?, ?vertex_location: String?, ?vertex_project: String?, ?watsonx_region_name: String? ) -> void - def to_hash: -> Hanzoai::Models::Model::UpdateDeployment::llm_params - type configurable_clientside_auth_param = - String | Hanzoai::Models::ConfigurableClientsideParamsCustomAuth + String | Hanzoai::ConfigurableClientsideParamsCustomAuth module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth] + def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param] end type stream_timeout = Float | String @@ -171,7 +167,7 @@ module Hanzoai module StreamTimeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> [Float, String] + def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout] end type timeout = Float | String @@ -179,7 +175,7 @@ module Hanzoai module Timeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> [Float, String] + def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::timeout] end type vertex_credentials = top | String @@ -187,7 +183,7 @@ module Hanzoai module VertexCredentials extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials] end end end diff --git a/sig/hanzoai/models/model/update_full_params.rbs b/sig/hanzoai/models/model/update_full_params.rbs index b13e3d35..4ca0ed84 100644 --- a/sig/hanzoai/models/model/update_full_params.rbs +++ b/sig/hanzoai/models/model/update_full_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Model::update_full_params end end end diff --git a/sig/hanzoai/models/model/update_partial_params.rbs b/sig/hanzoai/models/model/update_partial_params.rbs index 92b63ba4..15da587b 100644 --- a/sig/hanzoai/models/model/update_partial_params.rbs +++ b/sig/hanzoai/models/model/update_partial_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Model::update_partial_params end end end diff --git a/sig/hanzoai/models/model_create_params.rbs b/sig/hanzoai/models/model_create_params.rbs index 2843c9ed..c004c14d 100644 --- a/sig/hanzoai/models/model_create_params.rbs +++ b/sig/hanzoai/models/model_create_params.rbs @@ -2,8 +2,8 @@ module Hanzoai module Models type model_create_params = { - llm_params: Hanzoai::Models::ModelCreateParams::LlmParams, - model_info: Hanzoai::Models::ModelInfo, + llm_params: Hanzoai::ModelCreateParams::LlmParams, + model_info: Hanzoai::ModelInfo, model_name: String } & Hanzoai::Internal::Type::request_parameters @@ -12,21 +12,19 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor llm_params: Hanzoai::Models::ModelCreateParams::LlmParams + attr_accessor llm_params: Hanzoai::ModelCreateParams::LlmParams - attr_accessor model_info: Hanzoai::Models::ModelInfo + attr_accessor model_info: Hanzoai::ModelInfo attr_accessor model_name: String def initialize: ( - llm_params: Hanzoai::Models::ModelCreateParams::LlmParams, - model_info: Hanzoai::Models::ModelInfo, + llm_params: Hanzoai::ModelCreateParams::LlmParams, + model_info: Hanzoai::ModelInfo, model_name: String, ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::model_create_params - type llm_params = { model: String, @@ -37,7 +35,7 @@ module Hanzoai aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + configurable_clientside_auth_params: ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, input_cost_per_second: Float?, input_cost_per_token: Float?, @@ -52,11 +50,11 @@ module Hanzoai output_cost_per_token: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, - timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, + stream_timeout: Hanzoai::ModelCreateParams::LlmParams::stream_timeout?, + timeout: Hanzoai::ModelCreateParams::LlmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, + vertex_credentials: Hanzoai::ModelCreateParams::LlmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? @@ -79,7 +77,7 @@ module Hanzoai attr_accessor budget_duration: String? - attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]? + attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param]? attr_accessor custom_llm_provider: String? @@ -109,15 +107,15 @@ module Hanzoai attr_accessor rpm: Integer? - attr_accessor stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout? + attr_accessor stream_timeout: Hanzoai::ModelCreateParams::LlmParams::stream_timeout? - attr_accessor timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout? + attr_accessor timeout: Hanzoai::ModelCreateParams::LlmParams::timeout? attr_accessor tpm: Integer? attr_accessor use_in_pass_through: bool? - attr_accessor vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials? + attr_accessor vertex_credentials: Hanzoai::ModelCreateParams::LlmParams::vertex_credentials? attr_accessor vertex_location: String? @@ -134,7 +132,7 @@ module Hanzoai ?aws_region_name: String?, ?aws_secret_access_key: String?, ?budget_duration: String?, - ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + ?configurable_clientside_auth_params: ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, ?custom_llm_provider: String?, ?input_cost_per_second: Float?, ?input_cost_per_token: Float?, @@ -149,25 +147,23 @@ module Hanzoai ?output_cost_per_token: Float?, ?region_name: String?, ?rpm: Integer?, - ?stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, - ?timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, + ?stream_timeout: Hanzoai::ModelCreateParams::LlmParams::stream_timeout?, + ?timeout: Hanzoai::ModelCreateParams::LlmParams::timeout?, ?tpm: Integer?, ?use_in_pass_through: bool?, - ?vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, + ?vertex_credentials: Hanzoai::ModelCreateParams::LlmParams::vertex_credentials?, ?vertex_location: String?, ?vertex_project: String?, ?watsonx_region_name: String? ) -> void - def to_hash: -> Hanzoai::Models::ModelCreateParams::llm_params - type configurable_clientside_auth_param = - String | Hanzoai::Models::ConfigurableClientsideParamsCustomAuth + String | Hanzoai::ConfigurableClientsideParamsCustomAuth module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth] + def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param] end type stream_timeout = Float | String @@ -175,7 +171,7 @@ module Hanzoai module StreamTimeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> [Float, String] + def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::stream_timeout] end type timeout = Float | String @@ -183,7 +179,7 @@ module Hanzoai module Timeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> [Float, String] + def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::timeout] end type vertex_credentials = top | String @@ -191,7 +187,7 @@ module Hanzoai module VertexCredentials extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::vertex_credentials] end end end diff --git a/sig/hanzoai/models/model_delete_params.rbs b/sig/hanzoai/models/model_delete_params.rbs index 35be25e9..b5a65a20 100644 --- a/sig/hanzoai/models/model_delete_params.rbs +++ b/sig/hanzoai/models/model_delete_params.rbs @@ -13,8 +13,6 @@ module Hanzoai id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::model_delete_params end end end diff --git a/sig/hanzoai/models/model_group_retrieve_info_params.rbs b/sig/hanzoai/models/model_group_retrieve_info_params.rbs index 6db4e3ae..ab654a69 100644 --- a/sig/hanzoai/models/model_group_retrieve_info_params.rbs +++ b/sig/hanzoai/models/model_group_retrieve_info_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?model_group: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::model_group_retrieve_info_params end end end diff --git a/sig/hanzoai/models/model_info.rbs b/sig/hanzoai/models/model_info.rbs index 2bf8613a..213b13bf 100644 --- a/sig/hanzoai/models/model_info.rbs +++ b/sig/hanzoai/models/model_info.rbs @@ -9,7 +9,7 @@ module Hanzoai db_model: bool, team_id: String?, team_public_model_name: String?, - tier: Hanzoai::Models::ModelInfo::tier?, + tier: Hanzoai::ModelInfo::tier?, updated_at: Time?, updated_by: String? } @@ -31,7 +31,7 @@ module Hanzoai attr_accessor team_public_model_name: String? - attr_accessor tier: Hanzoai::Models::ModelInfo::tier? + attr_accessor tier: Hanzoai::ModelInfo::tier? attr_accessor updated_at: Time? @@ -45,13 +45,11 @@ module Hanzoai ?db_model: bool, ?team_id: String?, ?team_public_model_name: String?, - ?tier: Hanzoai::Models::ModelInfo::tier?, + ?tier: Hanzoai::ModelInfo::tier?, ?updated_at: Time?, ?updated_by: String? ) -> void - def to_hash: -> Hanzoai::Models::model_info - type tier = :free | :paid module Tier @@ -60,7 +58,7 @@ module Hanzoai FREE: :free PAID: :paid - def self?.values: -> ::Array[Hanzoai::Models::ModelInfo::tier] + def self?.values: -> ::Array[Hanzoai::ModelInfo::tier] end end end diff --git a/sig/hanzoai/models/model_list_params.rbs b/sig/hanzoai/models/model_list_params.rbs index 999d2b8b..fa44ef27 100644 --- a/sig/hanzoai/models/model_list_params.rbs +++ b/sig/hanzoai/models/model_list_params.rbs @@ -17,8 +17,6 @@ module Hanzoai ?team_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::model_list_params end end end diff --git a/sig/hanzoai/models/moderation_create_params.rbs b/sig/hanzoai/models/moderation_create_params.rbs index 4178c8c5..c0292da7 100644 --- a/sig/hanzoai/models/moderation_create_params.rbs +++ b/sig/hanzoai/models/moderation_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::moderation_create_params end end end diff --git a/sig/hanzoai/models/openai/deployment_complete_params.rbs b/sig/hanzoai/models/openai/deployment_complete_params.rbs index d34f8dbf..c31a81e0 100644 --- a/sig/hanzoai/models/openai/deployment_complete_params.rbs +++ b/sig/hanzoai/models/openai/deployment_complete_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::OpenAI::deployment_complete_params end end end diff --git a/sig/hanzoai/models/openai/deployment_embed_params.rbs b/sig/hanzoai/models/openai/deployment_embed_params.rbs index a0349015..9cc4634d 100644 --- a/sig/hanzoai/models/openai/deployment_embed_params.rbs +++ b/sig/hanzoai/models/openai/deployment_embed_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::OpenAI::deployment_embed_params end end end diff --git a/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs b/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs index 41329053..d654a72a 100644 --- a/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs +++ b/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs @@ -10,8 +10,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::OpenAI::Deployments::chat_complete_params end end end diff --git a/sig/hanzoai/models/openai_create_params.rbs b/sig/hanzoai/models/openai_create_params.rbs index 06e419b6..11054774 100644 --- a/sig/hanzoai/models/openai_create_params.rbs +++ b/sig/hanzoai/models/openai_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::openai_create_params end end end diff --git a/sig/hanzoai/models/openai_delete_params.rbs b/sig/hanzoai/models/openai_delete_params.rbs index cb86556e..3d8169b3 100644 --- a/sig/hanzoai/models/openai_delete_params.rbs +++ b/sig/hanzoai/models/openai_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::openai_delete_params end end end diff --git a/sig/hanzoai/models/openai_patch_params.rbs b/sig/hanzoai/models/openai_patch_params.rbs index 70656af1..5a56f785 100644 --- a/sig/hanzoai/models/openai_patch_params.rbs +++ b/sig/hanzoai/models/openai_patch_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::openai_patch_params end end end diff --git a/sig/hanzoai/models/openai_retrieve_params.rbs b/sig/hanzoai/models/openai_retrieve_params.rbs index 678106e6..ed47f1f3 100644 --- a/sig/hanzoai/models/openai_retrieve_params.rbs +++ b/sig/hanzoai/models/openai_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::openai_retrieve_params end end end diff --git a/sig/hanzoai/models/openai_update_params.rbs b/sig/hanzoai/models/openai_update_params.rbs index c611362c..d075b520 100644 --- a/sig/hanzoai/models/openai_update_params.rbs +++ b/sig/hanzoai/models/openai_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::openai_update_params end end end diff --git a/sig/hanzoai/models/org_member.rbs b/sig/hanzoai/models/org_member.rbs index a19b1b0c..53db890a 100644 --- a/sig/hanzoai/models/org_member.rbs +++ b/sig/hanzoai/models/org_member.rbs @@ -1,27 +1,21 @@ module Hanzoai module Models type org_member = - { - role: Hanzoai::Models::OrgMember::role, - user_email: String?, - user_id: String? - } + { role: Hanzoai::OrgMember::role, user_email: String?, user_id: String? } class OrgMember < Hanzoai::Internal::Type::BaseModel - attr_accessor role: Hanzoai::Models::OrgMember::role + attr_accessor role: Hanzoai::OrgMember::role attr_accessor user_email: String? attr_accessor user_id: String? def initialize: ( - role: Hanzoai::Models::OrgMember::role, + role: Hanzoai::OrgMember::role, ?user_email: String?, ?user_id: String? ) -> void - def to_hash: -> Hanzoai::Models::org_member - type role = :org_admin | :internal_user | :internal_user_viewer module Role @@ -31,7 +25,7 @@ module Hanzoai INTERNAL_USER: :internal_user INTERNAL_USER_VIEWER: :internal_user_viewer - def self?.values: -> ::Array[Hanzoai::Models::OrgMember::role] + def self?.values: -> ::Array[Hanzoai::OrgMember::role] end end end diff --git a/sig/hanzoai/models/organization/info_deprecated_params.rbs b/sig/hanzoai/models/organization/info_deprecated_params.rbs index bb062af6..4bb29a5e 100644 --- a/sig/hanzoai/models/organization/info_deprecated_params.rbs +++ b/sig/hanzoai/models/organization/info_deprecated_params.rbs @@ -15,8 +15,6 @@ module Hanzoai organizations: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Organization::info_deprecated_params end end end diff --git a/sig/hanzoai/models/organization/info_retrieve_params.rbs b/sig/hanzoai/models/organization/info_retrieve_params.rbs index cbf08409..a1109ac5 100644 --- a/sig/hanzoai/models/organization/info_retrieve_params.rbs +++ b/sig/hanzoai/models/organization/info_retrieve_params.rbs @@ -15,8 +15,6 @@ module Hanzoai organization_id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Organization::info_retrieve_params end end end diff --git a/sig/hanzoai/models/organization/info_retrieve_response.rbs b/sig/hanzoai/models/organization/info_retrieve_response.rbs index 3c08e5d7..9dd105ae 100644 --- a/sig/hanzoai/models/organization/info_retrieve_response.rbs +++ b/sig/hanzoai/models/organization/info_retrieve_response.rbs @@ -71,8 +71,6 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] ) -> void - def to_hash: -> Hanzoai::Models::Organization::info_retrieve_response - type llm_budget_table = { budget_duration: String?, @@ -108,8 +106,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::Organization::InfoRetrieveResponse::llm_budget_table end type member = @@ -160,8 +156,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::Organization::InfoRetrieveResponse::member - type llm_budget_table = { budget_duration: String?, @@ -197,8 +191,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::Organization::InfoRetrieveResponse::Member::llm_budget_table end end @@ -214,7 +206,7 @@ module Hanzoai max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Models::Member], + members_with_roles: ::Array[Hanzoai::Member], metadata: top?, model_id: Integer?, models: ::Array[top], @@ -252,11 +244,11 @@ module Hanzoai def members=: (::Array[top]) -> ::Array[top] - attr_reader members_with_roles: ::Array[Hanzoai::Models::Member]? + attr_reader members_with_roles: ::Array[Hanzoai::Member]? def members_with_roles=: ( - ::Array[Hanzoai::Models::Member] - ) -> ::Array[Hanzoai::Models::Member] + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] attr_accessor metadata: top? @@ -287,7 +279,7 @@ module Hanzoai ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_id: Integer?, ?models: ::Array[top], @@ -298,8 +290,6 @@ module Hanzoai ?tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::Organization::InfoRetrieveResponse::team - type llm_model_table = { created_by: String, @@ -320,14 +310,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases? ) -> void - def to_hash: -> Hanzoai::Models::Organization::InfoRetrieveResponse::Team::llm_model_table - type model_aliases = top | String module ModelAliases extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases] end end end diff --git a/sig/hanzoai/models/organization_add_member_params.rbs b/sig/hanzoai/models/organization_add_member_params.rbs index 6cafc982..232ac0c4 100644 --- a/sig/hanzoai/models/organization_add_member_params.rbs +++ b/sig/hanzoai/models/organization_add_member_params.rbs @@ -25,15 +25,12 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::organization_add_member_params - - type member = - ::Array[Hanzoai::Models::OrgMember] | Hanzoai::Models::OrgMember + type member = ::Array[Hanzoai::OrgMember] | Hanzoai::OrgMember module Member extend Hanzoai::Internal::Type::Union - def self?.variants: -> [::Array[Hanzoai::Models::OrgMember], Hanzoai::Models::OrgMember] + def self?.variants: -> ::Array[Hanzoai::Models::OrganizationAddMemberParams::member] OrgMemberArray: Hanzoai::Internal::Type::Converter end diff --git a/sig/hanzoai/models/organization_add_member_response.rbs b/sig/hanzoai/models/organization_add_member_response.rbs index 97ff88f3..e882e6c1 100644 --- a/sig/hanzoai/models/organization_add_member_response.rbs +++ b/sig/hanzoai/models/organization_add_member_response.rbs @@ -20,8 +20,6 @@ module Hanzoai updated_users: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] ) -> void - def to_hash: -> Hanzoai::Models::organization_add_member_response - type updated_organization_membership = { created_at: Time, @@ -70,8 +68,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationAddMemberResponse::updated_organization_membership - type llm_budget_table = { budget_duration: String?, @@ -107,8 +103,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::llm_budget_table end end @@ -190,8 +184,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationAddMemberResponse::updated_user - type organization_membership = { created_at: Time, @@ -240,8 +232,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::organization_membership - type llm_budget_table = { budget_duration: String?, @@ -277,8 +267,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::llm_budget_table end end end diff --git a/sig/hanzoai/models/organization_create_params.rbs b/sig/hanzoai/models/organization_create_params.rbs index c6833a79..7af1f886 100644 --- a/sig/hanzoai/models/organization_create_params.rbs +++ b/sig/hanzoai/models/organization_create_params.rbs @@ -62,8 +62,6 @@ module Hanzoai ?tpm_limit: Integer?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::organization_create_params end end end diff --git a/sig/hanzoai/models/organization_create_response.rbs b/sig/hanzoai/models/organization_create_response.rbs index b273a459..d1f16399 100644 --- a/sig/hanzoai/models/organization_create_response.rbs +++ b/sig/hanzoai/models/organization_create_response.rbs @@ -49,8 +49,6 @@ module Hanzoai ?organization_alias: String?, ?spend: Float ) -> void - - def to_hash: -> Hanzoai::Models::organization_create_response end end end diff --git a/sig/hanzoai/models/organization_delete_member_params.rbs b/sig/hanzoai/models/organization_delete_member_params.rbs index 4b96231e..ce6683f7 100644 --- a/sig/hanzoai/models/organization_delete_member_params.rbs +++ b/sig/hanzoai/models/organization_delete_member_params.rbs @@ -20,8 +20,6 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::organization_delete_member_params end end end diff --git a/sig/hanzoai/models/organization_delete_params.rbs b/sig/hanzoai/models/organization_delete_params.rbs index ea1a6bce..95169a8d 100644 --- a/sig/hanzoai/models/organization_delete_params.rbs +++ b/sig/hanzoai/models/organization_delete_params.rbs @@ -14,8 +14,6 @@ module Hanzoai organization_ids: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::organization_delete_params end end end diff --git a/sig/hanzoai/models/organization_delete_response.rbs b/sig/hanzoai/models/organization_delete_response.rbs index 46105ff4..994908bd 100644 --- a/sig/hanzoai/models/organization_delete_response.rbs +++ b/sig/hanzoai/models/organization_delete_response.rbs @@ -70,8 +70,6 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] ) -> void - def to_hash: -> Hanzoai::Models::organization_delete_response_item - type llm_budget_table = { budget_duration: String?, @@ -107,8 +105,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationDeleteResponseItem::llm_budget_table end type member = @@ -159,8 +155,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationDeleteResponseItem::member - type llm_budget_table = { budget_duration: String?, @@ -196,8 +190,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationDeleteResponseItem::Member::llm_budget_table end end @@ -213,7 +205,7 @@ module Hanzoai max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Models::Member], + members_with_roles: ::Array[Hanzoai::Member], metadata: top?, model_id: Integer?, models: ::Array[top], @@ -251,11 +243,11 @@ module Hanzoai def members=: (::Array[top]) -> ::Array[top] - attr_reader members_with_roles: ::Array[Hanzoai::Models::Member]? + attr_reader members_with_roles: ::Array[Hanzoai::Member]? def members_with_roles=: ( - ::Array[Hanzoai::Models::Member] - ) -> ::Array[Hanzoai::Models::Member] + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] attr_accessor metadata: top? @@ -286,7 +278,7 @@ module Hanzoai ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_id: Integer?, ?models: ::Array[top], @@ -297,8 +289,6 @@ module Hanzoai ?tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationDeleteResponseItem::team - type llm_model_table = { created_by: String, @@ -319,14 +309,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationDeleteResponseItem::Team::llm_model_table - type model_aliases = top | String module ModelAliases extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases] end end end diff --git a/sig/hanzoai/models/organization_list_params.rbs b/sig/hanzoai/models/organization_list_params.rbs index 3fe957ba..2f871be1 100644 --- a/sig/hanzoai/models/organization_list_params.rbs +++ b/sig/hanzoai/models/organization_list_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::organization_list_params end end end diff --git a/sig/hanzoai/models/organization_list_response.rbs b/sig/hanzoai/models/organization_list_response.rbs index d099cc95..69f9f104 100644 --- a/sig/hanzoai/models/organization_list_response.rbs +++ b/sig/hanzoai/models/organization_list_response.rbs @@ -70,8 +70,6 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] ) -> void - def to_hash: -> Hanzoai::Models::organization_list_response_item - type llm_budget_table = { budget_duration: String?, @@ -107,8 +105,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationListResponseItem::llm_budget_table end type member = @@ -159,8 +155,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationListResponseItem::member - type llm_budget_table = { budget_duration: String?, @@ -196,8 +190,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationListResponseItem::Member::llm_budget_table end end @@ -213,7 +205,7 @@ module Hanzoai max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Models::Member], + members_with_roles: ::Array[Hanzoai::Member], metadata: top?, model_id: Integer?, models: ::Array[top], @@ -251,11 +243,11 @@ module Hanzoai def members=: (::Array[top]) -> ::Array[top] - attr_reader members_with_roles: ::Array[Hanzoai::Models::Member]? + attr_reader members_with_roles: ::Array[Hanzoai::Member]? def members_with_roles=: ( - ::Array[Hanzoai::Models::Member] - ) -> ::Array[Hanzoai::Models::Member] + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] attr_accessor metadata: top? @@ -286,7 +278,7 @@ module Hanzoai ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_id: Integer?, ?models: ::Array[top], @@ -297,8 +289,6 @@ module Hanzoai ?tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationListResponseItem::team - type llm_model_table = { created_by: String, @@ -319,14 +309,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationListResponseItem::Team::llm_model_table - type model_aliases = top | String module ModelAliases extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases] end end end diff --git a/sig/hanzoai/models/organization_update_member_params.rbs b/sig/hanzoai/models/organization_update_member_params.rbs index cbfa72de..3ed5bee7 100644 --- a/sig/hanzoai/models/organization_update_member_params.rbs +++ b/sig/hanzoai/models/organization_update_member_params.rbs @@ -33,8 +33,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::organization_update_member_params - type role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/organization_update_member_response.rbs b/sig/hanzoai/models/organization_update_member_response.rbs index ab75e8a7..494e580e 100644 --- a/sig/hanzoai/models/organization_update_member_response.rbs +++ b/sig/hanzoai/models/organization_update_member_response.rbs @@ -48,8 +48,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::organization_update_member_response - type llm_budget_table = { budget_duration: String?, @@ -85,8 +83,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationUpdateMemberResponse::llm_budget_table end end end diff --git a/sig/hanzoai/models/organization_update_params.rbs b/sig/hanzoai/models/organization_update_params.rbs index 3ba503aa..2a6326b6 100644 --- a/sig/hanzoai/models/organization_update_params.rbs +++ b/sig/hanzoai/models/organization_update_params.rbs @@ -40,8 +40,6 @@ module Hanzoai ?updated_by: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::organization_update_params end end end diff --git a/sig/hanzoai/models/organization_update_response.rbs b/sig/hanzoai/models/organization_update_response.rbs index 6f5389c8..8f0f99ab 100644 --- a/sig/hanzoai/models/organization_update_response.rbs +++ b/sig/hanzoai/models/organization_update_response.rbs @@ -70,8 +70,6 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] ) -> void - def to_hash: -> Hanzoai::Models::organization_update_response - type llm_budget_table = { budget_duration: String?, @@ -107,8 +105,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationUpdateResponse::llm_budget_table end type member = @@ -159,8 +155,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationUpdateResponse::member - type llm_budget_table = { budget_duration: String?, @@ -196,8 +190,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::OrganizationUpdateResponse::Member::llm_budget_table end end @@ -213,7 +205,7 @@ module Hanzoai max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Models::Member], + members_with_roles: ::Array[Hanzoai::Member], metadata: top?, model_id: Integer?, models: ::Array[top], @@ -251,11 +243,11 @@ module Hanzoai def members=: (::Array[top]) -> ::Array[top] - attr_reader members_with_roles: ::Array[Hanzoai::Models::Member]? + attr_reader members_with_roles: ::Array[Hanzoai::Member]? def members_with_roles=: ( - ::Array[Hanzoai::Models::Member] - ) -> ::Array[Hanzoai::Models::Member] + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] attr_accessor metadata: top? @@ -286,7 +278,7 @@ module Hanzoai ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_id: Integer?, ?models: ::Array[top], @@ -297,8 +289,6 @@ module Hanzoai ?tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationUpdateResponse::team - type llm_model_table = { created_by: String, @@ -319,14 +309,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases? ) -> void - def to_hash: -> Hanzoai::Models::OrganizationUpdateResponse::Team::llm_model_table - type model_aliases = top | String module ModelAliases extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases] end end end diff --git a/sig/hanzoai/models/provider_list_budgets_params.rbs b/sig/hanzoai/models/provider_list_budgets_params.rbs index c2581b4b..b98a6c49 100644 --- a/sig/hanzoai/models/provider_list_budgets_params.rbs +++ b/sig/hanzoai/models/provider_list_budgets_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::provider_list_budgets_params end end end diff --git a/sig/hanzoai/models/provider_list_budgets_response.rbs b/sig/hanzoai/models/provider_list_budgets_response.rbs index 1f1f1071..cca0865d 100644 --- a/sig/hanzoai/models/provider_list_budgets_response.rbs +++ b/sig/hanzoai/models/provider_list_budgets_response.rbs @@ -16,8 +16,6 @@ module Hanzoai ?providers: ::Hash[Symbol, Hanzoai::Models::ProviderListBudgetsResponse::Provider] ) -> void - def to_hash: -> Hanzoai::Models::provider_list_budgets_response - type provider = { budget_limit: Float?, @@ -41,8 +39,6 @@ module Hanzoai ?budget_reset_at: String?, ?spend: Float? ) -> void - - def to_hash: -> Hanzoai::Models::ProviderListBudgetsResponse::provider end end end diff --git a/sig/hanzoai/models/rerank_create_params.rbs b/sig/hanzoai/models/rerank_create_params.rbs index e30acb02..9c5fa197 100644 --- a/sig/hanzoai/models/rerank_create_params.rbs +++ b/sig/hanzoai/models/rerank_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::rerank_create_params end end end diff --git a/sig/hanzoai/models/rerank_create_v1_params.rbs b/sig/hanzoai/models/rerank_create_v1_params.rbs index 8c54589c..f0974c2c 100644 --- a/sig/hanzoai/models/rerank_create_v1_params.rbs +++ b/sig/hanzoai/models/rerank_create_v1_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::rerank_create_v1_params end end end diff --git a/sig/hanzoai/models/rerank_create_v2_params.rbs b/sig/hanzoai/models/rerank_create_v2_params.rbs index 6aa30fe5..b1a3abe7 100644 --- a/sig/hanzoai/models/rerank_create_v2_params.rbs +++ b/sig/hanzoai/models/rerank_create_v2_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::rerank_create_v2_params end end end diff --git a/sig/hanzoai/models/response_create_params.rbs b/sig/hanzoai/models/response_create_params.rbs index b0911917..0726e185 100644 --- a/sig/hanzoai/models/response_create_params.rbs +++ b/sig/hanzoai/models/response_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::response_create_params end end end diff --git a/sig/hanzoai/models/response_delete_params.rbs b/sig/hanzoai/models/response_delete_params.rbs index f6a47246..0142ecbd 100644 --- a/sig/hanzoai/models/response_delete_params.rbs +++ b/sig/hanzoai/models/response_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::response_delete_params end end end diff --git a/sig/hanzoai/models/response_retrieve_params.rbs b/sig/hanzoai/models/response_retrieve_params.rbs index d2cff2c4..aa16f4f6 100644 --- a/sig/hanzoai/models/response_retrieve_params.rbs +++ b/sig/hanzoai/models/response_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::response_retrieve_params end end end diff --git a/sig/hanzoai/models/responses/input_item_list_params.rbs b/sig/hanzoai/models/responses/input_item_list_params.rbs index 09d1385b..2f39f093 100644 --- a/sig/hanzoai/models/responses/input_item_list_params.rbs +++ b/sig/hanzoai/models/responses/input_item_list_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Responses::input_item_list_params end end end diff --git a/sig/hanzoai/models/route_list_params.rbs b/sig/hanzoai/models/route_list_params.rbs index b9e1ae53..0756cdf2 100644 --- a/sig/hanzoai/models/route_list_params.rbs +++ b/sig/hanzoai/models/route_list_params.rbs @@ -7,8 +7,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::route_list_params end end end diff --git a/sig/hanzoai/models/setting_retrieve_params.rbs b/sig/hanzoai/models/setting_retrieve_params.rbs index 4555343a..1b83eb36 100644 --- a/sig/hanzoai/models/setting_retrieve_params.rbs +++ b/sig/hanzoai/models/setting_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::setting_retrieve_params end end end diff --git a/sig/hanzoai/models/spend_calculate_spend_params.rbs b/sig/hanzoai/models/spend_calculate_spend_params.rbs index 920bbef3..8862ba1e 100644 --- a/sig/hanzoai/models/spend_calculate_spend_params.rbs +++ b/sig/hanzoai/models/spend_calculate_spend_params.rbs @@ -20,8 +20,6 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::spend_calculate_spend_params end end end diff --git a/sig/hanzoai/models/spend_list_logs_params.rbs b/sig/hanzoai/models/spend_list_logs_params.rbs index 76a79911..2aa27d63 100644 --- a/sig/hanzoai/models/spend_list_logs_params.rbs +++ b/sig/hanzoai/models/spend_list_logs_params.rbs @@ -32,8 +32,6 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::spend_list_logs_params end end end diff --git a/sig/hanzoai/models/spend_list_logs_response.rbs b/sig/hanzoai/models/spend_list_logs_response.rbs index fb095176..22b78b4d 100644 --- a/sig/hanzoai/models/spend_list_logs_response.rbs +++ b/sig/hanzoai/models/spend_list_logs_response.rbs @@ -88,14 +88,12 @@ module Hanzoai ?user: String? ) -> void - def to_hash: -> Hanzoai::Models::spend_list_logs_response_item - type end_time = String | Time module EndTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListLogsResponseItem::end_time] end type messages = String | ::Array[top] | top @@ -103,7 +101,7 @@ module Hanzoai module Messages extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListLogsResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -113,7 +111,7 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListLogsResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -123,7 +121,7 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListLogsResponseItem::start_time] end end diff --git a/sig/hanzoai/models/spend_list_tags_params.rbs b/sig/hanzoai/models/spend_list_tags_params.rbs index 60ad8038..dcbb5f02 100644 --- a/sig/hanzoai/models/spend_list_tags_params.rbs +++ b/sig/hanzoai/models/spend_list_tags_params.rbs @@ -17,8 +17,6 @@ module Hanzoai ?start_date: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::spend_list_tags_params end end end diff --git a/sig/hanzoai/models/spend_list_tags_response.rbs b/sig/hanzoai/models/spend_list_tags_response.rbs index dd956d3b..5c7d2c4b 100644 --- a/sig/hanzoai/models/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/spend_list_tags_response.rbs @@ -88,14 +88,12 @@ module Hanzoai ?user: String? ) -> void - def to_hash: -> Hanzoai::Models::spend_list_tags_response_item - type end_time = String | Time module EndTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListTagsResponseItem::end_time] end type messages = String | ::Array[top] | top @@ -103,7 +101,7 @@ module Hanzoai module Messages extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListTagsResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -113,7 +111,7 @@ module Hanzoai module Response extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, ::Array[top], top] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListTagsResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter end @@ -123,7 +121,7 @@ module Hanzoai module StartTime extend Hanzoai::Internal::Type::Union - def self?.variants: -> [String, Time] + def self?.variants: -> ::Array[Hanzoai::Models::SpendListTagsResponseItem::start_time] end end diff --git a/sig/hanzoai/models/team/callback_add_params.rbs b/sig/hanzoai/models/team/callback_add_params.rbs index 3600cc45..ab9216c1 100644 --- a/sig/hanzoai/models/team/callback_add_params.rbs +++ b/sig/hanzoai/models/team/callback_add_params.rbs @@ -32,8 +32,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::Team::callback_add_params - type callback_type = :success | :failure | :success_and_failure module CallbackType diff --git a/sig/hanzoai/models/team/callback_retrieve_params.rbs b/sig/hanzoai/models/team/callback_retrieve_params.rbs index f3de97b0..de27bc82 100644 --- a/sig/hanzoai/models/team/callback_retrieve_params.rbs +++ b/sig/hanzoai/models/team/callback_retrieve_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Team::callback_retrieve_params end end end diff --git a/sig/hanzoai/models/team/model_add_params.rbs b/sig/hanzoai/models/team/model_add_params.rbs index 3c472842..b6353c5d 100644 --- a/sig/hanzoai/models/team/model_add_params.rbs +++ b/sig/hanzoai/models/team/model_add_params.rbs @@ -18,8 +18,6 @@ module Hanzoai team_id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Team::model_add_params end end end diff --git a/sig/hanzoai/models/team/model_remove_params.rbs b/sig/hanzoai/models/team/model_remove_params.rbs index 52f6a130..d771d66d 100644 --- a/sig/hanzoai/models/team/model_remove_params.rbs +++ b/sig/hanzoai/models/team/model_remove_params.rbs @@ -18,8 +18,6 @@ module Hanzoai team_id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::Team::model_remove_params end end end diff --git a/sig/hanzoai/models/team_add_member_params.rbs b/sig/hanzoai/models/team_add_member_params.rbs index 489c3e0b..0f8503ac 100644 --- a/sig/hanzoai/models/team_add_member_params.rbs +++ b/sig/hanzoai/models/team_add_member_params.rbs @@ -25,14 +25,12 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::team_add_member_params - - type member = ::Array[Hanzoai::Models::Member] | Hanzoai::Models::Member + type member = ::Array[Hanzoai::Member] | Hanzoai::Member module Member extend Hanzoai::Internal::Type::Union - def self?.variants: -> [::Array[Hanzoai::Models::Member], Hanzoai::Models::Member] + def self?.variants: -> ::Array[Hanzoai::Models::TeamAddMemberParams::member] MemberArray: Hanzoai::Internal::Type::Converter end diff --git a/sig/hanzoai/models/team_add_member_response.rbs b/sig/hanzoai/models/team_add_member_response.rbs index a9767f2e..ebbacc52 100644 --- a/sig/hanzoai/models/team_add_member_response.rbs +++ b/sig/hanzoai/models/team_add_member_response.rbs @@ -14,7 +14,7 @@ module Hanzoai max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Models::Member], + members_with_roles: ::Array[Hanzoai::Member], metadata: top?, model_id: Integer?, models: ::Array[top], @@ -56,11 +56,11 @@ module Hanzoai def members=: (::Array[top]) -> ::Array[top] - attr_reader members_with_roles: ::Array[Hanzoai::Models::Member]? + attr_reader members_with_roles: ::Array[Hanzoai::Member]? def members_with_roles=: ( - ::Array[Hanzoai::Models::Member] - ) -> ::Array[Hanzoai::Models::Member] + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] attr_accessor metadata: top? @@ -93,7 +93,7 @@ module Hanzoai ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_id: Integer?, ?models: ::Array[top], @@ -104,8 +104,6 @@ module Hanzoai ?tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::team_add_member_response - type updated_team_membership = { budget_id: String, @@ -130,8 +128,6 @@ module Hanzoai user_id: String ) -> void - def to_hash: -> Hanzoai::Models::TeamAddMemberResponse::updated_team_membership - type llm_budget_table = { budget_duration: String?, @@ -167,8 +163,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::llm_budget_table end end @@ -250,8 +244,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::TeamAddMemberResponse::updated_user - type organization_membership = { created_at: Time, @@ -300,8 +292,6 @@ module Hanzoai ?user_role: String? ) -> void - def to_hash: -> Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::organization_membership - type llm_budget_table = { budget_duration: String?, @@ -337,8 +327,6 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void - - def to_hash: -> Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::llm_budget_table end end end @@ -363,14 +351,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases? ) -> void - def to_hash: -> Hanzoai::Models::TeamAddMemberResponse::llm_model_table - type model_aliases = top | String module ModelAliases extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases] end end end diff --git a/sig/hanzoai/models/team_block_params.rbs b/sig/hanzoai/models/team_block_params.rbs index da7b6f50..b0e59dd1 100644 --- a/sig/hanzoai/models/team_block_params.rbs +++ b/sig/hanzoai/models/team_block_params.rbs @@ -7,8 +7,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::team_block_params end end end diff --git a/sig/hanzoai/models/team_create_params.rbs b/sig/hanzoai/models/team_create_params.rbs index ed9f4497..b9820cd5 100644 --- a/sig/hanzoai/models/team_create_params.rbs +++ b/sig/hanzoai/models/team_create_params.rbs @@ -8,7 +8,7 @@ module Hanzoai guardrails: ::Array[String]?, max_budget: Float?, members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Models::Member], + members_with_roles: ::Array[Hanzoai::Member], metadata: top?, model_aliases: top?, models: ::Array[top], @@ -44,11 +44,11 @@ module Hanzoai def members=: (::Array[top]) -> ::Array[top] - attr_reader members_with_roles: ::Array[Hanzoai::Models::Member]? + attr_reader members_with_roles: ::Array[Hanzoai::Member]? def members_with_roles=: ( - ::Array[Hanzoai::Models::Member] - ) -> ::Array[Hanzoai::Models::Member] + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] attr_accessor metadata: top? @@ -81,7 +81,7 @@ module Hanzoai ?guardrails: ::Array[String]?, ?max_budget: Float?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_aliases: top?, ?models: ::Array[top], @@ -94,8 +94,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::team_create_params end end end diff --git a/sig/hanzoai/models/team_create_response.rbs b/sig/hanzoai/models/team_create_response.rbs index d934b5ac..d7954675 100644 --- a/sig/hanzoai/models/team_create_response.rbs +++ b/sig/hanzoai/models/team_create_response.rbs @@ -12,7 +12,7 @@ module Hanzoai max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Models::Member], + members_with_roles: ::Array[Hanzoai::Member], metadata: top?, model_id: Integer?, models: ::Array[top], @@ -50,11 +50,11 @@ module Hanzoai def members=: (::Array[top]) -> ::Array[top] - attr_reader members_with_roles: ::Array[Hanzoai::Models::Member]? + attr_reader members_with_roles: ::Array[Hanzoai::Member]? def members_with_roles=: ( - ::Array[Hanzoai::Models::Member] - ) -> ::Array[Hanzoai::Models::Member] + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] attr_accessor metadata: top? @@ -85,7 +85,7 @@ module Hanzoai ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_id: Integer?, ?models: ::Array[top], @@ -96,8 +96,6 @@ module Hanzoai ?tpm_limit: Integer? ) -> void - def to_hash: -> Hanzoai::Models::team_create_response - type llm_model_table = { created_by: String, @@ -118,14 +116,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases? ) -> void - def to_hash: -> Hanzoai::Models::TeamCreateResponse::llm_model_table - type model_aliases = top | String module ModelAliases extend Hanzoai::Internal::Type::Union - def self?.variants: -> [top, String] + def self?.variants: -> ::Array[Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases] end end end diff --git a/sig/hanzoai/models/team_delete_params.rbs b/sig/hanzoai/models/team_delete_params.rbs index e0517dc1..fb9ba26b 100644 --- a/sig/hanzoai/models/team_delete_params.rbs +++ b/sig/hanzoai/models/team_delete_params.rbs @@ -19,8 +19,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::team_delete_params end end end diff --git a/sig/hanzoai/models/team_disable_logging_params.rbs b/sig/hanzoai/models/team_disable_logging_params.rbs index 881f99e5..80dae308 100644 --- a/sig/hanzoai/models/team_disable_logging_params.rbs +++ b/sig/hanzoai/models/team_disable_logging_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::team_disable_logging_params end end end diff --git a/sig/hanzoai/models/team_list_available_params.rbs b/sig/hanzoai/models/team_list_available_params.rbs index 9018e70a..c794197b 100644 --- a/sig/hanzoai/models/team_list_available_params.rbs +++ b/sig/hanzoai/models/team_list_available_params.rbs @@ -15,8 +15,6 @@ module Hanzoai ?response_model: top, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::team_list_available_params end end end diff --git a/sig/hanzoai/models/team_list_params.rbs b/sig/hanzoai/models/team_list_params.rbs index 4e259a43..3c3c6bd3 100644 --- a/sig/hanzoai/models/team_list_params.rbs +++ b/sig/hanzoai/models/team_list_params.rbs @@ -17,8 +17,6 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::team_list_params end end end diff --git a/sig/hanzoai/models/team_remove_member_params.rbs b/sig/hanzoai/models/team_remove_member_params.rbs index 8e5ca9af..fd23c0e4 100644 --- a/sig/hanzoai/models/team_remove_member_params.rbs +++ b/sig/hanzoai/models/team_remove_member_params.rbs @@ -20,8 +20,6 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::team_remove_member_params end end end diff --git a/sig/hanzoai/models/team_retrieve_info_params.rbs b/sig/hanzoai/models/team_retrieve_info_params.rbs index 4cf5990e..5305ddcc 100644 --- a/sig/hanzoai/models/team_retrieve_info_params.rbs +++ b/sig/hanzoai/models/team_retrieve_info_params.rbs @@ -15,8 +15,6 @@ module Hanzoai ?team_id: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::team_retrieve_info_params end end end diff --git a/sig/hanzoai/models/team_unblock_params.rbs b/sig/hanzoai/models/team_unblock_params.rbs index bf21bc37..98fbeaad 100644 --- a/sig/hanzoai/models/team_unblock_params.rbs +++ b/sig/hanzoai/models/team_unblock_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::team_unblock_params end end end diff --git a/sig/hanzoai/models/team_update_member_params.rbs b/sig/hanzoai/models/team_update_member_params.rbs index 4596e161..5c8550f4 100644 --- a/sig/hanzoai/models/team_update_member_params.rbs +++ b/sig/hanzoai/models/team_update_member_params.rbs @@ -33,8 +33,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::team_update_member_params - type role = :admin | :user module Role diff --git a/sig/hanzoai/models/team_update_member_response.rbs b/sig/hanzoai/models/team_update_member_response.rbs index d754df1a..f4b4a8ad 100644 --- a/sig/hanzoai/models/team_update_member_response.rbs +++ b/sig/hanzoai/models/team_update_member_response.rbs @@ -23,8 +23,6 @@ module Hanzoai ?max_budget_in_team: Float?, ?user_email: String? ) -> void - - def to_hash: -> Hanzoai::Models::team_update_member_response end end end diff --git a/sig/hanzoai/models/team_update_params.rbs b/sig/hanzoai/models/team_update_params.rbs index 362af1b0..397273c2 100644 --- a/sig/hanzoai/models/team_update_params.rbs +++ b/sig/hanzoai/models/team_update_params.rbs @@ -70,8 +70,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::team_update_params end end end diff --git a/sig/hanzoai/models/test_ping_params.rbs b/sig/hanzoai/models/test_ping_params.rbs index 6263a317..60c2b272 100644 --- a/sig/hanzoai/models/test_ping_params.rbs +++ b/sig/hanzoai/models/test_ping_params.rbs @@ -7,8 +7,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::test_ping_params end end end diff --git a/sig/hanzoai/models/thread_create_params.rbs b/sig/hanzoai/models/thread_create_params.rbs index a7254a7d..9e42d469 100644 --- a/sig/hanzoai/models/thread_create_params.rbs +++ b/sig/hanzoai/models/thread_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::thread_create_params end end end diff --git a/sig/hanzoai/models/thread_retrieve_params.rbs b/sig/hanzoai/models/thread_retrieve_params.rbs index d237cca8..fa429a6e 100644 --- a/sig/hanzoai/models/thread_retrieve_params.rbs +++ b/sig/hanzoai/models/thread_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::thread_retrieve_params end end end diff --git a/sig/hanzoai/models/threads/message_create_params.rbs b/sig/hanzoai/models/threads/message_create_params.rbs index 6b5576fe..ea40a4cc 100644 --- a/sig/hanzoai/models/threads/message_create_params.rbs +++ b/sig/hanzoai/models/threads/message_create_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Threads::message_create_params end end end diff --git a/sig/hanzoai/models/threads/message_list_params.rbs b/sig/hanzoai/models/threads/message_list_params.rbs index 130b4fb8..e3a22afc 100644 --- a/sig/hanzoai/models/threads/message_list_params.rbs +++ b/sig/hanzoai/models/threads/message_list_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Threads::message_list_params end end end diff --git a/sig/hanzoai/models/threads/run_create_params.rbs b/sig/hanzoai/models/threads/run_create_params.rbs index 236d41a5..c4a1471d 100644 --- a/sig/hanzoai/models/threads/run_create_params.rbs +++ b/sig/hanzoai/models/threads/run_create_params.rbs @@ -9,8 +9,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::Threads::run_create_params end end end diff --git a/sig/hanzoai/models/user_create_params.rbs b/sig/hanzoai/models/user_create_params.rbs index c78e8056..9b473a87 100644 --- a/sig/hanzoai/models/user_create_params.rbs +++ b/sig/hanzoai/models/user_create_params.rbs @@ -123,8 +123,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::user_create_params - type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/user_create_response.rbs b/sig/hanzoai/models/user_create_response.rbs index d5d14a82..fda7f1ed 100644 --- a/sig/hanzoai/models/user_create_response.rbs +++ b/sig/hanzoai/models/user_create_response.rbs @@ -154,8 +154,6 @@ module Hanzoai ?user_role: Hanzoai::Models::UserCreateResponse::user_role? ) -> void - def to_hash: -> Hanzoai::Models::user_create_response - type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/user_delete_params.rbs b/sig/hanzoai/models/user_delete_params.rbs index bd0f1b2f..0f8ab282 100644 --- a/sig/hanzoai/models/user_delete_params.rbs +++ b/sig/hanzoai/models/user_delete_params.rbs @@ -19,8 +19,6 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::user_delete_params end end end diff --git a/sig/hanzoai/models/user_list_params.rbs b/sig/hanzoai/models/user_list_params.rbs index b4b7f1fb..15557be2 100644 --- a/sig/hanzoai/models/user_list_params.rbs +++ b/sig/hanzoai/models/user_list_params.rbs @@ -27,8 +27,6 @@ module Hanzoai ?user_ids: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::user_list_params end end end diff --git a/sig/hanzoai/models/user_retrieve_info_params.rbs b/sig/hanzoai/models/user_retrieve_info_params.rbs index 487cc96b..6de1019e 100644 --- a/sig/hanzoai/models/user_retrieve_info_params.rbs +++ b/sig/hanzoai/models/user_retrieve_info_params.rbs @@ -13,8 +13,6 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::user_retrieve_info_params end end end diff --git a/sig/hanzoai/models/user_update_params.rbs b/sig/hanzoai/models/user_update_params.rbs index b5ddaeab..cbf95c76 100644 --- a/sig/hanzoai/models/user_update_params.rbs +++ b/sig/hanzoai/models/user_update_params.rbs @@ -109,8 +109,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::user_update_params - type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/util_get_supported_openai_params_params.rbs b/sig/hanzoai/models/util_get_supported_openai_params_params.rbs index 285f13bf..6242962d 100644 --- a/sig/hanzoai/models/util_get_supported_openai_params_params.rbs +++ b/sig/hanzoai/models/util_get_supported_openai_params_params.rbs @@ -13,8 +13,6 @@ module Hanzoai model: String, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::util_get_supported_openai_params_params end end end diff --git a/sig/hanzoai/models/util_token_counter_params.rbs b/sig/hanzoai/models/util_token_counter_params.rbs index 6a39f376..ce6a66c4 100644 --- a/sig/hanzoai/models/util_token_counter_params.rbs +++ b/sig/hanzoai/models/util_token_counter_params.rbs @@ -20,8 +20,6 @@ module Hanzoai ?prompt: String?, ?request_options: Hanzoai::request_opts ) -> void - - def to_hash: -> Hanzoai::Models::util_token_counter_params end end end diff --git a/sig/hanzoai/models/util_token_counter_response.rbs b/sig/hanzoai/models/util_token_counter_response.rbs index e2c41068..71ae4e98 100644 --- a/sig/hanzoai/models/util_token_counter_response.rbs +++ b/sig/hanzoai/models/util_token_counter_response.rbs @@ -23,8 +23,6 @@ module Hanzoai tokenizer_type: String, total_tokens: Integer ) -> void - - def to_hash: -> Hanzoai::Models::util_token_counter_response end end end diff --git a/sig/hanzoai/models/util_transform_request_params.rbs b/sig/hanzoai/models/util_transform_request_params.rbs index ee328a2f..da29676e 100644 --- a/sig/hanzoai/models/util_transform_request_params.rbs +++ b/sig/hanzoai/models/util_transform_request_params.rbs @@ -21,8 +21,6 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void - def to_hash: -> Hanzoai::Models::util_transform_request_params - type call_type = :embedding | :aembedding diff --git a/sig/hanzoai/models/util_transform_request_response.rbs b/sig/hanzoai/models/util_transform_request_response.rbs index 46ccc195..ba85f4b2 100644 --- a/sig/hanzoai/models/util_transform_request_response.rbs +++ b/sig/hanzoai/models/util_transform_request_response.rbs @@ -23,8 +23,6 @@ module Hanzoai ?raw_request_body: top?, ?raw_request_headers: top? ) -> void - - def to_hash: -> Hanzoai::Models::util_transform_request_response end end end diff --git a/sig/hanzoai/models/vertex_ai_create_params.rbs b/sig/hanzoai/models/vertex_ai_create_params.rbs index 2a16f7f7..f72e9888 100644 --- a/sig/hanzoai/models/vertex_ai_create_params.rbs +++ b/sig/hanzoai/models/vertex_ai_create_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::vertex_ai_create_params end end end diff --git a/sig/hanzoai/models/vertex_ai_delete_params.rbs b/sig/hanzoai/models/vertex_ai_delete_params.rbs index ca560dc3..c7abea89 100644 --- a/sig/hanzoai/models/vertex_ai_delete_params.rbs +++ b/sig/hanzoai/models/vertex_ai_delete_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::vertex_ai_delete_params end end end diff --git a/sig/hanzoai/models/vertex_ai_patch_params.rbs b/sig/hanzoai/models/vertex_ai_patch_params.rbs index f0956558..a2079528 100644 --- a/sig/hanzoai/models/vertex_ai_patch_params.rbs +++ b/sig/hanzoai/models/vertex_ai_patch_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::vertex_ai_patch_params end end end diff --git a/sig/hanzoai/models/vertex_ai_retrieve_params.rbs b/sig/hanzoai/models/vertex_ai_retrieve_params.rbs index dd16f7c7..c363b3a0 100644 --- a/sig/hanzoai/models/vertex_ai_retrieve_params.rbs +++ b/sig/hanzoai/models/vertex_ai_retrieve_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::vertex_ai_retrieve_params end end end diff --git a/sig/hanzoai/models/vertex_ai_update_params.rbs b/sig/hanzoai/models/vertex_ai_update_params.rbs index 4cbfc88b..511bcab5 100644 --- a/sig/hanzoai/models/vertex_ai_update_params.rbs +++ b/sig/hanzoai/models/vertex_ai_update_params.rbs @@ -8,8 +8,6 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void - - def to_hash: -> Hanzoai::Models::vertex_ai_update_params end end end diff --git a/sig/hanzoai/request_options.rbs b/sig/hanzoai/request_options.rbs index 28fce412..21c6c02b 100644 --- a/sig/hanzoai/request_options.rbs +++ b/sig/hanzoai/request_options.rbs @@ -13,7 +13,7 @@ module Hanzoai } class RequestOptions < Hanzoai::Internal::Type::BaseModel - def self.validate!: (self | ::Hash[Symbol, top] opts) -> void + def self.validate!: (Hanzoai::request_opts opts) -> void attr_accessor idempotency_key: String? diff --git a/sig/hanzoai/resources/budget.rbs b/sig/hanzoai/resources/budget.rbs index 470b52b5..a29b4faf 100644 --- a/sig/hanzoai/resources/budget.rbs +++ b/sig/hanzoai/resources/budget.rbs @@ -6,7 +6,7 @@ module Hanzoai ?budget_id: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?model_max_budget: ::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget]?, + ?model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, ?rpm_limit: Integer?, ?soft_budget: Float?, ?tpm_limit: Integer?, @@ -18,7 +18,7 @@ module Hanzoai ?budget_id: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?model_max_budget: ::Hash[Symbol, Hanzoai::Models::BudgetNew::ModelMaxBudget]?, + ?model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, ?rpm_limit: Integer?, ?soft_budget: Float?, ?tpm_limit: Integer?, diff --git a/sig/hanzoai/resources/config/pass_through_endpoint.rbs b/sig/hanzoai/resources/config/pass_through_endpoint.rbs index 1f293aab..6ad4264e 100644 --- a/sig/hanzoai/resources/config/pass_through_endpoint.rbs +++ b/sig/hanzoai/resources/config/pass_through_endpoint.rbs @@ -17,12 +17,12 @@ module Hanzoai def list: ( ?endpoint_id: String?, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::Config::PassThroughEndpointResponse + ) -> Hanzoai::Config::PassThroughEndpointResponse def delete: ( endpoint_id: String, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::Config::PassThroughEndpointResponse + ) -> Hanzoai::Config::PassThroughEndpointResponse def initialize: (client: Hanzoai::Client) -> void end diff --git a/sig/hanzoai/resources/customer.rbs b/sig/hanzoai/resources/customer.rbs index 05861def..3fda96ed 100644 --- a/sig/hanzoai/resources/customer.rbs +++ b/sig/hanzoai/resources/customer.rbs @@ -11,7 +11,7 @@ module Hanzoai ?default_model: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?model_max_budget: ::Hash[Symbol, Hanzoai::Models::CustomerCreateParams::ModelMaxBudget]?, + ?model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, ?rpm_limit: Integer?, ?soft_budget: Float?, ?tpm_limit: Integer?, diff --git a/sig/hanzoai/resources/fine_tuning/jobs.rbs b/sig/hanzoai/resources/fine_tuning/jobs.rbs index d966ad70..48195ef7 100644 --- a/sig/hanzoai/resources/fine_tuning/jobs.rbs +++ b/sig/hanzoai/resources/fine_tuning/jobs.rbs @@ -8,7 +8,7 @@ module Hanzoai custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, model: String, training_file: String, - ?hyperparameters: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters?, + ?hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, ?integrations: ::Array[String]?, ?seed: Integer?, ?suffix: String?, diff --git a/sig/hanzoai/resources/key.rbs b/sig/hanzoai/resources/key.rbs index b47e9d79..6aab80a3 100644 --- a/sig/hanzoai/resources/key.rbs +++ b/sig/hanzoai/resources/key.rbs @@ -94,7 +94,7 @@ module Hanzoai ?user_id: String?, ?llm_changed_by: String, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::GenerateKeyResponse + ) -> Hanzoai::GenerateKeyResponse def regenerate_by_key: ( String path_key, @@ -128,7 +128,7 @@ module Hanzoai ?user_id: String?, ?llm_changed_by: String, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::GenerateKeyResponse? + ) -> Hanzoai::GenerateKeyResponse? def retrieve_info: ( ?key: String?, diff --git a/sig/hanzoai/resources/model.rbs b/sig/hanzoai/resources/model.rbs index 9a3f13dd..7306f3b3 100644 --- a/sig/hanzoai/resources/model.rbs +++ b/sig/hanzoai/resources/model.rbs @@ -6,8 +6,8 @@ module Hanzoai attr_reader update: Hanzoai::Resources::Model::Update def create: ( - llm_params: Hanzoai::Models::ModelCreateParams::LlmParams, - model_info: Hanzoai::Models::ModelInfo, + llm_params: Hanzoai::ModelCreateParams::LlmParams, + model_info: Hanzoai::ModelInfo, model_name: String, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/model/update.rbs b/sig/hanzoai/resources/model/update.rbs index d51dffba..477547fb 100644 --- a/sig/hanzoai/resources/model/update.rbs +++ b/sig/hanzoai/resources/model/update.rbs @@ -3,16 +3,16 @@ module Hanzoai class Model class Update def full: ( - ?llm_params: Hanzoai::Models::Model::UpdateDeployment::LlmParams?, - ?model_info: Hanzoai::Models::ModelInfo?, + ?llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + ?model_info: Hanzoai::ModelInfo?, ?model_name: String?, ?request_options: Hanzoai::request_opts ) -> top def partial: ( String model_id, - ?llm_params: Hanzoai::Models::Model::UpdateDeployment::LlmParams?, - ?model_info: Hanzoai::Models::ModelInfo?, + ?llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + ?model_info: Hanzoai::ModelInfo?, ?model_name: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/team.rbs b/sig/hanzoai/resources/team.rbs index 7b4c1b7e..34e92f95 100644 --- a/sig/hanzoai/resources/team.rbs +++ b/sig/hanzoai/resources/team.rbs @@ -12,7 +12,7 @@ module Hanzoai ?guardrails: ::Array[String]?, ?max_budget: Float?, ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Models::Member], + ?members_with_roles: ::Array[Hanzoai::Member], ?metadata: top?, ?model_aliases: top?, ?models: ::Array[top], diff --git a/test/hanzoai/resources/config/pass_through_endpoint_test.rb b/test/hanzoai/resources/config/pass_through_endpoint_test.rb index 1e6b974e..bd135c99 100644 --- a/test/hanzoai/resources/config/pass_through_endpoint_test.rb +++ b/test/hanzoai/resources/config/pass_through_endpoint_test.rb @@ -29,12 +29,12 @@ def test_list response = @hanzo.config.pass_through_endpoint.list assert_pattern do - response => Hanzoai::Models::Config::PassThroughEndpointResponse + response => Hanzoai::Config::PassThroughEndpointResponse end assert_pattern do response => { - endpoints: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Config::PassThroughGenericEndpoint]) + endpoints: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Config::PassThroughGenericEndpoint]) } end end @@ -45,12 +45,12 @@ def test_delete_required_params response = @hanzo.config.pass_through_endpoint.delete(endpoint_id: "endpoint_id") assert_pattern do - response => Hanzoai::Models::Config::PassThroughEndpointResponse + response => Hanzoai::Config::PassThroughEndpointResponse end assert_pattern do response => { - endpoints: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Config::PassThroughGenericEndpoint]) + endpoints: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Config::PassThroughGenericEndpoint]) } end end diff --git a/test/hanzoai/resources/key_test.rb b/test/hanzoai/resources/key_test.rb index 52de1fbd..32482f29 100644 --- a/test/hanzoai/resources/key_test.rb +++ b/test/hanzoai/resources/key_test.rb @@ -109,7 +109,7 @@ def test_generate response = @hanzo.key.generate assert_pattern do - response => Hanzoai::Models::GenerateKeyResponse + response => Hanzoai::GenerateKeyResponse end assert_pattern do @@ -156,7 +156,7 @@ def test_regenerate_by_key response = @hanzo.key.regenerate_by_key("key") assert_pattern do - response => Hanzoai::Models::GenerateKeyResponse + response => Hanzoai::GenerateKeyResponse end assert_pattern do diff --git a/test/hanzoai/resources/team_test.rb b/test/hanzoai/resources/team_test.rb index 933f7e94..2b791a14 100644 --- a/test/hanzoai/resources/team_test.rb +++ b/test/hanzoai/resources/team_test.rb @@ -24,7 +24,7 @@ def test_create max_budget: Float | nil, max_parallel_requests: Integer | nil, members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - members_with_roles: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member]) | nil, + members_with_roles: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member]) | nil, metadata: Hanzoai::Internal::Type::Unknown | nil, model_id: Integer | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, @@ -90,7 +90,7 @@ def test_add_member_required_params max_budget: Float | nil, max_parallel_requests: Integer | nil, members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - members_with_roles: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Member]) | nil, + members_with_roles: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member]) | nil, metadata: Hanzoai::Internal::Type::Unknown | nil, model_id: Integer | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, From c5554f0368f3e5f6d1c8946e7d51229e27e4bdb9 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 04:19:07 +0000 Subject: [PATCH 072/139] feat: support sorbet aliases at the runtime --- lib/hanzoai/internal.rb | 6 ++ lib/hanzoai/internal/transport/base_client.rb | 47 ++++++++++++++++ .../transport/pooled_net_requester.rb | 14 +++++ lib/hanzoai/internal/type/array_of.rb | 2 +- lib/hanzoai/internal/type/base_model.rb | 21 +++++-- lib/hanzoai/internal/type/converter.rb | 18 ++++++ lib/hanzoai/internal/type/enum.rb | 1 + lib/hanzoai/internal/type/hash_of.rb | 2 +- lib/hanzoai/internal/type/union.rb | 1 + lib/hanzoai/internal/util.rb | 56 +++++++++++++++++++ lib/hanzoai/models.rb | 27 +++++++++ .../models/fine_tuning/job_create_params.rb | 12 ++++ .../models/global/spend_list_tags_response.rb | 16 ++++++ .../global/spend_retrieve_report_response.rb | 16 ++++++ lib/hanzoai/models/guardrail_list_response.rb | 4 ++ .../models/health_check_services_params.rb | 4 ++ lib/hanzoai/models/key_block_response.rb | 4 ++ lib/hanzoai/models/key_list_response.rb | 8 +++ lib/hanzoai/models/model/update_deployment.rb | 16 ++++++ lib/hanzoai/models/model_create_params.rb | 16 ++++++ .../organization/info_retrieve_response.rb | 4 ++ .../models/organization_add_member_params.rb | 4 ++ .../models/organization_delete_response.rb | 4 ++ .../models/organization_list_response.rb | 4 ++ .../models/organization_update_response.rb | 4 ++ .../models/spend_list_logs_response.rb | 16 ++++++ .../models/spend_list_tags_response.rb | 16 ++++++ lib/hanzoai/models/team_add_member_params.rb | 4 ++ .../models/team_add_member_response.rb | 4 ++ lib/hanzoai/models/team_create_response.rb | 4 ++ lib/hanzoai/request_options.rb | 4 ++ rbi/hanzoai/errors.rbi | 2 +- rbi/hanzoai/internal.rbi | 2 + .../internal/transport/base_client.rbi | 26 ++++----- .../transport/pooled_net_requester.rbi | 9 +-- rbi/hanzoai/internal/type/base_model.rbi | 20 +++++-- rbi/hanzoai/internal/type/base_page.rbi | 3 +- rbi/hanzoai/internal/type/converter.rbi | 2 + rbi/hanzoai/internal/type/enum.rbi | 1 + rbi/hanzoai/internal/type/union.rbi | 1 + rbi/hanzoai/internal/util.rbi | 33 +++++++++-- .../models/active_list_callbacks_params.rbi | 5 +- .../models/add_add_allowed_ip_params.rbi | 5 +- .../models/anthropic_create_params.rbi | 5 +- .../models/anthropic_delete_params.rbi | 5 +- .../models/anthropic_modify_params.rbi | 5 +- .../models/anthropic_retrieve_params.rbi | 5 +- .../models/anthropic_update_params.rbi | 5 +- .../models/assemblyai_create_params.rbi | 5 +- .../models/assemblyai_delete_params.rbi | 5 +- .../models/assemblyai_patch_params.rbi | 5 +- .../models/assemblyai_retrieve_params.rbi | 5 +- .../models/assemblyai_update_params.rbi | 5 +- .../models/assistant_create_params.rbi | 5 +- .../models/assistant_delete_params.rbi | 5 +- rbi/hanzoai/models/assistant_list_params.rbi | 5 +- .../models/audio/speech_create_params.rbi | 8 ++- .../audio/transcription_create_params.rbi | 8 ++- rbi/hanzoai/models/azure_call_params.rbi | 5 +- rbi/hanzoai/models/azure_create_params.rbi | 5 +- rbi/hanzoai/models/azure_delete_params.rbi | 5 +- rbi/hanzoai/models/azure_patch_params.rbi | 5 +- rbi/hanzoai/models/azure_update_params.rbi | 5 +- .../batch_cancel_with_provider_params.rbi | 8 ++- rbi/hanzoai/models/batch_create_params.rbi | 5 +- .../batch_create_with_provider_params.rbi | 8 ++- rbi/hanzoai/models/batch_list_params.rbi | 5 +- .../batch_list_with_provider_params.rbi | 8 ++- rbi/hanzoai/models/batch_retrieve_params.rbi | 5 +- .../batch_retrieve_with_provider_params.rbi | 8 ++- .../models/batches/cancel_cancel_params.rbi | 8 ++- rbi/hanzoai/models/bedrock_create_params.rbi | 5 +- rbi/hanzoai/models/bedrock_delete_params.rbi | 5 +- rbi/hanzoai/models/bedrock_patch_params.rbi | 5 +- .../models/bedrock_retrieve_params.rbi | 5 +- rbi/hanzoai/models/bedrock_update_params.rbi | 5 +- rbi/hanzoai/models/block_key_request.rbi | 5 +- rbi/hanzoai/models/block_team_request.rbi | 5 +- rbi/hanzoai/models/block_users.rbi | 3 +- rbi/hanzoai/models/budget_create_params.rbi | 5 +- rbi/hanzoai/models/budget_delete_params.rbi | 5 +- rbi/hanzoai/models/budget_info_params.rbi | 5 +- rbi/hanzoai/models/budget_list_params.rbi | 5 +- rbi/hanzoai/models/budget_new.rbi | 11 +++- rbi/hanzoai/models/budget_settings_params.rbi | 5 +- rbi/hanzoai/models/budget_update_params.rbi | 5 +- .../cache/redi_retrieve_info_params.rbi | 8 ++- rbi/hanzoai/models/cache_delete_params.rbi | 5 +- rbi/hanzoai/models/cache_flush_all_params.rbi | 5 +- rbi/hanzoai/models/cache_ping_params.rbi | 5 +- rbi/hanzoai/models/cache_ping_response.rbi | 5 +- .../models/chat/completion_create_params.rbi | 8 ++- rbi/hanzoai/models/client_get_home_params.rbi | 5 +- rbi/hanzoai/models/cohere_create_params.rbi | 5 +- rbi/hanzoai/models/cohere_delete_params.rbi | 5 +- rbi/hanzoai/models/cohere_modify_params.rbi | 5 +- rbi/hanzoai/models/cohere_retrieve_params.rbi | 5 +- rbi/hanzoai/models/cohere_update_params.rbi | 5 +- .../models/completion_create_params.rbi | 5 +- .../pass_through_endpoint_create_params.rbi | 8 ++- .../pass_through_endpoint_delete_params.rbi | 8 ++- .../pass_through_endpoint_list_params.rbi | 8 ++- .../config/pass_through_endpoint_response.rbi | 8 ++- .../pass_through_endpoint_update_params.rbi | 8 ++- .../config/pass_through_generic_endpoint.rbi | 8 ++- ...igurable_clientside_params_custom_auth.rbi | 8 ++- .../models/credential_create_params.rbi | 5 +- .../models/credential_delete_params.rbi | 5 +- rbi/hanzoai/models/credential_item.rbi | 5 +- rbi/hanzoai/models/credential_list_params.rbi | 5 +- rbi/hanzoai/models/customer_block_params.rbi | 5 +- rbi/hanzoai/models/customer_create_params.rbi | 13 ++++- rbi/hanzoai/models/customer_delete_params.rbi | 5 +- rbi/hanzoai/models/customer_list_params.rbi | 5 +- rbi/hanzoai/models/customer_list_response.rbi | 16 +++++- .../models/customer_retrieve_info_params.rbi | 5 +- .../customer_retrieve_info_response.rbi | 16 +++++- .../models/customer_unblock_params.rbi | 5 +- rbi/hanzoai/models/customer_update_params.rbi | 5 +- .../delete_create_allowed_ip_params.rbi | 8 ++- .../models/embedding_create_params.rbi | 5 +- rbi/hanzoai/models/engine_complete_params.rbi | 5 +- rbi/hanzoai/models/engine_embed_params.rbi | 5 +- .../models/engines/chat_complete_params.rbi | 8 ++- .../models/eu_assemblyai_create_params.rbi | 5 +- .../models/eu_assemblyai_delete_params.rbi | 5 +- .../models/eu_assemblyai_patch_params.rbi | 5 +- .../models/eu_assemblyai_retrieve_params.rbi | 5 +- .../models/eu_assemblyai_update_params.rbi | 5 +- rbi/hanzoai/models/file_create_params.rbi | 5 +- rbi/hanzoai/models/file_delete_params.rbi | 5 +- rbi/hanzoai/models/file_list_params.rbi | 5 +- rbi/hanzoai/models/file_retrieve_params.rbi | 5 +- .../models/files/content_retrieve_params.rbi | 8 ++- .../models/fine_tuning/job_create_params.rbi | 15 ++++- .../models/fine_tuning/job_list_params.rbi | 8 ++- .../fine_tuning/job_retrieve_params.rbi | 8 ++- .../fine_tuning/jobs/cancel_create_params.rbi | 7 ++- rbi/hanzoai/models/gemini_create_params.rbi | 5 +- rbi/hanzoai/models/gemini_delete_params.rbi | 5 +- rbi/hanzoai/models/gemini_patch_params.rbi | 5 +- rbi/hanzoai/models/gemini_retrieve_params.rbi | 5 +- rbi/hanzoai/models/gemini_update_params.rbi | 5 +- rbi/hanzoai/models/generate_key_response.rbi | 5 +- .../models/global/spend_list_tags_params.rbi | 8 ++- .../global/spend_list_tags_response.rbi | 8 ++- .../models/global/spend_reset_params.rbi | 5 +- .../global/spend_retrieve_report_params.rbi | 8 ++- .../global/spend_retrieve_report_response.rbi | 8 ++- rbi/hanzoai/models/guardrail_list_params.rbi | 5 +- .../models/guardrail_list_response.rbi | 23 +++++++- .../models/health_check_all_params.rbi | 5 +- .../models/health_check_liveliness_params.rbi | 8 ++- .../models/health_check_liveness_params.rbi | 5 +- .../models/health_check_readiness_params.rbi | 5 +- .../models/health_check_services_params.rbi | 5 +- .../images/generation_create_params.rbi | 8 ++- rbi/hanzoai/models/ip_address.rbi | 3 +- .../models/key/regenerate_key_request.rbi | 8 ++- rbi/hanzoai/models/key_block_params.rbi | 5 +- rbi/hanzoai/models/key_block_response.rbi | 5 +- .../models/key_check_health_params.rbi | 5 +- .../models/key_check_health_response.rbi | 16 +++++- rbi/hanzoai/models/key_delete_params.rbi | 5 +- rbi/hanzoai/models/key_generate_params.rbi | 5 +- rbi/hanzoai/models/key_list_params.rbi | 5 +- rbi/hanzoai/models/key_list_response.rbi | 12 +++- .../models/key_regenerate_by_key_params.rbi | 5 +- .../models/key_retrieve_info_params.rbi | 5 +- rbi/hanzoai/models/key_unblock_params.rbi | 5 +- rbi/hanzoai/models/key_update_params.rbi | 5 +- rbi/hanzoai/models/langfuse_create_params.rbi | 5 +- rbi/hanzoai/models/langfuse_delete_params.rbi | 5 +- rbi/hanzoai/models/langfuse_patch_params.rbi | 5 +- .../models/langfuse_retrieve_params.rbi | 5 +- rbi/hanzoai/models/langfuse_update_params.rbi | 5 +- rbi/hanzoai/models/member.rbi | 3 +- rbi/hanzoai/models/model/info_list_params.rbi | 5 +- .../models/model/update_deployment.rbi | 12 +++- .../models/model/update_full_params.rbi | 5 +- .../models/model/update_partial_params.rbi | 8 ++- rbi/hanzoai/models/model_create_params.rbi | 13 ++++- rbi/hanzoai/models/model_delete_params.rbi | 5 +- .../model_group_retrieve_info_params.rbi | 8 ++- rbi/hanzoai/models/model_info.rbi | 3 +- rbi/hanzoai/models/model_list_params.rbi | 5 +- .../models/moderation_create_params.rbi | 5 +- .../openai/deployment_complete_params.rbi | 8 ++- .../models/openai/deployment_embed_params.rbi | 8 ++- .../deployments/chat_complete_params.rbi | 7 ++- rbi/hanzoai/models/openai_create_params.rbi | 5 +- rbi/hanzoai/models/openai_delete_params.rbi | 5 +- rbi/hanzoai/models/openai_patch_params.rbi | 5 +- rbi/hanzoai/models/openai_retrieve_params.rbi | 5 +- rbi/hanzoai/models/openai_update_params.rbi | 5 +- rbi/hanzoai/models/org_member.rbi | 3 +- .../organization/info_deprecated_params.rbi | 8 ++- .../organization/info_retrieve_params.rbi | 8 ++- .../organization/info_retrieve_response.rbi | 43 ++++++++++++-- .../models/organization_add_member_params.rbi | 8 ++- .../organization_add_member_response.rbi | 45 +++++++++++++-- .../models/organization_create_params.rbi | 5 +- .../models/organization_create_response.rbi | 8 ++- .../organization_delete_member_params.rbi | 8 ++- .../models/organization_delete_params.rbi | 5 +- .../models/organization_delete_response.rbi | 46 +++++++++++++-- .../models/organization_list_params.rbi | 5 +- .../models/organization_list_response.rbi | 46 +++++++++++++-- .../organization_update_member_params.rbi | 8 ++- .../organization_update_member_response.rbi | 16 +++++- .../models/organization_update_params.rbi | 5 +- .../models/organization_update_response.rbi | 46 +++++++++++++-- .../models/provider_list_budgets_params.rbi | 5 +- .../models/provider_list_budgets_response.rbi | 16 +++++- rbi/hanzoai/models/rerank_create_params.rbi | 5 +- .../models/rerank_create_v1_params.rbi | 5 +- .../models/rerank_create_v2_params.rbi | 5 +- rbi/hanzoai/models/response_create_params.rbi | 5 +- rbi/hanzoai/models/response_delete_params.rbi | 5 +- .../models/response_retrieve_params.rbi | 5 +- .../responses/input_item_list_params.rbi | 8 ++- rbi/hanzoai/models/route_list_params.rbi | 5 +- .../models/setting_retrieve_params.rbi | 5 +- .../models/spend_calculate_spend_params.rbi | 5 +- rbi/hanzoai/models/spend_list_logs_params.rbi | 5 +- .../models/spend_list_logs_response.rbi | 8 ++- rbi/hanzoai/models/spend_list_tags_params.rbi | 5 +- .../models/spend_list_tags_response.rbi | 8 ++- .../models/team/callback_add_params.rbi | 5 +- .../models/team/callback_retrieve_params.rbi | 8 ++- rbi/hanzoai/models/team/model_add_params.rbi | 5 +- .../models/team/model_remove_params.rbi | 5 +- rbi/hanzoai/models/team_add_member_params.rbi | 5 +- .../models/team_add_member_response.rbi | 53 +++++++++++++++--- rbi/hanzoai/models/team_block_params.rbi | 5 +- rbi/hanzoai/models/team_create_params.rbi | 5 +- rbi/hanzoai/models/team_create_response.rbi | 13 ++++- rbi/hanzoai/models/team_delete_params.rbi | 5 +- .../models/team_disable_logging_params.rbi | 5 +- .../models/team_list_available_params.rbi | 5 +- rbi/hanzoai/models/team_list_params.rbi | 5 +- .../models/team_remove_member_params.rbi | 5 +- .../models/team_retrieve_info_params.rbi | 5 +- rbi/hanzoai/models/team_unblock_params.rbi | 5 +- .../models/team_update_member_params.rbi | 5 +- .../models/team_update_member_response.rbi | 8 ++- rbi/hanzoai/models/team_update_params.rbi | 5 +- rbi/hanzoai/models/test_ping_params.rbi | 5 +- rbi/hanzoai/models/thread_create_params.rbi | 5 +- rbi/hanzoai/models/thread_retrieve_params.rbi | 5 +- .../models/threads/message_create_params.rbi | 8 ++- .../models/threads/message_list_params.rbi | 8 ++- .../models/threads/run_create_params.rbi | 5 +- rbi/hanzoai/models/user_create_params.rbi | 5 +- rbi/hanzoai/models/user_create_response.rbi | 5 +- rbi/hanzoai/models/user_delete_params.rbi | 5 +- rbi/hanzoai/models/user_list_params.rbi | 5 +- .../models/user_retrieve_info_params.rbi | 5 +- rbi/hanzoai/models/user_update_params.rbi | 5 +- ...til_get_supported_openai_params_params.rbi | 8 ++- .../models/util_token_counter_params.rbi | 5 +- .../models/util_token_counter_response.rbi | 8 ++- .../models/util_transform_request_params.rbi | 5 +- .../util_transform_request_response.rbi | 8 ++- .../models/vertex_ai_create_params.rbi | 5 +- .../models/vertex_ai_delete_params.rbi | 5 +- rbi/hanzoai/models/vertex_ai_patch_params.rbi | 5 +- .../models/vertex_ai_retrieve_params.rbi | 5 +- .../models/vertex_ai_update_params.rbi | 5 +- rbi/hanzoai/request_options.rbi | 5 +- sig/hanzoai/internal.rbs | 2 + .../internal/transport/base_client.rbs | 3 +- .../transport/pooled_net_requester.rbs | 2 + sig/hanzoai/internal/type/array_of.rbs | 2 +- sig/hanzoai/internal/type/base_model.rbs | 7 ++- sig/hanzoai/internal/type/converter.rbs | 2 + sig/hanzoai/internal/type/enum.rbs | 1 + sig/hanzoai/internal/type/hash_of.rbs | 2 +- sig/hanzoai/internal/type/union.rbs | 1 + sig/hanzoai/internal/util.rbs | 13 +++++ test/hanzoai/client_test.rb | 7 +-- .../internal/sorbet_runtime_support_test.rb | 49 ++++++++++++++++ test/hanzoai/test_helper.rb | 6 ++ 283 files changed, 1890 insertions(+), 324 deletions(-) create mode 100644 test/hanzoai/internal/sorbet_runtime_support_test.rb diff --git a/lib/hanzoai/internal.rb b/lib/hanzoai/internal.rb index 8bc6d541..ec4e1f7a 100644 --- a/lib/hanzoai/internal.rb +++ b/lib/hanzoai/internal.rb @@ -2,10 +2,16 @@ module Hanzoai module Internal + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + OMIT = Object.new.tap do _1.define_singleton_method(:inspect) { "#<#{Hanzoai::Internal}::OMIT>" } end .freeze + + define_sorbet_constant!(:AnyHash) do + T.type_alias { T::Hash[Symbol, T.anything] } + end end end diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 5c7a1e9d..e9376f80 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -7,6 +7,8 @@ module Transport # # @abstract class BaseClient + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + # from whatwg fetch spec MAX_REDIRECTS = 20 @@ -477,6 +479,51 @@ 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[Hanzoai::Internal::Type::BasePage[Hanzoai::Internal::Type::BaseModel]]), + stream: T.nilable(T::Class[T.anything]), + model: T.nilable(Hanzoai::Internal::Type::Converter::Input), + options: T.nilable(Hanzoai::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/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 146dfabd..5319113d 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -5,6 +5,8 @@ module Internal module Transport # @api private class PooledNetRequester + extend Hanzoai::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/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index 3c46c429..f2983317 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -29,7 +29,7 @@ class ArrayOf # # @option spec [Boolean] :"nil?" # - # @return [Hanzoai::Internal::Type::ArrayOf] + # @return [self] def self.[](...) = new(...) # @api public diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index ffd379b0..84ed4d2a 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -6,6 +6,7 @@ module Type # @abstract class BaseModel extend Hanzoai::Internal::Type::Converter + extend Hanzoai::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 < Hanzoai::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}}] @@ -206,7 +213,7 @@ class << self # # @option state [Integer] :branched # - # @return [Hanzoai::Internal::Type::BaseModel, Object] + # @return [self, Object] def coerce(value, state:) exactness = state.fetch(:exactness) @@ -265,7 +272,7 @@ def coerce(value, state:) # @api private # - # @param value [Hanzoai::Internal::Type::BaseModel, Object] + # @param value [self, Object] # # @param state [Hash{Symbol=>Object}] . # @@ -431,6 +438,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/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index 1fb31ab8..87cc0a40 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -5,6 +5,8 @@ module Internal module Type # @api private module Converter + extend Hanzoai::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(Hanzoai::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/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index edf6a937..4ef42b4b 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -17,6 +17,7 @@ module Type # values safely. module Enum include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport # All of the valid Symbol values for this enum. # diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index e8999195..aae86af7 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -29,7 +29,7 @@ class HashOf # # @option spec [Boolean] :"nil?" # - # @return [Hanzoai::Internal::Type::HashOf] + # @return [self] def self.[](...) = new(...) # @api public diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 5fe5a6a0..286df836 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -6,6 +6,7 @@ module Type # @api private module Union include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport # @api private # diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 8c8bbb51..db0d104c 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/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 Hanzoai::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/hanzoai/models.rb b/lib/hanzoai/models.rb index d92d80c5..67ae33d7 100644 --- a/lib/hanzoai/models.rb +++ b/lib/hanzoai/models.rb @@ -1,6 +1,33 @@ # frozen_string_literal: true module Hanzoai + [Hanzoai::Internal::Type::BaseModel, *Hanzoai::Internal::Type::BaseModel.subclasses].each do |cls| + cls.define_sorbet_constant!(:OrHash) { T.type_alias { T.any(cls, Hanzoai::Internal::AnyHash) } } + end + + [ + *Hanzoai::Internal::Type::Enum.included_modules, + *Hanzoai::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 + ActiveListCallbacksParams = Hanzoai::Models::ActiveListCallbacksParams AddAddAllowedIPParams = Hanzoai::Models::AddAddAllowedIPParams diff --git a/lib/hanzoai/models/fine_tuning/job_create_params.rb b/lib/hanzoai/models/fine_tuning/job_create_params.rb index e7db910c..12df0daf 100644 --- a/lib/hanzoai/models/fine_tuning/job_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_create_params.rb @@ -109,6 +109,10 @@ module BatchSize # @!method self.variants # @return [Array(String, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Integer) } + end end # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier @@ -121,6 +125,10 @@ module LearningRateMultiplier # @!method self.variants # @return [Array(String, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float) } + end end # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#n_epochs @@ -133,6 +141,10 @@ module NEpochs # @!method self.variants # @return [Array(String, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Integer) } + end end end end diff --git a/lib/hanzoai/models/global/spend_list_tags_response.rb b/lib/hanzoai/models/global/spend_list_tags_response.rb index 22268d10..ead624f8 100644 --- a/lib/hanzoai/models/global/spend_list_tags_response.rb +++ b/lib/hanzoai/models/global/spend_list_tags_response.rb @@ -136,6 +136,10 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end # @see Hanzoai::Models::Global::SpendListTagsResponseItem#messages @@ -151,6 +155,10 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -168,6 +176,10 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -182,6 +194,10 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end end diff --git a/lib/hanzoai/models/global/spend_retrieve_report_response.rb b/lib/hanzoai/models/global/spend_retrieve_report_response.rb index 8a1c3b50..a4f8dbfc 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_response.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_response.rb @@ -140,6 +140,10 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end # @see Hanzoai::Models::Global::SpendRetrieveReportResponseItem#messages @@ -155,6 +159,10 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -172,6 +180,10 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -186,6 +198,10 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end end diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index 97191443..d0123b05 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -72,6 +72,10 @@ module Mode # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[String]) } + end + # @type [Hanzoai::Internal::Type::Converter] StringArray = Hanzoai::Internal::Type::ArrayOf[String] end diff --git a/lib/hanzoai/models/health_check_services_params.rb b/lib/hanzoai/models/health_check_services_params.rb index 52e636ea..d2c2661b 100644 --- a/lib/hanzoai/models/health_check_services_params.rb +++ b/lib/hanzoai/models/health_check_services_params.rb @@ -43,6 +43,10 @@ module Service # @!method self.variants # @return [Array(Symbol, String)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol, String) } + end + # @!group SLACK_BUDGET_ALERTS = :slack_budget_alerts diff --git a/lib/hanzoai/models/key_block_response.rb b/lib/hanzoai/models/key_block_response.rb index 08b207b5..94283ef3 100644 --- a/lib/hanzoai/models/key_block_response.rb +++ b/lib/hanzoai/models/key_block_response.rb @@ -192,6 +192,10 @@ module Expires # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end end end diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index c90aa678..22328173 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -471,6 +471,10 @@ module Expires # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can @@ -504,6 +508,10 @@ module UserRole # @!method self.variants # @return [Array(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth) } + end end end end diff --git a/lib/hanzoai/models/model/update_deployment.rb b/lib/hanzoai/models/model/update_deployment.rb index 66e8a71f..2dee1ec0 100644 --- a/lib/hanzoai/models/model/update_deployment.rb +++ b/lib/hanzoai/models/model/update_deployment.rb @@ -231,6 +231,10 @@ module ConfigurableClientsideAuthParam # @!method self.variants # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) } + end end # @see Hanzoai::Model::UpdateDeployment::LlmParams#stream_timeout @@ -243,6 +247,10 @@ module StreamTimeout # @!method self.variants # @return [Array(Float, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Float, String) } + end end # @see Hanzoai::Model::UpdateDeployment::LlmParams#timeout @@ -255,6 +263,10 @@ module Timeout # @!method self.variants # @return [Array(Float, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Float, String) } + end end # @see Hanzoai::Model::UpdateDeployment::LlmParams#vertex_credentials @@ -267,6 +279,10 @@ module VertexCredentials # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index 62ab843c..5b7e729e 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -242,6 +242,10 @@ module ConfigurableClientsideAuthParam # @!method self.variants # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) } + end end # @see Hanzoai::ModelCreateParams::LlmParams#stream_timeout @@ -254,6 +258,10 @@ module StreamTimeout # @!method self.variants # @return [Array(Float, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Float, String) } + end end # @see Hanzoai::ModelCreateParams::LlmParams#timeout @@ -266,6 +274,10 @@ module Timeout # @!method self.variants # @return [Array(Float, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Float, String) } + end end # @see Hanzoai::ModelCreateParams::LlmParams#vertex_credentials @@ -278,6 +290,10 @@ module VertexCredentials # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index ef82c598..60c1c16f 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -427,6 +427,10 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/models/organization_add_member_params.rb b/lib/hanzoai/models/organization_add_member_params.rb index 07aae01f..9cf3d6bd 100644 --- a/lib/hanzoai/models/organization_add_member_params.rb +++ b/lib/hanzoai/models/organization_add_member_params.rb @@ -38,6 +38,10 @@ module Member # @!method self.variants # @return [Array(Array, Hanzoai::OrgMember)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T::Array[Hanzoai::OrgMember], Hanzoai::OrgMember) } + end + # @type [Hanzoai::Internal::Type::Converter] OrgMemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::OrgMember }] end diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index b089df63..89eb1474 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -425,6 +425,10 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index d70dba95..0ef7a427 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -425,6 +425,10 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index caabc12b..8ffb4dbe 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -424,6 +424,10 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/models/spend_list_logs_response.rb b/lib/hanzoai/models/spend_list_logs_response.rb index d5ae911a..d0c834bc 100644 --- a/lib/hanzoai/models/spend_list_logs_response.rb +++ b/lib/hanzoai/models/spend_list_logs_response.rb @@ -135,6 +135,10 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end # @see Hanzoai::Models::SpendListLogsResponseItem#messages @@ -150,6 +154,10 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -167,6 +175,10 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -181,6 +193,10 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end end diff --git a/lib/hanzoai/models/spend_list_tags_response.rb b/lib/hanzoai/models/spend_list_tags_response.rb index 6d84d64f..a59e7133 100644 --- a/lib/hanzoai/models/spend_list_tags_response.rb +++ b/lib/hanzoai/models/spend_list_tags_response.rb @@ -135,6 +135,10 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end # @see Hanzoai::Models::SpendListTagsResponseItem#messages @@ -150,6 +154,10 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -167,6 +175,10 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + end + # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -181,6 +193,10 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Time) } + end end end diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index 1fa19be2..a5612742 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -38,6 +38,10 @@ module Member # @!method self.variants # @return [Array(Array, Hanzoai::Member)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T::Array[Hanzoai::Member], Hanzoai::Member) } + end + # @type [Hanzoai::Internal::Type::Converter] MemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Member }] end diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index 2787081d..5864c344 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -474,6 +474,10 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index 159dfa8b..752fc042 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -154,6 +154,10 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(T.anything, String) } + end end end end diff --git a/lib/hanzoai/request_options.rb b/lib/hanzoai/request_options.rb index a28b6fa7..73629ae3 100644 --- a/lib/hanzoai/request_options.rb +++ b/lib/hanzoai/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(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) } + end end end diff --git a/rbi/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi index 23d28fb0..f60031f3 100644 --- a/rbi/hanzoai/errors.rbi +++ b/rbi/hanzoai/errors.rbi @@ -104,7 +104,7 @@ module Hanzoai 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/hanzoai/internal.rbi b/rbi/hanzoai/internal.rbi index a766b2ae..d0e4ed73 100644 --- a/rbi/hanzoai/internal.rbi +++ b/rbi/hanzoai/internal.rbi @@ -2,6 +2,8 @@ module Hanzoai module Internal + extend Hanzoai::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/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi index 1b7d22a2..c32ee759 100644 --- a/rbi/hanzoai/internal/transport/base_client.rbi +++ b/rbi/hanzoai/internal/transport/base_client.rbi @@ -5,9 +5,11 @@ module Hanzoai module Transport # @api private class BaseClient + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + abstract! - RequestComponentsShape = + RequestComponents = T.type_alias do { method: Symbol, @@ -53,7 +55,7 @@ module Hanzoai } end - RequestInputShape = + RequestInput = T.type_alias do { method: Symbol, @@ -74,8 +76,7 @@ module Hanzoai # @api private sig do params( - req: - Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape + req: Hanzoai::Internal::Transport::BaseClient::RequestComponents ).void end def validate!(req) @@ -94,13 +95,10 @@ module Hanzoai # @api private sig do params( - request: - Hanzoai::Internal::Transport::BaseClient::RequestInputShape, + request: Hanzoai::Internal::Transport::BaseClient::RequestInput, status: Integer, response_headers: T.any(T::Hash[String, String], Net::HTTPHeader) - ).returns( - Hanzoai::Internal::Transport::BaseClient::RequestInputShape - ) + ).returns(Hanzoai::Internal::Transport::BaseClient::RequestInput) end def follow_redirect(request, status:, response_headers:) end @@ -167,13 +165,10 @@ module Hanzoai sig do overridable .params( - req: - Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape, + req: Hanzoai::Internal::Transport::BaseClient::RequestComponents, opts: Hanzoai::Internal::AnyHash ) - .returns( - Hanzoai::Internal::Transport::BaseClient::RequestInputShape - ) + .returns(Hanzoai::Internal::Transport::BaseClient::RequestInput) end private def build_request(req, opts) end @@ -191,8 +186,7 @@ module Hanzoai # @api private sig do params( - request: - Hanzoai::Internal::Transport::BaseClient::RequestInputShape, + request: Hanzoai::Internal::Transport::BaseClient::RequestInput, redirect_count: Integer, retry_count: Integer, send_retry_header: T::Boolean diff --git a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi index f85a84d2..f7f89cc2 100644 --- a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi +++ b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi @@ -5,7 +5,9 @@ module Hanzoai module Transport # @api private class PooledNetRequester - RequestShape = + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + + Request = T.type_alias do { method: Symbol, @@ -35,7 +37,7 @@ module Hanzoai sig do params( request: - Hanzoai::Internal::Transport::PooledNetRequester::RequestShape, + Hanzoai::Internal::Transport::PooledNetRequester::Request, blk: T.proc.params(arg0: String).void ).returns([Net::HTTPGenericRequest, T.proc.void]) end @@ -57,8 +59,7 @@ module Hanzoai # @api private sig do params( - request: - Hanzoai::Internal::Transport::PooledNetRequester::RequestShape + request: Hanzoai::Internal::Transport::PooledNetRequester::Request ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) end def execute(request) diff --git a/rbi/hanzoai/internal/type/base_model.rbi b/rbi/hanzoai/internal/type/base_model.rbi index b1c21708..e0a25918 100644 --- a/rbi/hanzoai/internal/type/base_model.rbi +++ b/rbi/hanzoai/internal/type/base_model.rbi @@ -5,10 +5,11 @@ module Hanzoai module Type class BaseModel extend Hanzoai::Internal::Type::Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport abstract! - KnownFieldShape = + KnownField = T.type_alias do { mode: T.nilable(Symbol), @@ -17,19 +18,30 @@ module Hanzoai } end - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Internal::Type::BaseModel, + Hanzoai::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( - Hanzoai::Internal::Type::BaseModel::KnownFieldShape, + Hanzoai::Internal::Type::BaseModel::KnownField, { type_fn: T.proc.returns(Hanzoai::Internal::Type::Converter::Input) @@ -47,7 +59,7 @@ module Hanzoai T::Hash[ Symbol, T.all( - Hanzoai::Internal::Type::BaseModel::KnownFieldShape, + Hanzoai::Internal::Type::BaseModel::KnownField, { type: Hanzoai::Internal::Type::Converter::Input } ) ] diff --git a/rbi/hanzoai/internal/type/base_page.rbi b/rbi/hanzoai/internal/type/base_page.rbi index acb2aeee..73fb0a85 100644 --- a/rbi/hanzoai/internal/type/base_page.rbi +++ b/rbi/hanzoai/internal/type/base_page.rbi @@ -29,8 +29,7 @@ module Hanzoai sig do params( client: Hanzoai::Internal::Transport::BaseClient, - req: - Hanzoai::Internal::Transport::BaseClient::RequestComponentsShape, + req: Hanzoai::Internal::Transport::BaseClient::RequestComponents, headers: T.any(T::Hash[String, String], Net::HTTPHeader), page_data: T.anything ).void diff --git a/rbi/hanzoai/internal/type/converter.rbi b/rbi/hanzoai/internal/type/converter.rbi index 2ee948da..2b7149f2 100644 --- a/rbi/hanzoai/internal/type/converter.rbi +++ b/rbi/hanzoai/internal/type/converter.rbi @@ -5,6 +5,8 @@ module Hanzoai module Type # @api private module Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + Input = T.type_alias do T.any(Hanzoai::Internal::Type::Converter, T::Class[T.anything]) diff --git a/rbi/hanzoai/internal/type/enum.rbi b/rbi/hanzoai/internal/type/enum.rbi index 91afb5b2..1c8c3677 100644 --- a/rbi/hanzoai/internal/type/enum.rbi +++ b/rbi/hanzoai/internal/type/enum.rbi @@ -17,6 +17,7 @@ module Hanzoai # values safely. module Enum include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport # All of the valid Symbol values for this enum. sig do diff --git a/rbi/hanzoai/internal/type/union.rbi b/rbi/hanzoai/internal/type/union.rbi index a9e24976..4c4f8522 100644 --- a/rbi/hanzoai/internal/type/union.rbi +++ b/rbi/hanzoai/internal/type/union.rbi @@ -6,6 +6,7 @@ module Hanzoai # @api private module Union include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport # @api private # diff --git a/rbi/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi index 407b0b98..6f4dd4d4 100644 --- a/rbi/hanzoai/internal/util.rbi +++ b/rbi/hanzoai/internal/util.rbi @@ -4,6 +4,8 @@ module Hanzoai module Internal # @api private module Util + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + # @api private sig { returns(Float) } def self.monotonic_secs @@ -172,7 +174,7 @@ module Hanzoai end end - ParsedUriShape = + ParsedUri = T.type_alias do { scheme: T.nilable(String), @@ -187,7 +189,7 @@ module Hanzoai # @api private sig do params(url: T.any(URI::Generic, String)).returns( - Hanzoai::Internal::Util::ParsedUriShape + Hanzoai::Internal::Util::ParsedUri ) end def parse_uri(url) @@ -195,7 +197,7 @@ module Hanzoai # @api private sig do - params(parsed: Hanzoai::Internal::Util::ParsedUriShape).returns( + params(parsed: Hanzoai::Internal::Util::ParsedUri).returns( URI::Generic ) end @@ -205,8 +207,8 @@ module Hanzoai # @api private sig do params( - lhs: Hanzoai::Internal::Util::ParsedUriShape, - rhs: Hanzoai::Internal::Util::ParsedUriShape + lhs: Hanzoai::Internal::Util::ParsedUri, + rhs: Hanzoai::Internal::Util::ParsedUri ).returns(URI::Generic) end def join_parsed_uri(lhs, rhs) @@ -423,6 +425,27 @@ module Hanzoai 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/hanzoai/models/active_list_callbacks_params.rbi b/rbi/hanzoai/models/active_list_callbacks_params.rbi index 8a797448..314660bb 100644 --- a/rbi/hanzoai/models/active_list_callbacks_params.rbi +++ b/rbi/hanzoai/models/active_list_callbacks_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ActiveListCallbacksParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/add_add_allowed_ip_params.rbi b/rbi/hanzoai/models/add_add_allowed_ip_params.rbi index 4a61e794..f87b7e46 100644 --- a/rbi/hanzoai/models/add_add_allowed_ip_params.rbi +++ b/rbi/hanzoai/models/add_add_allowed_ip_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AddAddAllowedIPParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/anthropic_create_params.rbi b/rbi/hanzoai/models/anthropic_create_params.rbi index e6097597..b27844d2 100644 --- a/rbi/hanzoai/models/anthropic_create_params.rbi +++ b/rbi/hanzoai/models/anthropic_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AnthropicCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/anthropic_delete_params.rbi b/rbi/hanzoai/models/anthropic_delete_params.rbi index 00bee6ff..f1958df5 100644 --- a/rbi/hanzoai/models/anthropic_delete_params.rbi +++ b/rbi/hanzoai/models/anthropic_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AnthropicDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/anthropic_modify_params.rbi b/rbi/hanzoai/models/anthropic_modify_params.rbi index 13aa4a56..5c531b92 100644 --- a/rbi/hanzoai/models/anthropic_modify_params.rbi +++ b/rbi/hanzoai/models/anthropic_modify_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AnthropicModifyParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/anthropic_retrieve_params.rbi b/rbi/hanzoai/models/anthropic_retrieve_params.rbi index 5b67e2a7..05316586 100644 --- a/rbi/hanzoai/models/anthropic_retrieve_params.rbi +++ b/rbi/hanzoai/models/anthropic_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AnthropicRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/anthropic_update_params.rbi b/rbi/hanzoai/models/anthropic_update_params.rbi index 2482d504..cb85b832 100644 --- a/rbi/hanzoai/models/anthropic_update_params.rbi +++ b/rbi/hanzoai/models/anthropic_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AnthropicUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assemblyai_create_params.rbi b/rbi/hanzoai/models/assemblyai_create_params.rbi index 1b97817d..82c1c48a 100644 --- a/rbi/hanzoai/models/assemblyai_create_params.rbi +++ b/rbi/hanzoai/models/assemblyai_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssemblyaiCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assemblyai_delete_params.rbi b/rbi/hanzoai/models/assemblyai_delete_params.rbi index a608c6c2..431ac782 100644 --- a/rbi/hanzoai/models/assemblyai_delete_params.rbi +++ b/rbi/hanzoai/models/assemblyai_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssemblyaiDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assemblyai_patch_params.rbi b/rbi/hanzoai/models/assemblyai_patch_params.rbi index fd5355f7..fc5906fb 100644 --- a/rbi/hanzoai/models/assemblyai_patch_params.rbi +++ b/rbi/hanzoai/models/assemblyai_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssemblyaiPatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assemblyai_retrieve_params.rbi b/rbi/hanzoai/models/assemblyai_retrieve_params.rbi index 2333ea85..168874e7 100644 --- a/rbi/hanzoai/models/assemblyai_retrieve_params.rbi +++ b/rbi/hanzoai/models/assemblyai_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssemblyaiRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assemblyai_update_params.rbi b/rbi/hanzoai/models/assemblyai_update_params.rbi index 040af6ad..0d7bbc72 100644 --- a/rbi/hanzoai/models/assemblyai_update_params.rbi +++ b/rbi/hanzoai/models/assemblyai_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssemblyaiUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assistant_create_params.rbi b/rbi/hanzoai/models/assistant_create_params.rbi index 6c4b382d..241f98fb 100644 --- a/rbi/hanzoai/models/assistant_create_params.rbi +++ b/rbi/hanzoai/models/assistant_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssistantCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assistant_delete_params.rbi b/rbi/hanzoai/models/assistant_delete_params.rbi index b57efa14..ccd74a8e 100644 --- a/rbi/hanzoai/models/assistant_delete_params.rbi +++ b/rbi/hanzoai/models/assistant_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssistantDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/assistant_list_params.rbi b/rbi/hanzoai/models/assistant_list_params.rbi index 6fe8fe67..9bcf84a9 100644 --- a/rbi/hanzoai/models/assistant_list_params.rbi +++ b/rbi/hanzoai/models/assistant_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AssistantListParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/audio/speech_create_params.rbi b/rbi/hanzoai/models/audio/speech_create_params.rbi index d6f761e5..dfb2a73b 100644 --- a/rbi/hanzoai/models/audio/speech_create_params.rbi +++ b/rbi/hanzoai/models/audio/speech_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Audio::SpeechCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/audio/transcription_create_params.rbi b/rbi/hanzoai/models/audio/transcription_create_params.rbi index ad779b8e..4ecefa1b 100644 --- a/rbi/hanzoai/models/audio/transcription_create_params.rbi +++ b/rbi/hanzoai/models/audio/transcription_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Audio::TranscriptionCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } attr_accessor :file diff --git a/rbi/hanzoai/models/azure_call_params.rbi b/rbi/hanzoai/models/azure_call_params.rbi index 97e9cd68..5809c61c 100644 --- a/rbi/hanzoai/models/azure_call_params.rbi +++ b/rbi/hanzoai/models/azure_call_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AzureCallParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/azure_create_params.rbi b/rbi/hanzoai/models/azure_create_params.rbi index cc5cccb4..b87ed43e 100644 --- a/rbi/hanzoai/models/azure_create_params.rbi +++ b/rbi/hanzoai/models/azure_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AzureCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/azure_delete_params.rbi b/rbi/hanzoai/models/azure_delete_params.rbi index 98a9fe03..632ca5e3 100644 --- a/rbi/hanzoai/models/azure_delete_params.rbi +++ b/rbi/hanzoai/models/azure_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AzureDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/azure_patch_params.rbi b/rbi/hanzoai/models/azure_patch_params.rbi index 90c9b7d2..d5a39c29 100644 --- a/rbi/hanzoai/models/azure_patch_params.rbi +++ b/rbi/hanzoai/models/azure_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AzurePatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/azure_update_params.rbi b/rbi/hanzoai/models/azure_update_params.rbi index 36238faf..e9184887 100644 --- a/rbi/hanzoai/models/azure_update_params.rbi +++ b/rbi/hanzoai/models/azure_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::AzureUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi b/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi index bf498d36..08be94a4 100644 --- a/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_cancel_with_provider_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::BatchCancelWithProviderParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :provider diff --git a/rbi/hanzoai/models/batch_create_params.rbi b/rbi/hanzoai/models/batch_create_params.rbi index ef04c99f..b7142b3b 100644 --- a/rbi/hanzoai/models/batch_create_params.rbi +++ b/rbi/hanzoai/models/batch_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BatchCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :provider diff --git a/rbi/hanzoai/models/batch_create_with_provider_params.rbi b/rbi/hanzoai/models/batch_create_with_provider_params.rbi index bd5e8466..5f9ff215 100644 --- a/rbi/hanzoai/models/batch_create_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_create_with_provider_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::BatchCreateWithProviderParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/batch_list_params.rbi b/rbi/hanzoai/models/batch_list_params.rbi index 2f303034..4c536632 100644 --- a/rbi/hanzoai/models/batch_list_params.rbi +++ b/rbi/hanzoai/models/batch_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BatchListParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :after diff --git a/rbi/hanzoai/models/batch_list_with_provider_params.rbi b/rbi/hanzoai/models/batch_list_with_provider_params.rbi index ed6c2f7c..24d197ed 100644 --- a/rbi/hanzoai/models/batch_list_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_list_with_provider_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::BatchListWithProviderParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :after diff --git a/rbi/hanzoai/models/batch_retrieve_params.rbi b/rbi/hanzoai/models/batch_retrieve_params.rbi index 53cf0c2b..9c449473 100644 --- a/rbi/hanzoai/models/batch_retrieve_params.rbi +++ b/rbi/hanzoai/models/batch_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BatchRetrieveParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :provider diff --git a/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi b/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi index 16dd7f2c..82e4d02b 100644 --- a/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_retrieve_with_provider_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::BatchRetrieveWithProviderParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :provider diff --git a/rbi/hanzoai/models/batches/cancel_cancel_params.rbi b/rbi/hanzoai/models/batches/cancel_cancel_params.rbi index fb6f5fde..cf876eff 100644 --- a/rbi/hanzoai/models/batches/cancel_cancel_params.rbi +++ b/rbi/hanzoai/models/batches/cancel_cancel_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Batches::CancelCancelParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :provider diff --git a/rbi/hanzoai/models/bedrock_create_params.rbi b/rbi/hanzoai/models/bedrock_create_params.rbi index e6841261..207068f7 100644 --- a/rbi/hanzoai/models/bedrock_create_params.rbi +++ b/rbi/hanzoai/models/bedrock_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BedrockCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/bedrock_delete_params.rbi b/rbi/hanzoai/models/bedrock_delete_params.rbi index 97357929..1e977511 100644 --- a/rbi/hanzoai/models/bedrock_delete_params.rbi +++ b/rbi/hanzoai/models/bedrock_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BedrockDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/bedrock_patch_params.rbi b/rbi/hanzoai/models/bedrock_patch_params.rbi index e7cdf5ae..bfacefd8 100644 --- a/rbi/hanzoai/models/bedrock_patch_params.rbi +++ b/rbi/hanzoai/models/bedrock_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BedrockPatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/bedrock_retrieve_params.rbi b/rbi/hanzoai/models/bedrock_retrieve_params.rbi index c62affa3..393895c7 100644 --- a/rbi/hanzoai/models/bedrock_retrieve_params.rbi +++ b/rbi/hanzoai/models/bedrock_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BedrockRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/bedrock_update_params.rbi b/rbi/hanzoai/models/bedrock_update_params.rbi index 4886aab8..7cd93be0 100644 --- a/rbi/hanzoai/models/bedrock_update_params.rbi +++ b/rbi/hanzoai/models/bedrock_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BedrockUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/block_key_request.rbi b/rbi/hanzoai/models/block_key_request.rbi index 8021e457..1b19f14a 100644 --- a/rbi/hanzoai/models/block_key_request.rbi +++ b/rbi/hanzoai/models/block_key_request.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class BlockKeyRequest < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BlockKeyRequest, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :key diff --git a/rbi/hanzoai/models/block_team_request.rbi b/rbi/hanzoai/models/block_team_request.rbi index 4e23dda1..7f976e31 100644 --- a/rbi/hanzoai/models/block_team_request.rbi +++ b/rbi/hanzoai/models/block_team_request.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class BlockTeamRequest < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BlockTeamRequest, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :team_id diff --git a/rbi/hanzoai/models/block_users.rbi b/rbi/hanzoai/models/block_users.rbi index adff647e..2716d899 100644 --- a/rbi/hanzoai/models/block_users.rbi +++ b/rbi/hanzoai/models/block_users.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models class BlockUsers < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(Hanzoai::BlockUsers, Hanzoai::Internal::AnyHash) } sig { returns(T::Array[String]) } attr_accessor :user_ids diff --git a/rbi/hanzoai/models/budget_create_params.rbi b/rbi/hanzoai/models/budget_create_params.rbi index b12299eb..d1130966 100644 --- a/rbi/hanzoai/models/budget_create_params.rbi +++ b/rbi/hanzoai/models/budget_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BudgetCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/budget_delete_params.rbi b/rbi/hanzoai/models/budget_delete_params.rbi index acd9a8e5..2b17547c 100644 --- a/rbi/hanzoai/models/budget_delete_params.rbi +++ b/rbi/hanzoai/models/budget_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BudgetDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :id diff --git a/rbi/hanzoai/models/budget_info_params.rbi b/rbi/hanzoai/models/budget_info_params.rbi index 0c6b2ff8..b04015cf 100644 --- a/rbi/hanzoai/models/budget_info_params.rbi +++ b/rbi/hanzoai/models/budget_info_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BudgetInfoParams, Hanzoai::Internal::AnyHash) + end sig { returns(T::Array[String]) } attr_accessor :budgets diff --git a/rbi/hanzoai/models/budget_list_params.rbi b/rbi/hanzoai/models/budget_list_params.rbi index 7cfa9728..4d44b3bc 100644 --- a/rbi/hanzoai/models/budget_list_params.rbi +++ b/rbi/hanzoai/models/budget_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BudgetListParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/budget_new.rbi b/rbi/hanzoai/models/budget_new.rbi index 040ac687..0c95a0a8 100644 --- a/rbi/hanzoai/models/budget_new.rbi +++ b/rbi/hanzoai/models/budget_new.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models class BudgetNew < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(Hanzoai::BudgetNew, Hanzoai::Internal::AnyHash) } # Max duration budget should be set for (e.g. '1hr', '1d', '28d') sig { returns(T.nilable(String)) } @@ -95,7 +96,13 @@ module Hanzoai end class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::BudgetNew::ModelMaxBudget, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration diff --git a/rbi/hanzoai/models/budget_settings_params.rbi b/rbi/hanzoai/models/budget_settings_params.rbi index a6ec68c7..ee9e3d10 100644 --- a/rbi/hanzoai/models/budget_settings_params.rbi +++ b/rbi/hanzoai/models/budget_settings_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BudgetSettingsParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :budget_id diff --git a/rbi/hanzoai/models/budget_update_params.rbi b/rbi/hanzoai/models/budget_update_params.rbi index dc98ed44..146e7517 100644 --- a/rbi/hanzoai/models/budget_update_params.rbi +++ b/rbi/hanzoai/models/budget_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::BudgetUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi b/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi index f9e87fee..a48eef58 100644 --- a/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/cache/redi_retrieve_info_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Cache::RediRetrieveInfoParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cache_delete_params.rbi b/rbi/hanzoai/models/cache_delete_params.rbi index 00a7688a..5cb4a764 100644 --- a/rbi/hanzoai/models/cache_delete_params.rbi +++ b/rbi/hanzoai/models/cache_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CacheDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cache_flush_all_params.rbi b/rbi/hanzoai/models/cache_flush_all_params.rbi index 4d99e73f..e39a258c 100644 --- a/rbi/hanzoai/models/cache_flush_all_params.rbi +++ b/rbi/hanzoai/models/cache_flush_all_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CacheFlushAllParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cache_ping_params.rbi b/rbi/hanzoai/models/cache_ping_params.rbi index 4002d9ad..279ddfb5 100644 --- a/rbi/hanzoai/models/cache_ping_params.rbi +++ b/rbi/hanzoai/models/cache_ping_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CachePingParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cache_ping_response.rbi b/rbi/hanzoai/models/cache_ping_response.rbi index 1e7fdcf2..b0a0048e 100644 --- a/rbi/hanzoai/models/cache_ping_response.rbi +++ b/rbi/hanzoai/models/cache_ping_response.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class CachePingResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Models::CachePingResponse, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :cache_type diff --git a/rbi/hanzoai/models/chat/completion_create_params.rbi b/rbi/hanzoai/models/chat/completion_create_params.rbi index 8ed8cc6e..7168ace9 100644 --- a/rbi/hanzoai/models/chat/completion_create_params.rbi +++ b/rbi/hanzoai/models/chat/completion_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :model diff --git a/rbi/hanzoai/models/client_get_home_params.rbi b/rbi/hanzoai/models/client_get_home_params.rbi index 65a5488b..c9fcc83c 100644 --- a/rbi/hanzoai/models/client_get_home_params.rbi +++ b/rbi/hanzoai/models/client_get_home_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ClientGetHomeParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cohere_create_params.rbi b/rbi/hanzoai/models/cohere_create_params.rbi index 2c9f8eda..259b4cd3 100644 --- a/rbi/hanzoai/models/cohere_create_params.rbi +++ b/rbi/hanzoai/models/cohere_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CohereCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cohere_delete_params.rbi b/rbi/hanzoai/models/cohere_delete_params.rbi index 89a7f57d..82af12bf 100644 --- a/rbi/hanzoai/models/cohere_delete_params.rbi +++ b/rbi/hanzoai/models/cohere_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CohereDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cohere_modify_params.rbi b/rbi/hanzoai/models/cohere_modify_params.rbi index bd558af3..05de9be8 100644 --- a/rbi/hanzoai/models/cohere_modify_params.rbi +++ b/rbi/hanzoai/models/cohere_modify_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CohereModifyParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cohere_retrieve_params.rbi b/rbi/hanzoai/models/cohere_retrieve_params.rbi index 248a6199..1ec11d82 100644 --- a/rbi/hanzoai/models/cohere_retrieve_params.rbi +++ b/rbi/hanzoai/models/cohere_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CohereRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/cohere_update_params.rbi b/rbi/hanzoai/models/cohere_update_params.rbi index 8fa78385..eb7bcf69 100644 --- a/rbi/hanzoai/models/cohere_update_params.rbi +++ b/rbi/hanzoai/models/cohere_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CohereUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/completion_create_params.rbi b/rbi/hanzoai/models/completion_create_params.rbi index 62fcdaea..e22d96e8 100644 --- a/rbi/hanzoai/models/completion_create_params.rbi +++ b/rbi/hanzoai/models/completion_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CompletionCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :model diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi index d8c8a13d..275b3303 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Config::PassThroughEndpointCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi index 0130c53f..607685f8 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_delete_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Config::PassThroughEndpointDeleteParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :endpoint_id diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi index 47b45126..227748c7 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Config::PassThroughEndpointListParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :endpoint_id diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi index 6f9be789..c486ba3b 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_response.rbi @@ -4,7 +4,13 @@ module Hanzoai module Models module Config class PassThroughEndpointResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Config::PassThroughEndpointResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T::Array[Hanzoai::Config::PassThroughGenericEndpoint]) } attr_accessor :endpoints diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi index aa28b774..276f9d42 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Config::PassThroughEndpointUpdateParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi b/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi index a9c87ade..013d31b0 100644 --- a/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi +++ b/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi @@ -4,7 +4,13 @@ module Hanzoai module Models module Config class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Config::PassThroughGenericEndpoint, + Hanzoai::Internal::AnyHash + ) + end # Key-value pairs of headers to be forwarded with the request. You can set any key # value pair here and it will be forwarded to your target endpoint diff --git a/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi b/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi index fe8a8524..23bf4039 100644 --- a/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi +++ b/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class ConfigurableClientsideParamsCustomAuth < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::ConfigurableClientsideParamsCustomAuth, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :api_base diff --git a/rbi/hanzoai/models/credential_create_params.rbi b/rbi/hanzoai/models/credential_create_params.rbi index dc718a7f..0e7c0378 100644 --- a/rbi/hanzoai/models/credential_create_params.rbi +++ b/rbi/hanzoai/models/credential_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CredentialCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.anything) } attr_accessor :credential_info diff --git a/rbi/hanzoai/models/credential_delete_params.rbi b/rbi/hanzoai/models/credential_delete_params.rbi index 3879a0da..ab889815 100644 --- a/rbi/hanzoai/models/credential_delete_params.rbi +++ b/rbi/hanzoai/models/credential_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CredentialDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/credential_item.rbi b/rbi/hanzoai/models/credential_item.rbi index 3e6da0eb..7d62e670 100644 --- a/rbi/hanzoai/models/credential_item.rbi +++ b/rbi/hanzoai/models/credential_item.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class CredentialItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CredentialItem, Hanzoai::Internal::AnyHash) + end sig { returns(T.anything) } attr_accessor :credential_info diff --git a/rbi/hanzoai/models/credential_list_params.rbi b/rbi/hanzoai/models/credential_list_params.rbi index 018d194e..cf918408 100644 --- a/rbi/hanzoai/models/credential_list_params.rbi +++ b/rbi/hanzoai/models/credential_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CredentialListParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/customer_block_params.rbi b/rbi/hanzoai/models/customer_block_params.rbi index 10a1f338..b455f023 100644 --- a/rbi/hanzoai/models/customer_block_params.rbi +++ b/rbi/hanzoai/models/customer_block_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CustomerBlockParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/customer_create_params.rbi b/rbi/hanzoai/models/customer_create_params.rbi index 22979c51..0b2bb64f 100644 --- a/rbi/hanzoai/models/customer_create_params.rbi +++ b/rbi/hanzoai/models/customer_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CustomerCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :user_id @@ -182,7 +185,13 @@ module Hanzoai end class ModelMaxBudget < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::CustomerCreateParams::ModelMaxBudget, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration diff --git a/rbi/hanzoai/models/customer_delete_params.rbi b/rbi/hanzoai/models/customer_delete_params.rbi index 6297903d..64c0a441 100644 --- a/rbi/hanzoai/models/customer_delete_params.rbi +++ b/rbi/hanzoai/models/customer_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CustomerDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(T::Array[String]) } attr_accessor :user_ids diff --git a/rbi/hanzoai/models/customer_list_params.rbi b/rbi/hanzoai/models/customer_list_params.rbi index 714ffe24..5c40cf8a 100644 --- a/rbi/hanzoai/models/customer_list_params.rbi +++ b/rbi/hanzoai/models/customer_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CustomerListParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/customer_list_response.rbi b/rbi/hanzoai/models/customer_list_response.rbi index 4d629594..7c999f10 100644 --- a/rbi/hanzoai/models/customer_list_response.rbi +++ b/rbi/hanzoai/models/customer_list_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::CustomerListResponseItem, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T::Boolean) } attr_accessor :blocked @@ -136,7 +142,13 @@ module Hanzoai end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration diff --git a/rbi/hanzoai/models/customer_retrieve_info_params.rbi b/rbi/hanzoai/models/customer_retrieve_info_params.rbi index cc6947bb..53f50ed0 100644 --- a/rbi/hanzoai/models/customer_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/customer_retrieve_info_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CustomerRetrieveInfoParams, Hanzoai::Internal::AnyHash) + end # End User ID in the request parameters sig { returns(String) } diff --git a/rbi/hanzoai/models/customer_retrieve_info_response.rbi b/rbi/hanzoai/models/customer_retrieve_info_response.rbi index 88a2d9ae..0bd082da 100644 --- a/rbi/hanzoai/models/customer_retrieve_info_response.rbi +++ b/rbi/hanzoai/models/customer_retrieve_info_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::CustomerRetrieveInfoResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T::Boolean) } attr_accessor :blocked @@ -138,7 +144,13 @@ module Hanzoai end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration diff --git a/rbi/hanzoai/models/customer_unblock_params.rbi b/rbi/hanzoai/models/customer_unblock_params.rbi index 960412a8..06ed092e 100644 --- a/rbi/hanzoai/models/customer_unblock_params.rbi +++ b/rbi/hanzoai/models/customer_unblock_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CustomerUnblockParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/customer_update_params.rbi b/rbi/hanzoai/models/customer_update_params.rbi index 7d97a5cf..65e5fbb2 100644 --- a/rbi/hanzoai/models/customer_update_params.rbi +++ b/rbi/hanzoai/models/customer_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::CustomerUpdateParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :user_id diff --git a/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi b/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi index d8686c07..6ea29c81 100644 --- a/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi +++ b/rbi/hanzoai/models/delete_create_allowed_ip_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::DeleteCreateAllowedIPParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/embedding_create_params.rbi b/rbi/hanzoai/models/embedding_create_params.rbi index 6cd8adc3..2cf6ef89 100644 --- a/rbi/hanzoai/models/embedding_create_params.rbi +++ b/rbi/hanzoai/models/embedding_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EmbeddingCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :model diff --git a/rbi/hanzoai/models/engine_complete_params.rbi b/rbi/hanzoai/models/engine_complete_params.rbi index 1fe50ac1..d1806d70 100644 --- a/rbi/hanzoai/models/engine_complete_params.rbi +++ b/rbi/hanzoai/models/engine_complete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EngineCompleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/engine_embed_params.rbi b/rbi/hanzoai/models/engine_embed_params.rbi index 58d7a341..11bd66a2 100644 --- a/rbi/hanzoai/models/engine_embed_params.rbi +++ b/rbi/hanzoai/models/engine_embed_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EngineEmbedParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/engines/chat_complete_params.rbi b/rbi/hanzoai/models/engines/chat_complete_params.rbi index 4889aeed..cca91415 100644 --- a/rbi/hanzoai/models/engines/chat_complete_params.rbi +++ b/rbi/hanzoai/models/engines/chat_complete_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/eu_assemblyai_create_params.rbi b/rbi/hanzoai/models/eu_assemblyai_create_params.rbi index b831a7fe..9daaa3a0 100644 --- a/rbi/hanzoai/models/eu_assemblyai_create_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EuAssemblyaiCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi b/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi index ab4a8b06..2f9a5df5 100644 --- a/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EuAssemblyaiDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi b/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi index 1c854ca4..72d1321d 100644 --- a/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EuAssemblyaiPatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi b/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi index c95c5b13..292b6d62 100644 --- a/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EuAssemblyaiRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/eu_assemblyai_update_params.rbi b/rbi/hanzoai/models/eu_assemblyai_update_params.rbi index bc40ed50..c26f1322 100644 --- a/rbi/hanzoai/models/eu_assemblyai_update_params.rbi +++ b/rbi/hanzoai/models/eu_assemblyai_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::EuAssemblyaiUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/file_create_params.rbi b/rbi/hanzoai/models/file_create_params.rbi index e6a7efeb..4cef20e6 100644 --- a/rbi/hanzoai/models/file_create_params.rbi +++ b/rbi/hanzoai/models/file_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::FileCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } attr_accessor :file diff --git a/rbi/hanzoai/models/file_delete_params.rbi b/rbi/hanzoai/models/file_delete_params.rbi index b90d6f18..b72e593e 100644 --- a/rbi/hanzoai/models/file_delete_params.rbi +++ b/rbi/hanzoai/models/file_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::FileDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :provider diff --git a/rbi/hanzoai/models/file_list_params.rbi b/rbi/hanzoai/models/file_list_params.rbi index 807ede2e..502de195 100644 --- a/rbi/hanzoai/models/file_list_params.rbi +++ b/rbi/hanzoai/models/file_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::FileListParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :purpose diff --git a/rbi/hanzoai/models/file_retrieve_params.rbi b/rbi/hanzoai/models/file_retrieve_params.rbi index 69481e19..55b93aa2 100644 --- a/rbi/hanzoai/models/file_retrieve_params.rbi +++ b/rbi/hanzoai/models/file_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::FileRetrieveParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :provider diff --git a/rbi/hanzoai/models/files/content_retrieve_params.rbi b/rbi/hanzoai/models/files/content_retrieve_params.rbi index 584c1ca3..b99f48b6 100644 --- a/rbi/hanzoai/models/files/content_retrieve_params.rbi +++ b/rbi/hanzoai/models/files/content_retrieve_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Files::ContentRetrieveParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :provider diff --git a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi index ebee9dff..fadc3370 100644 --- a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::FineTuning::JobCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig do returns( @@ -144,7 +150,12 @@ module Hanzoai class Hyperparameters < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(T.any(String, Integer))) } attr_accessor :batch_size diff --git a/rbi/hanzoai/models/fine_tuning/job_list_params.rbi b/rbi/hanzoai/models/fine_tuning/job_list_params.rbi index fd3985b6..ba438c78 100644 --- a/rbi/hanzoai/models/fine_tuning/job_list_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_list_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::FineTuning::JobListParams, + Hanzoai::Internal::AnyHash + ) + end sig do returns( diff --git a/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi b/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi index 7147fa35..59671251 100644 --- a/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::FineTuning::JobRetrieveParams, + Hanzoai::Internal::AnyHash + ) + end sig do returns( diff --git a/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi index d07c47ef..6346802d 100644 --- a/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbi @@ -9,7 +9,12 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::FineTuning::Jobs::CancelCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/gemini_create_params.rbi b/rbi/hanzoai/models/gemini_create_params.rbi index 3ad224d0..01fd001e 100644 --- a/rbi/hanzoai/models/gemini_create_params.rbi +++ b/rbi/hanzoai/models/gemini_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::GeminiCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/gemini_delete_params.rbi b/rbi/hanzoai/models/gemini_delete_params.rbi index 67f9855c..78e94df8 100644 --- a/rbi/hanzoai/models/gemini_delete_params.rbi +++ b/rbi/hanzoai/models/gemini_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::GeminiDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/gemini_patch_params.rbi b/rbi/hanzoai/models/gemini_patch_params.rbi index ff634575..6c38904b 100644 --- a/rbi/hanzoai/models/gemini_patch_params.rbi +++ b/rbi/hanzoai/models/gemini_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::GeminiPatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/gemini_retrieve_params.rbi b/rbi/hanzoai/models/gemini_retrieve_params.rbi index 2b5a61d4..78ae71d9 100644 --- a/rbi/hanzoai/models/gemini_retrieve_params.rbi +++ b/rbi/hanzoai/models/gemini_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::GeminiRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/gemini_update_params.rbi b/rbi/hanzoai/models/gemini_update_params.rbi index 7762e708..e1fd58a3 100644 --- a/rbi/hanzoai/models/gemini_update_params.rbi +++ b/rbi/hanzoai/models/gemini_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::GeminiUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/generate_key_response.rbi b/rbi/hanzoai/models/generate_key_response.rbi index b4d9de8f..59a33e75 100644 --- a/rbi/hanzoai/models/generate_key_response.rbi +++ b/rbi/hanzoai/models/generate_key_response.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::GenerateKeyResponse, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(Time)) } attr_accessor :expires diff --git a/rbi/hanzoai/models/global/spend_list_tags_params.rbi b/rbi/hanzoai/models/global/spend_list_tags_params.rbi index b6aebcde..86f0f050 100644 --- a/rbi/hanzoai/models/global/spend_list_tags_params.rbi +++ b/rbi/hanzoai/models/global/spend_list_tags_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Global::SpendListTagsParams, + Hanzoai::Internal::AnyHash + ) + end # Time till which to view key spend sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/global/spend_list_tags_response.rbi b/rbi/hanzoai/models/global/spend_list_tags_response.rbi index aaf11ceb..c320a3c8 100644 --- a/rbi/hanzoai/models/global/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/global/spend_list_tags_response.rbi @@ -4,7 +4,13 @@ module Hanzoai module Models module Global class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::Global::SpendListTagsResponseItem, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :api_key diff --git a/rbi/hanzoai/models/global/spend_reset_params.rbi b/rbi/hanzoai/models/global/spend_reset_params.rbi index 67a4861c..5d1ecc24 100644 --- a/rbi/hanzoai/models/global/spend_reset_params.rbi +++ b/rbi/hanzoai/models/global/spend_reset_params.rbi @@ -7,7 +7,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Global::SpendResetParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi index 45b425f4..d83f1645 100644 --- a/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi +++ b/rbi/hanzoai/models/global/spend_retrieve_report_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Global::SpendRetrieveReportParams, + Hanzoai::Internal::AnyHash + ) + end # View spend for a specific api_key. Example api_key='sk-1234 sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi index 9ba98697..062ea5d9 100644 --- a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi +++ b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi @@ -4,7 +4,13 @@ module Hanzoai module Models module Global class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :api_key diff --git a/rbi/hanzoai/models/guardrail_list_params.rbi b/rbi/hanzoai/models/guardrail_list_params.rbi index fd30a63e..da0a3ca0 100644 --- a/rbi/hanzoai/models/guardrail_list_params.rbi +++ b/rbi/hanzoai/models/guardrail_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::GuardrailListParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/guardrail_list_response.rbi b/rbi/hanzoai/models/guardrail_list_response.rbi index 3fbb8454..345c9463 100644 --- a/rbi/hanzoai/models/guardrail_list_response.rbi +++ b/rbi/hanzoai/models/guardrail_list_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class GuardrailListResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::GuardrailListResponse, + Hanzoai::Internal::AnyHash + ) + end sig do returns(T::Array[Hanzoai::Models::GuardrailListResponse::Guardrail]) @@ -31,7 +37,13 @@ module Hanzoai end class Guardrail < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::GuardrailListResponse::Guardrail, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(T.anything)) } attr_accessor :guardrail_info @@ -84,7 +96,12 @@ module Hanzoai class LlmParams < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :guardrail diff --git a/rbi/hanzoai/models/health_check_all_params.rbi b/rbi/hanzoai/models/health_check_all_params.rbi index 0a24953b..838a4827 100644 --- a/rbi/hanzoai/models/health_check_all_params.rbi +++ b/rbi/hanzoai/models/health_check_all_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::HealthCheckAllParams, Hanzoai::Internal::AnyHash) + end # Specify the model name (optional) sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/health_check_liveliness_params.rbi b/rbi/hanzoai/models/health_check_liveliness_params.rbi index 35263a75..d67e3041 100644 --- a/rbi/hanzoai/models/health_check_liveliness_params.rbi +++ b/rbi/hanzoai/models/health_check_liveliness_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::HealthCheckLivelinessParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/health_check_liveness_params.rbi b/rbi/hanzoai/models/health_check_liveness_params.rbi index d94ac353..53d8522d 100644 --- a/rbi/hanzoai/models/health_check_liveness_params.rbi +++ b/rbi/hanzoai/models/health_check_liveness_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::HealthCheckLivenessParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/health_check_readiness_params.rbi b/rbi/hanzoai/models/health_check_readiness_params.rbi index f79f496b..3ab455f1 100644 --- a/rbi/hanzoai/models/health_check_readiness_params.rbi +++ b/rbi/hanzoai/models/health_check_readiness_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::HealthCheckReadinessParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/health_check_services_params.rbi b/rbi/hanzoai/models/health_check_services_params.rbi index 8c068489..3bbe5fb6 100644 --- a/rbi/hanzoai/models/health_check_services_params.rbi +++ b/rbi/hanzoai/models/health_check_services_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::HealthCheckServicesParams, Hanzoai::Internal::AnyHash) + end # Specify the service being hit. sig do diff --git a/rbi/hanzoai/models/images/generation_create_params.rbi b/rbi/hanzoai/models/images/generation_create_params.rbi index eaec4037..c9018a35 100644 --- a/rbi/hanzoai/models/images/generation_create_params.rbi +++ b/rbi/hanzoai/models/images/generation_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Images::GenerationCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/ip_address.rbi b/rbi/hanzoai/models/ip_address.rbi index c0ea4943..ffff155e 100644 --- a/rbi/hanzoai/models/ip_address.rbi +++ b/rbi/hanzoai/models/ip_address.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models class IPAddress < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(Hanzoai::IPAddress, Hanzoai::Internal::AnyHash) } sig { returns(String) } attr_accessor :ip diff --git a/rbi/hanzoai/models/key/regenerate_key_request.rbi b/rbi/hanzoai/models/key/regenerate_key_request.rbi index 85d5e7eb..52cd9ae3 100644 --- a/rbi/hanzoai/models/key/regenerate_key_request.rbi +++ b/rbi/hanzoai/models/key/regenerate_key_request.rbi @@ -4,7 +4,13 @@ module Hanzoai module Models module Key class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Key::RegenerateKeyRequest, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(T.anything)) } attr_accessor :aliases diff --git a/rbi/hanzoai/models/key_block_params.rbi b/rbi/hanzoai/models/key_block_params.rbi index 67a3bb1c..a896c762 100644 --- a/rbi/hanzoai/models/key_block_params.rbi +++ b/rbi/hanzoai/models/key_block_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyBlockParams, Hanzoai::Internal::AnyHash) + end # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability diff --git a/rbi/hanzoai/models/key_block_response.rbi b/rbi/hanzoai/models/key_block_response.rbi index e91e7c44..befda0ec 100644 --- a/rbi/hanzoai/models/key_block_response.rbi +++ b/rbi/hanzoai/models/key_block_response.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Models::KeyBlockResponse, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :token diff --git a/rbi/hanzoai/models/key_check_health_params.rbi b/rbi/hanzoai/models/key_check_health_params.rbi index 3e7db172..a88924e4 100644 --- a/rbi/hanzoai/models/key_check_health_params.rbi +++ b/rbi/hanzoai/models/key_check_health_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyCheckHealthParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/key_check_health_response.rbi b/rbi/hanzoai/models/key_check_health_response.rbi index e5758d24..b864dfc2 100644 --- a/rbi/hanzoai/models/key_check_health_response.rbi +++ b/rbi/hanzoai/models/key_check_health_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class KeyCheckHealthResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::KeyCheckHealthResponse, + Hanzoai::Internal::AnyHash + ) + end sig do returns( @@ -90,7 +96,13 @@ module Hanzoai end class LoggingCallbacks < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(T::Array[String])) } attr_reader :callbacks diff --git a/rbi/hanzoai/models/key_delete_params.rbi b/rbi/hanzoai/models/key_delete_params.rbi index 721c11b5..4a2c4fe5 100644 --- a/rbi/hanzoai/models/key_delete_params.rbi +++ b/rbi/hanzoai/models/key_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T::Array[String])) } attr_accessor :key_aliases diff --git a/rbi/hanzoai/models/key_generate_params.rbi b/rbi/hanzoai/models/key_generate_params.rbi index b97e8d89..07934dc2 100644 --- a/rbi/hanzoai/models/key_generate_params.rbi +++ b/rbi/hanzoai/models/key_generate_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyGenerateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T.anything)) } attr_accessor :aliases diff --git a/rbi/hanzoai/models/key_list_params.rbi b/rbi/hanzoai/models/key_list_params.rbi index 51790be1..dfda5dfc 100644 --- a/rbi/hanzoai/models/key_list_params.rbi +++ b/rbi/hanzoai/models/key_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyListParams, Hanzoai::Internal::AnyHash) + end # Include all keys for teams that user is an admin of. sig { returns(T.nilable(T::Boolean)) } diff --git a/rbi/hanzoai/models/key_list_response.rbi b/rbi/hanzoai/models/key_list_response.rbi index 29f32eb7..028f7040 100644 --- a/rbi/hanzoai/models/key_list_response.rbi +++ b/rbi/hanzoai/models/key_list_response.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class KeyListResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Models::KeyListResponse, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(Integer)) } attr_accessor :current_page @@ -93,7 +96,12 @@ module Hanzoai class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :token diff --git a/rbi/hanzoai/models/key_regenerate_by_key_params.rbi b/rbi/hanzoai/models/key_regenerate_by_key_params.rbi index 4a49d9ca..de9730c4 100644 --- a/rbi/hanzoai/models/key_regenerate_by_key_params.rbi +++ b/rbi/hanzoai/models/key_regenerate_by_key_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyRegenerateByKeyParams, Hanzoai::Internal::AnyHash) + end # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability diff --git a/rbi/hanzoai/models/key_retrieve_info_params.rbi b/rbi/hanzoai/models/key_retrieve_info_params.rbi index a29b722c..d03e36af 100644 --- a/rbi/hanzoai/models/key_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/key_retrieve_info_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyRetrieveInfoParams, Hanzoai::Internal::AnyHash) + end # Key in the request parameters sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/key_unblock_params.rbi b/rbi/hanzoai/models/key_unblock_params.rbi index 29c6d7ed..1229b4a2 100644 --- a/rbi/hanzoai/models/key_unblock_params.rbi +++ b/rbi/hanzoai/models/key_unblock_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyUnblockParams, Hanzoai::Internal::AnyHash) + end # The llm-changed-by header enables tracking of actions performed by authorized # users on behalf of other users, providing an audit trail for accountability diff --git a/rbi/hanzoai/models/key_update_params.rbi b/rbi/hanzoai/models/key_update_params.rbi index f08b70e1..015c0c1f 100644 --- a/rbi/hanzoai/models/key_update_params.rbi +++ b/rbi/hanzoai/models/key_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::KeyUpdateParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :key diff --git a/rbi/hanzoai/models/langfuse_create_params.rbi b/rbi/hanzoai/models/langfuse_create_params.rbi index 1864ffe5..3ca1348d 100644 --- a/rbi/hanzoai/models/langfuse_create_params.rbi +++ b/rbi/hanzoai/models/langfuse_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::LangfuseCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/langfuse_delete_params.rbi b/rbi/hanzoai/models/langfuse_delete_params.rbi index cdb8c56d..a26bf33c 100644 --- a/rbi/hanzoai/models/langfuse_delete_params.rbi +++ b/rbi/hanzoai/models/langfuse_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::LangfuseDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/langfuse_patch_params.rbi b/rbi/hanzoai/models/langfuse_patch_params.rbi index ddaa06ba..0fcea135 100644 --- a/rbi/hanzoai/models/langfuse_patch_params.rbi +++ b/rbi/hanzoai/models/langfuse_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::LangfusePatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/langfuse_retrieve_params.rbi b/rbi/hanzoai/models/langfuse_retrieve_params.rbi index 3bb17a95..26cd1b90 100644 --- a/rbi/hanzoai/models/langfuse_retrieve_params.rbi +++ b/rbi/hanzoai/models/langfuse_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::LangfuseRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/langfuse_update_params.rbi b/rbi/hanzoai/models/langfuse_update_params.rbi index 5ca8b602..e8458b65 100644 --- a/rbi/hanzoai/models/langfuse_update_params.rbi +++ b/rbi/hanzoai/models/langfuse_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::LangfuseUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/member.rbi b/rbi/hanzoai/models/member.rbi index bcbfc2df..c3596131 100644 --- a/rbi/hanzoai/models/member.rbi +++ b/rbi/hanzoai/models/member.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models class Member < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(Hanzoai::Member, Hanzoai::Internal::AnyHash) } sig { returns(Hanzoai::Member::Role::OrSymbol) } attr_accessor :role diff --git a/rbi/hanzoai/models/model/info_list_params.rbi b/rbi/hanzoai/models/model/info_list_params.rbi index 81385ca0..8e084eff 100644 --- a/rbi/hanzoai/models/model/info_list_params.rbi +++ b/rbi/hanzoai/models/model/info_list_params.rbi @@ -7,7 +7,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Model::InfoListParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :llm_model_id diff --git a/rbi/hanzoai/models/model/update_deployment.rbi b/rbi/hanzoai/models/model/update_deployment.rbi index 20062e2f..14ba166b 100644 --- a/rbi/hanzoai/models/model/update_deployment.rbi +++ b/rbi/hanzoai/models/model/update_deployment.rbi @@ -4,7 +4,10 @@ module Hanzoai module Models module Model class UpdateDeployment < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Model::UpdateDeployment, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams)) } attr_reader :llm_params @@ -52,7 +55,12 @@ module Hanzoai class LlmParams < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LlmParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :api_base diff --git a/rbi/hanzoai/models/model/update_full_params.rbi b/rbi/hanzoai/models/model/update_full_params.rbi index 4d5c30a4..c79f0a8d 100644 --- a/rbi/hanzoai/models/model/update_full_params.rbi +++ b/rbi/hanzoai/models/model/update_full_params.rbi @@ -7,7 +7,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Model::UpdateFullParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/model/update_partial_params.rbi b/rbi/hanzoai/models/model/update_partial_params.rbi index f728e2f1..2ee34b43 100644 --- a/rbi/hanzoai/models/model/update_partial_params.rbi +++ b/rbi/hanzoai/models/model/update_partial_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdatePartialParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/model_create_params.rbi b/rbi/hanzoai/models/model_create_params.rbi index e1d8091a..924009a4 100644 --- a/rbi/hanzoai/models/model_create_params.rbi +++ b/rbi/hanzoai/models/model_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ModelCreateParams, Hanzoai::Internal::AnyHash) + end # LLM Params with 'model' requirement - used for completions sig { returns(Hanzoai::ModelCreateParams::LlmParams) } @@ -57,7 +60,13 @@ module Hanzoai end class LlmParams < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LlmParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :model diff --git a/rbi/hanzoai/models/model_delete_params.rbi b/rbi/hanzoai/models/model_delete_params.rbi index aa6b45d5..40867eae 100644 --- a/rbi/hanzoai/models/model_delete_params.rbi +++ b/rbi/hanzoai/models/model_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ModelDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :id diff --git a/rbi/hanzoai/models/model_group_retrieve_info_params.rbi b/rbi/hanzoai/models/model_group_retrieve_info_params.rbi index ddca5e69..b8cab048 100644 --- a/rbi/hanzoai/models/model_group_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/model_group_retrieve_info_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelGroupRetrieveInfoParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :model_group diff --git a/rbi/hanzoai/models/model_info.rbi b/rbi/hanzoai/models/model_info.rbi index e872b509..0097a485 100644 --- a/rbi/hanzoai/models/model_info.rbi +++ b/rbi/hanzoai/models/model_info.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models class ModelInfo < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(Hanzoai::ModelInfo, Hanzoai::Internal::AnyHash) } sig { returns(T.nilable(String)) } attr_accessor :id diff --git a/rbi/hanzoai/models/model_list_params.rbi b/rbi/hanzoai/models/model_list_params.rbi index 1b52b106..3fcf9233 100644 --- a/rbi/hanzoai/models/model_list_params.rbi +++ b/rbi/hanzoai/models/model_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ModelListParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T::Boolean)) } attr_accessor :return_wildcard_routes diff --git a/rbi/hanzoai/models/moderation_create_params.rbi b/rbi/hanzoai/models/moderation_create_params.rbi index 109b66e1..b6030fea 100644 --- a/rbi/hanzoai/models/moderation_create_params.rbi +++ b/rbi/hanzoai/models/moderation_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ModerationCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai/deployment_complete_params.rbi b/rbi/hanzoai/models/openai/deployment_complete_params.rbi index 657c99a6..398ba44f 100644 --- a/rbi/hanzoai/models/openai/deployment_complete_params.rbi +++ b/rbi/hanzoai/models/openai/deployment_complete_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::DeploymentCompleteParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai/deployment_embed_params.rbi b/rbi/hanzoai/models/openai/deployment_embed_params.rbi index 682541b2..b0948934 100644 --- a/rbi/hanzoai/models/openai/deployment_embed_params.rbi +++ b/rbi/hanzoai/models/openai/deployment_embed_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::DeploymentEmbedParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi b/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi index 1d9d55c1..33d2a0e6 100644 --- a/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi +++ b/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi @@ -9,7 +9,12 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai_create_params.rbi b/rbi/hanzoai/models/openai_create_params.rbi index 8488d99c..aa7f64a1 100644 --- a/rbi/hanzoai/models/openai_create_params.rbi +++ b/rbi/hanzoai/models/openai_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OpenAICreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai_delete_params.rbi b/rbi/hanzoai/models/openai_delete_params.rbi index 931d8787..7640987b 100644 --- a/rbi/hanzoai/models/openai_delete_params.rbi +++ b/rbi/hanzoai/models/openai_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OpenAIDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai_patch_params.rbi b/rbi/hanzoai/models/openai_patch_params.rbi index 6a8bf533..b514b805 100644 --- a/rbi/hanzoai/models/openai_patch_params.rbi +++ b/rbi/hanzoai/models/openai_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OpenAIPatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai_retrieve_params.rbi b/rbi/hanzoai/models/openai_retrieve_params.rbi index 84750b44..51aeda91 100644 --- a/rbi/hanzoai/models/openai_retrieve_params.rbi +++ b/rbi/hanzoai/models/openai_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OpenAIRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/openai_update_params.rbi b/rbi/hanzoai/models/openai_update_params.rbi index 35dbdfe2..39effa0e 100644 --- a/rbi/hanzoai/models/openai_update_params.rbi +++ b/rbi/hanzoai/models/openai_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OpenAIUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/org_member.rbi b/rbi/hanzoai/models/org_member.rbi index ffa3a28c..6c2af7e1 100644 --- a/rbi/hanzoai/models/org_member.rbi +++ b/rbi/hanzoai/models/org_member.rbi @@ -3,7 +3,8 @@ module Hanzoai module Models class OrgMember < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(Hanzoai::OrgMember, Hanzoai::Internal::AnyHash) } sig { returns(Hanzoai::OrgMember::Role::OrSymbol) } attr_accessor :role diff --git a/rbi/hanzoai/models/organization/info_deprecated_params.rbi b/rbi/hanzoai/models/organization/info_deprecated_params.rbi index fbe91cbe..b08cb8bf 100644 --- a/rbi/hanzoai/models/organization/info_deprecated_params.rbi +++ b/rbi/hanzoai/models/organization/info_deprecated_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Organization::InfoDeprecatedParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T::Array[String]) } attr_accessor :organizations diff --git a/rbi/hanzoai/models/organization/info_retrieve_params.rbi b/rbi/hanzoai/models/organization/info_retrieve_params.rbi index 15217463..445fb451 100644 --- a/rbi/hanzoai/models/organization/info_retrieve_params.rbi +++ b/rbi/hanzoai/models/organization/info_retrieve_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Organization::InfoRetrieveParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :organization_id diff --git a/rbi/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/hanzoai/models/organization/info_retrieve_response.rbi index 20eb0727..9c0fc338 100644 --- a/rbi/hanzoai/models/organization/info_retrieve_response.rbi +++ b/rbi/hanzoai/models/organization/info_retrieve_response.rbi @@ -4,7 +4,13 @@ module Hanzoai module Models module Organization class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::Organization::InfoRetrieveResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :budget_id @@ -179,7 +185,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -244,7 +255,12 @@ module Hanzoai class Member < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::Organization::InfoRetrieveResponse::Member, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -351,7 +367,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -417,7 +438,12 @@ module Hanzoai class Team < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :team_id @@ -591,7 +617,12 @@ module Hanzoai class LlmModelTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :created_by diff --git a/rbi/hanzoai/models/organization_add_member_params.rbi b/rbi/hanzoai/models/organization_add_member_params.rbi index ec235888..75894e0a 100644 --- a/rbi/hanzoai/models/organization_add_member_params.rbi +++ b/rbi/hanzoai/models/organization_add_member_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationAddMemberParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.any(T::Array[Hanzoai::OrgMember], Hanzoai::OrgMember)) } attr_accessor :member diff --git a/rbi/hanzoai/models/organization_add_member_response.rbi b/rbi/hanzoai/models/organization_add_member_response.rbi index cf6ab8b2..c18418c1 100644 --- a/rbi/hanzoai/models/organization_add_member_response.rbi +++ b/rbi/hanzoai/models/organization_add_member_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class OrganizationAddMemberResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationAddMemberResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :organization_id @@ -63,7 +69,13 @@ module Hanzoai end class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -170,7 +182,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -235,7 +252,13 @@ module Hanzoai end class UpdatedUser < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :user_id @@ -379,7 +402,12 @@ module Hanzoai class OrganizationMembership < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -486,7 +514,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration diff --git a/rbi/hanzoai/models/organization_create_params.rbi b/rbi/hanzoai/models/organization_create_params.rbi index 2f7e60b3..e7773823 100644 --- a/rbi/hanzoai/models/organization_create_params.rbi +++ b/rbi/hanzoai/models/organization_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OrganizationCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :organization_alias diff --git a/rbi/hanzoai/models/organization_create_response.rbi b/rbi/hanzoai/models/organization_create_response.rbi index 0e03ec6a..304d70de 100644 --- a/rbi/hanzoai/models/organization_create_response.rbi +++ b/rbi/hanzoai/models/organization_create_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class OrganizationCreateResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationCreateResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :budget_id diff --git a/rbi/hanzoai/models/organization_delete_member_params.rbi b/rbi/hanzoai/models/organization_delete_member_params.rbi index 0c74ce56..2bdd9a45 100644 --- a/rbi/hanzoai/models/organization_delete_member_params.rbi +++ b/rbi/hanzoai/models/organization_delete_member_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationDeleteMemberParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :organization_id diff --git a/rbi/hanzoai/models/organization_delete_params.rbi b/rbi/hanzoai/models/organization_delete_params.rbi index b13075a6..1dd02528 100644 --- a/rbi/hanzoai/models/organization_delete_params.rbi +++ b/rbi/hanzoai/models/organization_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OrganizationDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(T::Array[String]) } attr_accessor :organization_ids diff --git a/rbi/hanzoai/models/organization_delete_response.rbi b/rbi/hanzoai/models/organization_delete_response.rbi index 2171afee..ad0bf40d 100644 --- a/rbi/hanzoai/models/organization_delete_response.rbi +++ b/rbi/hanzoai/models/organization_delete_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationDeleteResponseItem, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :budget_id @@ -169,7 +175,13 @@ module Hanzoai end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -233,7 +245,13 @@ module Hanzoai end class Member < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationDeleteResponseItem::Member, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -340,7 +358,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -405,7 +428,13 @@ module Hanzoai end class Team < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationDeleteResponseItem::Team, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :team_id @@ -579,7 +608,12 @@ module Hanzoai class LlmModelTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :created_by diff --git a/rbi/hanzoai/models/organization_list_params.rbi b/rbi/hanzoai/models/organization_list_params.rbi index a1b2d9b2..d778784e 100644 --- a/rbi/hanzoai/models/organization_list_params.rbi +++ b/rbi/hanzoai/models/organization_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OrganizationListParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/organization_list_response.rbi b/rbi/hanzoai/models/organization_list_response.rbi index e870ed19..2cf86201 100644 --- a/rbi/hanzoai/models/organization_list_response.rbi +++ b/rbi/hanzoai/models/organization_list_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationListResponseItem, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :budget_id @@ -168,7 +174,13 @@ module Hanzoai end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -232,7 +244,13 @@ module Hanzoai end class Member < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationListResponseItem::Member, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -339,7 +357,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -404,7 +427,13 @@ module Hanzoai end class Team < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationListResponseItem::Team, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :team_id @@ -578,7 +607,12 @@ module Hanzoai class LlmModelTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :created_by diff --git a/rbi/hanzoai/models/organization_update_member_params.rbi b/rbi/hanzoai/models/organization_update_member_params.rbi index bbce1f44..0d0c0c16 100644 --- a/rbi/hanzoai/models/organization_update_member_params.rbi +++ b/rbi/hanzoai/models/organization_update_member_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationUpdateMemberParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :organization_id diff --git a/rbi/hanzoai/models/organization_update_member_response.rbi b/rbi/hanzoai/models/organization_update_member_response.rbi index 3a821632..872bb533 100644 --- a/rbi/hanzoai/models/organization_update_member_response.rbi +++ b/rbi/hanzoai/models/organization_update_member_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateMemberResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -109,7 +115,13 @@ module Hanzoai end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration diff --git a/rbi/hanzoai/models/organization_update_params.rbi b/rbi/hanzoai/models/organization_update_params.rbi index 0ca1d0e9..0331c4b6 100644 --- a/rbi/hanzoai/models/organization_update_params.rbi +++ b/rbi/hanzoai/models/organization_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::OrganizationUpdateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :budget_id diff --git a/rbi/hanzoai/models/organization_update_response.rbi b/rbi/hanzoai/models/organization_update_response.rbi index 10405f4c..be6769d4 100644 --- a/rbi/hanzoai/models/organization_update_response.rbi +++ b/rbi/hanzoai/models/organization_update_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :budget_id @@ -160,7 +166,13 @@ module Hanzoai end class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -224,7 +236,13 @@ module Hanzoai end class Member < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateResponse::Member, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -331,7 +349,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -396,7 +419,13 @@ module Hanzoai end class Team < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateResponse::Team, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :team_id @@ -570,7 +599,12 @@ module Hanzoai class LlmModelTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :created_by diff --git a/rbi/hanzoai/models/provider_list_budgets_params.rbi b/rbi/hanzoai/models/provider_list_budgets_params.rbi index 2c25bd81..60f1705b 100644 --- a/rbi/hanzoai/models/provider_list_budgets_params.rbi +++ b/rbi/hanzoai/models/provider_list_budgets_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ProviderListBudgetsParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/provider_list_budgets_response.rbi b/rbi/hanzoai/models/provider_list_budgets_response.rbi index 56147308..fd70af2b 100644 --- a/rbi/hanzoai/models/provider_list_budgets_response.rbi +++ b/rbi/hanzoai/models/provider_list_budgets_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class ProviderListBudgetsResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::ProviderListBudgetsResponse, + Hanzoai::Internal::AnyHash + ) + end sig do returns( @@ -57,7 +63,13 @@ module Hanzoai end class Provider < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::ProviderListBudgetsResponse::Provider, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(Float)) } attr_accessor :budget_limit diff --git a/rbi/hanzoai/models/rerank_create_params.rbi b/rbi/hanzoai/models/rerank_create_params.rbi index f88539f9..543001a5 100644 --- a/rbi/hanzoai/models/rerank_create_params.rbi +++ b/rbi/hanzoai/models/rerank_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::RerankCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/rerank_create_v1_params.rbi b/rbi/hanzoai/models/rerank_create_v1_params.rbi index 224179af..4c4e2540 100644 --- a/rbi/hanzoai/models/rerank_create_v1_params.rbi +++ b/rbi/hanzoai/models/rerank_create_v1_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::RerankCreateV1Params, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/rerank_create_v2_params.rbi b/rbi/hanzoai/models/rerank_create_v2_params.rbi index 35e2724c..50af3d2f 100644 --- a/rbi/hanzoai/models/rerank_create_v2_params.rbi +++ b/rbi/hanzoai/models/rerank_create_v2_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::RerankCreateV2Params, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/response_create_params.rbi b/rbi/hanzoai/models/response_create_params.rbi index ce7ba900..591a458f 100644 --- a/rbi/hanzoai/models/response_create_params.rbi +++ b/rbi/hanzoai/models/response_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ResponseCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/response_delete_params.rbi b/rbi/hanzoai/models/response_delete_params.rbi index 1583b96c..036c6300 100644 --- a/rbi/hanzoai/models/response_delete_params.rbi +++ b/rbi/hanzoai/models/response_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ResponseDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/response_retrieve_params.rbi b/rbi/hanzoai/models/response_retrieve_params.rbi index 41c72a1b..7e37e6d3 100644 --- a/rbi/hanzoai/models/response_retrieve_params.rbi +++ b/rbi/hanzoai/models/response_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ResponseRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/responses/input_item_list_params.rbi b/rbi/hanzoai/models/responses/input_item_list_params.rbi index 1903895d..5173a646 100644 --- a/rbi/hanzoai/models/responses/input_item_list_params.rbi +++ b/rbi/hanzoai/models/responses/input_item_list_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Responses::InputItemListParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/route_list_params.rbi b/rbi/hanzoai/models/route_list_params.rbi index be477846..04b1e1d4 100644 --- a/rbi/hanzoai/models/route_list_params.rbi +++ b/rbi/hanzoai/models/route_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::RouteListParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/setting_retrieve_params.rbi b/rbi/hanzoai/models/setting_retrieve_params.rbi index ed99e660..18955e33 100644 --- a/rbi/hanzoai/models/setting_retrieve_params.rbi +++ b/rbi/hanzoai/models/setting_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::SettingRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/spend_calculate_spend_params.rbi b/rbi/hanzoai/models/spend_calculate_spend_params.rbi index a3f68463..5d9855c7 100644 --- a/rbi/hanzoai/models/spend_calculate_spend_params.rbi +++ b/rbi/hanzoai/models/spend_calculate_spend_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::SpendCalculateSpendParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T.anything)) } attr_accessor :completion_response diff --git a/rbi/hanzoai/models/spend_list_logs_params.rbi b/rbi/hanzoai/models/spend_list_logs_params.rbi index e542e844..86435757 100644 --- a/rbi/hanzoai/models/spend_list_logs_params.rbi +++ b/rbi/hanzoai/models/spend_list_logs_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::SpendListLogsParams, Hanzoai::Internal::AnyHash) + end # Get spend logs based on api key sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/spend_list_logs_response.rbi b/rbi/hanzoai/models/spend_list_logs_response.rbi index 9b478bf8..0607a5ad 100644 --- a/rbi/hanzoai/models/spend_list_logs_response.rbi +++ b/rbi/hanzoai/models/spend_list_logs_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::SpendListLogsResponseItem, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :api_key diff --git a/rbi/hanzoai/models/spend_list_tags_params.rbi b/rbi/hanzoai/models/spend_list_tags_params.rbi index 9ea5fc41..baab051c 100644 --- a/rbi/hanzoai/models/spend_list_tags_params.rbi +++ b/rbi/hanzoai/models/spend_list_tags_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::SpendListTagsParams, Hanzoai::Internal::AnyHash) + end # Time till which to view key spend sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/spend_list_tags_response.rbi b/rbi/hanzoai/models/spend_list_tags_response.rbi index 51efce78..0cf9e6d5 100644 --- a/rbi/hanzoai/models/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/spend_list_tags_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::SpendListTagsResponseItem, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :api_key diff --git a/rbi/hanzoai/models/team/callback_add_params.rbi b/rbi/hanzoai/models/team/callback_add_params.rbi index 4ee9acf0..93c80568 100644 --- a/rbi/hanzoai/models/team/callback_add_params.rbi +++ b/rbi/hanzoai/models/team/callback_add_params.rbi @@ -7,7 +7,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Team::CallbackAddParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :callback_name diff --git a/rbi/hanzoai/models/team/callback_retrieve_params.rbi b/rbi/hanzoai/models/team/callback_retrieve_params.rbi index ff05e250..b59508ce 100644 --- a/rbi/hanzoai/models/team/callback_retrieve_params.rbi +++ b/rbi/hanzoai/models/team/callback_retrieve_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Team::CallbackRetrieveParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/team/model_add_params.rbi b/rbi/hanzoai/models/team/model_add_params.rbi index 61b6fb87..3cfb5d1a 100644 --- a/rbi/hanzoai/models/team/model_add_params.rbi +++ b/rbi/hanzoai/models/team/model_add_params.rbi @@ -7,7 +7,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Team::ModelAddParams, Hanzoai::Internal::AnyHash) + end sig { returns(T::Array[String]) } attr_accessor :models diff --git a/rbi/hanzoai/models/team/model_remove_params.rbi b/rbi/hanzoai/models/team/model_remove_params.rbi index c3a751e6..cfbb4886 100644 --- a/rbi/hanzoai/models/team/model_remove_params.rbi +++ b/rbi/hanzoai/models/team/model_remove_params.rbi @@ -7,7 +7,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Team::ModelRemoveParams, Hanzoai::Internal::AnyHash) + end sig { returns(T::Array[String]) } attr_accessor :models diff --git a/rbi/hanzoai/models/team_add_member_params.rbi b/rbi/hanzoai/models/team_add_member_params.rbi index d2219439..8a65b65f 100644 --- a/rbi/hanzoai/models/team_add_member_params.rbi +++ b/rbi/hanzoai/models/team_add_member_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamAddMemberParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.any(T::Array[Hanzoai::Member], Hanzoai::Member)) } attr_accessor :member diff --git a/rbi/hanzoai/models/team_add_member_response.rbi b/rbi/hanzoai/models/team_add_member_response.rbi index 46bca597..bb7843cb 100644 --- a/rbi/hanzoai/models/team_add_member_response.rbi +++ b/rbi/hanzoai/models/team_add_member_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :team_id @@ -200,7 +206,13 @@ module Hanzoai end class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :budget_id @@ -269,7 +281,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -334,7 +351,13 @@ module Hanzoai end class UpdatedUser < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :user_id @@ -478,7 +501,12 @@ module Hanzoai class OrganizationMembership < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership, + Hanzoai::Internal::AnyHash + ) + end sig { returns(Time) } attr_accessor :created_at @@ -585,7 +613,12 @@ module Hanzoai class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :budget_duration @@ -651,7 +684,13 @@ module Hanzoai end class LlmModelTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :created_by diff --git a/rbi/hanzoai/models/team_block_params.rbi b/rbi/hanzoai/models/team_block_params.rbi index 5dc63e6c..dc642496 100644 --- a/rbi/hanzoai/models/team_block_params.rbi +++ b/rbi/hanzoai/models/team_block_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamBlockParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/team_create_params.rbi b/rbi/hanzoai/models/team_create_params.rbi index fc842b01..827d9246 100644 --- a/rbi/hanzoai/models/team_create_params.rbi +++ b/rbi/hanzoai/models/team_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T::Array[T.anything])) } attr_reader :admins diff --git a/rbi/hanzoai/models/team_create_response.rbi b/rbi/hanzoai/models/team_create_response.rbi index 51f447b1..9cded3d4 100644 --- a/rbi/hanzoai/models/team_create_response.rbi +++ b/rbi/hanzoai/models/team_create_response.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Models::TeamCreateResponse, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :team_id @@ -168,7 +171,13 @@ module Hanzoai end class LlmModelTable < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::TeamCreateResponse::LlmModelTable, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :created_by diff --git a/rbi/hanzoai/models/team_delete_params.rbi b/rbi/hanzoai/models/team_delete_params.rbi index 40589c73..851a1e5f 100644 --- a/rbi/hanzoai/models/team_delete_params.rbi +++ b/rbi/hanzoai/models/team_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(T::Array[String]) } attr_accessor :team_ids diff --git a/rbi/hanzoai/models/team_disable_logging_params.rbi b/rbi/hanzoai/models/team_disable_logging_params.rbi index 67c1b1c8..412ed031 100644 --- a/rbi/hanzoai/models/team_disable_logging_params.rbi +++ b/rbi/hanzoai/models/team_disable_logging_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamDisableLoggingParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/team_list_available_params.rbi b/rbi/hanzoai/models/team_list_available_params.rbi index b12a4832..8f6eeb3b 100644 --- a/rbi/hanzoai/models/team_list_available_params.rbi +++ b/rbi/hanzoai/models/team_list_available_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamListAvailableParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T.anything)) } attr_reader :response_model diff --git a/rbi/hanzoai/models/team_list_params.rbi b/rbi/hanzoai/models/team_list_params.rbi index bd7f1479..f46de1a7 100644 --- a/rbi/hanzoai/models/team_list_params.rbi +++ b/rbi/hanzoai/models/team_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamListParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(String)) } attr_accessor :organization_id diff --git a/rbi/hanzoai/models/team_remove_member_params.rbi b/rbi/hanzoai/models/team_remove_member_params.rbi index 1bd4eb3a..60773273 100644 --- a/rbi/hanzoai/models/team_remove_member_params.rbi +++ b/rbi/hanzoai/models/team_remove_member_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamRemoveMemberParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :team_id diff --git a/rbi/hanzoai/models/team_retrieve_info_params.rbi b/rbi/hanzoai/models/team_retrieve_info_params.rbi index f3feec02..af50303d 100644 --- a/rbi/hanzoai/models/team_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/team_retrieve_info_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamRetrieveInfoParams, Hanzoai::Internal::AnyHash) + end # Team ID in the request parameters sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/team_unblock_params.rbi b/rbi/hanzoai/models/team_unblock_params.rbi index f0a20baf..f1da409f 100644 --- a/rbi/hanzoai/models/team_unblock_params.rbi +++ b/rbi/hanzoai/models/team_unblock_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamUnblockParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/team_update_member_params.rbi b/rbi/hanzoai/models/team_update_member_params.rbi index 688011d1..68bbb0c1 100644 --- a/rbi/hanzoai/models/team_update_member_params.rbi +++ b/rbi/hanzoai/models/team_update_member_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamUpdateMemberParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :team_id diff --git a/rbi/hanzoai/models/team_update_member_response.rbi b/rbi/hanzoai/models/team_update_member_response.rbi index 58b64efd..9b27277c 100644 --- a/rbi/hanzoai/models/team_update_member_response.rbi +++ b/rbi/hanzoai/models/team_update_member_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class TeamUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::TeamUpdateMemberResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :team_id diff --git a/rbi/hanzoai/models/team_update_params.rbi b/rbi/hanzoai/models/team_update_params.rbi index 1d970251..fea7597b 100644 --- a/rbi/hanzoai/models/team_update_params.rbi +++ b/rbi/hanzoai/models/team_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TeamUpdateParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :team_id diff --git a/rbi/hanzoai/models/test_ping_params.rbi b/rbi/hanzoai/models/test_ping_params.rbi index 4807193c..af5d0af4 100644 --- a/rbi/hanzoai/models/test_ping_params.rbi +++ b/rbi/hanzoai/models/test_ping_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::TestPingParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/thread_create_params.rbi b/rbi/hanzoai/models/thread_create_params.rbi index 69c5832a..803220cb 100644 --- a/rbi/hanzoai/models/thread_create_params.rbi +++ b/rbi/hanzoai/models/thread_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ThreadCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/thread_retrieve_params.rbi b/rbi/hanzoai/models/thread_retrieve_params.rbi index 19c9dcbb..90ef387f 100644 --- a/rbi/hanzoai/models/thread_retrieve_params.rbi +++ b/rbi/hanzoai/models/thread_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::ThreadRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/threads/message_create_params.rbi b/rbi/hanzoai/models/threads/message_create_params.rbi index 0ff5be73..5982c5d0 100644 --- a/rbi/hanzoai/models/threads/message_create_params.rbi +++ b/rbi/hanzoai/models/threads/message_create_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Threads::MessageCreateParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/threads/message_list_params.rbi b/rbi/hanzoai/models/threads/message_list_params.rbi index 88d2a93b..aa64ac09 100644 --- a/rbi/hanzoai/models/threads/message_list_params.rbi +++ b/rbi/hanzoai/models/threads/message_list_params.rbi @@ -7,7 +7,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Threads::MessageListParams, + Hanzoai::Internal::AnyHash + ) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/threads/run_create_params.rbi b/rbi/hanzoai/models/threads/run_create_params.rbi index 599d5438..4022e11a 100644 --- a/rbi/hanzoai/models/threads/run_create_params.rbi +++ b/rbi/hanzoai/models/threads/run_create_params.rbi @@ -7,7 +7,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Threads::RunCreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/user_create_params.rbi b/rbi/hanzoai/models/user_create_params.rbi index 79a0670c..3d4df008 100644 --- a/rbi/hanzoai/models/user_create_params.rbi +++ b/rbi/hanzoai/models/user_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::UserCreateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T.anything)) } attr_accessor :aliases diff --git a/rbi/hanzoai/models/user_create_response.rbi b/rbi/hanzoai/models/user_create_response.rbi index 202a3549..f79230dc 100644 --- a/rbi/hanzoai/models/user_create_response.rbi +++ b/rbi/hanzoai/models/user_create_response.rbi @@ -3,7 +3,10 @@ module Hanzoai module Models class UserCreateResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::Models::UserCreateResponse, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(Time)) } attr_accessor :expires diff --git a/rbi/hanzoai/models/user_delete_params.rbi b/rbi/hanzoai/models/user_delete_params.rbi index 6fc01350..a4df0c1c 100644 --- a/rbi/hanzoai/models/user_delete_params.rbi +++ b/rbi/hanzoai/models/user_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::UserDeleteParams, Hanzoai::Internal::AnyHash) + end sig { returns(T::Array[String]) } attr_accessor :user_ids diff --git a/rbi/hanzoai/models/user_list_params.rbi b/rbi/hanzoai/models/user_list_params.rbi index e23f80db..cd4be690 100644 --- a/rbi/hanzoai/models/user_list_params.rbi +++ b/rbi/hanzoai/models/user_list_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::UserListParams, Hanzoai::Internal::AnyHash) + end # Page number sig { returns(T.nilable(Integer)) } diff --git a/rbi/hanzoai/models/user_retrieve_info_params.rbi b/rbi/hanzoai/models/user_retrieve_info_params.rbi index a7c3b466..d27ba19b 100644 --- a/rbi/hanzoai/models/user_retrieve_info_params.rbi +++ b/rbi/hanzoai/models/user_retrieve_info_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::UserRetrieveInfoParams, Hanzoai::Internal::AnyHash) + end # User ID in the request parameters sig { returns(T.nilable(String)) } diff --git a/rbi/hanzoai/models/user_update_params.rbi b/rbi/hanzoai/models/user_update_params.rbi index 52974fdc..87b8e781 100644 --- a/rbi/hanzoai/models/user_update_params.rbi +++ b/rbi/hanzoai/models/user_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::UserUpdateParams, Hanzoai::Internal::AnyHash) + end sig { returns(T.nilable(T.anything)) } attr_accessor :aliases diff --git a/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi b/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi index 1f388cea..a08ac0dc 100644 --- a/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi +++ b/rbi/hanzoai/models/util_get_supported_openai_params_params.rbi @@ -6,7 +6,13 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::UtilGetSupportedOpenAIParamsParams, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :model diff --git a/rbi/hanzoai/models/util_token_counter_params.rbi b/rbi/hanzoai/models/util_token_counter_params.rbi index 8b6f8823..74cec1b4 100644 --- a/rbi/hanzoai/models/util_token_counter_params.rbi +++ b/rbi/hanzoai/models/util_token_counter_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::UtilTokenCounterParams, Hanzoai::Internal::AnyHash) + end sig { returns(String) } attr_accessor :model diff --git a/rbi/hanzoai/models/util_token_counter_response.rbi b/rbi/hanzoai/models/util_token_counter_response.rbi index 13681d1e..c3bebd30 100644 --- a/rbi/hanzoai/models/util_token_counter_response.rbi +++ b/rbi/hanzoai/models/util_token_counter_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class UtilTokenCounterResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::UtilTokenCounterResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :model_used diff --git a/rbi/hanzoai/models/util_transform_request_params.rbi b/rbi/hanzoai/models/util_transform_request_params.rbi index 3dd7ed60..c096b0b2 100644 --- a/rbi/hanzoai/models/util_transform_request_params.rbi +++ b/rbi/hanzoai/models/util_transform_request_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::UtilTransformRequestParams, Hanzoai::Internal::AnyHash) + end sig { returns(Hanzoai::UtilTransformRequestParams::CallType::OrSymbol) } attr_accessor :call_type diff --git a/rbi/hanzoai/models/util_transform_request_response.rbi b/rbi/hanzoai/models/util_transform_request_response.rbi index b8fc5710..2a2cffa6 100644 --- a/rbi/hanzoai/models/util_transform_request_response.rbi +++ b/rbi/hanzoai/models/util_transform_request_response.rbi @@ -3,7 +3,13 @@ module Hanzoai module Models class UtilTransformRequestResponse < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::UtilTransformRequestResponse, + Hanzoai::Internal::AnyHash + ) + end sig { returns(T.nilable(String)) } attr_accessor :error diff --git a/rbi/hanzoai/models/vertex_ai_create_params.rbi b/rbi/hanzoai/models/vertex_ai_create_params.rbi index 9546ddeb..6d4066a3 100644 --- a/rbi/hanzoai/models/vertex_ai_create_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_create_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::VertexAICreateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/vertex_ai_delete_params.rbi b/rbi/hanzoai/models/vertex_ai_delete_params.rbi index 92e683d7..d3c3e6e3 100644 --- a/rbi/hanzoai/models/vertex_ai_delete_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_delete_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::VertexAIDeleteParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/vertex_ai_patch_params.rbi b/rbi/hanzoai/models/vertex_ai_patch_params.rbi index 1912c8b3..486912fd 100644 --- a/rbi/hanzoai/models/vertex_ai_patch_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_patch_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::VertexAIPatchParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi b/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi index da070dc8..51d2d9e1 100644 --- a/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_retrieve_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::VertexAIRetrieveParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/models/vertex_ai_update_params.rbi b/rbi/hanzoai/models/vertex_ai_update_params.rbi index bd9a4f95..29079e4d 100644 --- a/rbi/hanzoai/models/vertex_ai_update_params.rbi +++ b/rbi/hanzoai/models/vertex_ai_update_params.rbi @@ -6,7 +6,10 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::VertexAIUpdateParams, Hanzoai::Internal::AnyHash) + end sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( diff --git a/rbi/hanzoai/request_options.rbi b/rbi/hanzoai/request_options.rbi index 820b50fd..8ee51b65 100644 --- a/rbi/hanzoai/request_options.rbi +++ b/rbi/hanzoai/request_options.rbi @@ -7,7 +7,10 @@ module Hanzoai # 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 < Hanzoai::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, Hanzoai::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(Hanzoai::RequestOptions, Hanzoai::Internal::AnyHash) + end # @api private sig { params(opts: Hanzoai::RequestOptions::OrHash).void } diff --git a/sig/hanzoai/internal.rbs b/sig/hanzoai/internal.rbs index 3fd5af5b..ef4e2947 100644 --- a/sig/hanzoai/internal.rbs +++ b/sig/hanzoai/internal.rbs @@ -1,5 +1,7 @@ module Hanzoai module Internal + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + OMIT: Object end end diff --git a/sig/hanzoai/internal/transport/base_client.rbs b/sig/hanzoai/internal/transport/base_client.rbs index d0c724fb..1af011ba 100644 --- a/sig/hanzoai/internal/transport/base_client.rbs +++ b/sig/hanzoai/internal/transport/base_client.rbs @@ -2,6 +2,8 @@ module Hanzoai module Internal module Transport class BaseClient + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + type request_components = { method: Symbol, @@ -20,7 +22,6 @@ module Hanzoai model: Hanzoai::Internal::Type::Converter::input?, options: Hanzoai::request_opts? } - type request_input = { method: Symbol, diff --git a/sig/hanzoai/internal/transport/pooled_net_requester.rbs b/sig/hanzoai/internal/transport/pooled_net_requester.rbs index fc8e1d4d..4a818bbb 100644 --- a/sig/hanzoai/internal/transport/pooled_net_requester.rbs +++ b/sig/hanzoai/internal/transport/pooled_net_requester.rbs @@ -2,6 +2,8 @@ module Hanzoai module Internal module Transport class PooledNetRequester + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + type request = { method: Symbol, diff --git a/sig/hanzoai/internal/type/array_of.rbs b/sig/hanzoai/internal/type/array_of.rbs index 6c8b6575..cade9fc7 100644 --- a/sig/hanzoai/internal/type/array_of.rbs +++ b/sig/hanzoai/internal/type/array_of.rbs @@ -9,7 +9,7 @@ module Hanzoai | ^-> Hanzoai::Internal::Type::Converter::input | Hanzoai::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec - ) -> instance + ) -> self def ===: (top other) -> bool diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index e41a44a3..942de723 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -3,10 +3,13 @@ module Hanzoai module Type class BaseModel extend Hanzoai::Internal::Type::Converter + extend Hanzoai::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, (Hanzoai::Internal::Type::BaseModel::known_field & { type_fn: (^-> Hanzoai::Internal::Type::Converter::input) })] @@ -58,10 +61,10 @@ module Hanzoai def self.coerce: ( Hanzoai::Internal::Type::BaseModel | ::Hash[top, top] | top value, state: Hanzoai::Internal::Type::Converter::coerce_state - ) -> (instance | top) + ) -> (self | top) def self.dump: ( - instance | top value, + self | top value, state: Hanzoai::Internal::Type::Converter::dump_state ) -> (::Hash[top, top] | top) diff --git a/sig/hanzoai/internal/type/converter.rbs b/sig/hanzoai/internal/type/converter.rbs index b5e375bf..034007b2 100644 --- a/sig/hanzoai/internal/type/converter.rbs +++ b/sig/hanzoai/internal/type/converter.rbs @@ -2,6 +2,8 @@ module Hanzoai module Internal module Type module Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + type input = Hanzoai::Internal::Type::Converter | Class type coerce_state = diff --git a/sig/hanzoai/internal/type/enum.rbs b/sig/hanzoai/internal/type/enum.rbs index 2e3c23dd..d90c46c3 100644 --- a/sig/hanzoai/internal/type/enum.rbs +++ b/sig/hanzoai/internal/type/enum.rbs @@ -3,6 +3,7 @@ module Hanzoai module Type module Enum include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)] diff --git a/sig/hanzoai/internal/type/hash_of.rbs b/sig/hanzoai/internal/type/hash_of.rbs index 6982435c..2b0d457e 100644 --- a/sig/hanzoai/internal/type/hash_of.rbs +++ b/sig/hanzoai/internal/type/hash_of.rbs @@ -9,7 +9,7 @@ module Hanzoai | ^-> Hanzoai::Internal::Type::Converter::input | Hanzoai::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec - ) -> instance + ) -> self def ===: (top other) -> bool diff --git a/sig/hanzoai/internal/type/union.rbs b/sig/hanzoai/internal/type/union.rbs index c122a3aa..874012a5 100644 --- a/sig/hanzoai/internal/type/union.rbs +++ b/sig/hanzoai/internal/type/union.rbs @@ -3,6 +3,7 @@ module Hanzoai module Type module Union include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport private def self.known_variants: -> ::Array[[Symbol?, (^-> Hanzoai::Internal::Type::Converter::input)]] diff --git a/sig/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index 0c75cda2..98b55b10 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -1,6 +1,8 @@ module Hanzoai module Internal module Util + extend Hanzoai::Internal::Util::SorbetRuntimeSupport + def self?.monotonic_secs: -> Float def self?.arch: -> String @@ -155,6 +157,17 @@ module Hanzoai def self?.decode_sse: ( Enumerable[String] lines ) -> Enumerable[Hanzoai::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/hanzoai/client_test.rb b/test/hanzoai/client_test.rb index 67cce8a9..d4b76a66 100644 --- a/test/hanzoai/client_test.rb +++ b/test/hanzoai/client_test.rb @@ -3,14 +3,9 @@ require_relative "test_helper" class HanzoaiTest < 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/hanzoai/internal/sorbet_runtime_support_test.rb b/test/hanzoai/internal/sorbet_runtime_support_test.rb new file mode 100644 index 00000000..8b74e051 --- /dev/null +++ b/test/hanzoai/internal/sorbet_runtime_support_test.rb @@ -0,0 +1,49 @@ +# frozen_string_literal: true + +require_relative "../test_helper" + +class Hanzoai::Test::SorbetRuntimeSupportTest < Minitest::Test + i_suck_and_my_tests_are_order_dependent! + + module E + extend Hanzoai::Internal::Type::Enum + + define_sorbet_constant!(:TaggedSymbol) { 1 } + end + + module U + extend Hanzoai::Internal::Type::Union + + define_sorbet_constant!(:Variants) { 2 } + end + + class M < Hanzoai::Internal::Type::BaseModel + define_sorbet_constant!(:OrHash) { 3 } + end + + def test_nil_aliases + err = Hanzoai::Internal::Util::SorbetRuntimeSupport::MissingSorbetRuntimeError + + assert_raises(err) { Hanzoai::Internal::AnyHash } + assert_raises(err) { Hanzoai::Internal::Type::Converter::Input } + assert_raises(err) { Hanzoai::Internal::Type::Converter::CoerceState } + assert_raises(err) { Hanzoai::Internal::Type::Converter::DumpState } + assert_raises(err) { Hanzoai::Internal::Type::BaseModel::KnownField } + assert_raises(err) { Hanzoai::Internal::Util::ParsedUri } + assert_raises(err) { Hanzoai::Internal::Util::ServerSentEvent } + assert_raises(err) { Hanzoai::Internal::Transport::BaseClient::RequestComponents } + assert_raises(err) { Hanzoai::Internal::Transport::BaseClient::RequestInput } + assert_raises(err) { Hanzoai::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/hanzoai/test_helper.rb b/test/hanzoai/test_helper.rb index a6890914..aa715a36 100644 --- a/test/hanzoai/test_helper.rb +++ b/test/hanzoai/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 From 5983bea45f64cb7bc96e325b73125878ed3af9e2 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 04:20:42 +0000 Subject: [PATCH 073/139] chore: fix misc linting / minor issues --- .rubocop.yml | 7 ++++++- Rakefile | 2 +- lib/hanzoai.rb | 2 ++ lib/hanzoai/errors.rb | 2 +- rbi/hanzoai/errors.rbi | 2 +- sig/hanzoai/internal/type/array_of.rbs | 2 +- sig/hanzoai/internal/type/base_model.rbs | 6 +++--- sig/hanzoai/internal/type/base_page.rbs | 2 +- sig/hanzoai/internal/type/hash_of.rbs | 2 +- 9 files changed, 17 insertions(+), 10 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 2453ec5c..2bb8d354 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -8,7 +8,7 @@ AllCops: - "bin/*" NewCops: enable SuggestExtensions: false - TargetRubyVersion: 3.1.0 + TargetRubyVersion: 3.2.0 # Whether MFA is required or not should be left to the token configuration. Gemspec/RequireMFA: @@ -112,6 +112,8 @@ Metrics/AbcSize: Metrics/BlockLength: AllowedPatterns: - assert_pattern + - type_alias + - define_sorbet_constant! Exclude: - "**/*.rbi" @@ -182,6 +184,9 @@ Style/ClassAndModuleChildren: Exclude: - "test/**/*" +Style/CommentAnnotation: + Enabled: false + # We should go back and add these docs, but ignore for now. Style/Documentation: Enabled: false diff --git a/Rakefile b/Rakefile index 8361a8b9..fe1523b8 100644 --- a/Rakefile +++ b/Rakefile @@ -41,7 +41,7 @@ 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[rubocop] rubocop += %w[--format github] if ENV.key?("CI") # some lines cannot be shortened diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index 64d7a8b3..f4121dc3 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -1,6 +1,7 @@ # frozen_string_literal: true # Standard libraries. +# rubocop:disable Lint/RedundantRequireStatement require "English" require "cgi" require "date" @@ -15,6 +16,7 @@ require "stringio" require "time" require "uri" +# rubocop:enable Lint/RedundantRequireStatement # We already ship the preferred sorbet manifests in the package itself. # `tapioca` currently does not offer us a way to opt out of unnecessary compilation. diff --git a/lib/hanzoai/errors.rb b/lib/hanzoai/errors.rb index 56405250..d2270347 100644 --- a/lib/hanzoai/errors.rb +++ b/lib/hanzoai/errors.rb @@ -99,7 +99,7 @@ class APIStatusError < Hanzoai::Errors::APIError # @param response [nil] # @param message [String, nil] # - # @return [Hanzoai::Errors::APIStatusError] + # @return [self] def self.for(url:, status:, body:, request:, response:, message: nil) kwargs = { url: url, diff --git a/rbi/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi index f60031f3..23d28fb0 100644 --- a/rbi/hanzoai/errors.rbi +++ b/rbi/hanzoai/errors.rbi @@ -104,7 +104,7 @@ module Hanzoai request: NilClass, response: NilClass, message: T.nilable(String) - ).returns(T.self_type) + ).returns(T.attached_class) end def self.for(url:, status:, body:, request:, response:, message: nil) end diff --git a/sig/hanzoai/internal/type/array_of.rbs b/sig/hanzoai/internal/type/array_of.rbs index cade9fc7..6c8b6575 100644 --- a/sig/hanzoai/internal/type/array_of.rbs +++ b/sig/hanzoai/internal/type/array_of.rbs @@ -9,7 +9,7 @@ module Hanzoai | ^-> Hanzoai::Internal::Type::Converter::input | Hanzoai::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec - ) -> self + ) -> instance def ===: (top other) -> bool diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index 942de723..b4e15f53 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -61,10 +61,10 @@ module Hanzoai def self.coerce: ( Hanzoai::Internal::Type::BaseModel | ::Hash[top, top] | top value, state: Hanzoai::Internal::Type::Converter::coerce_state - ) -> (self | top) + ) -> (instance | top) def self.dump: ( - self | top value, + instance | top value, state: Hanzoai::Internal::Type::Converter::dump_state ) -> (::Hash[top, top] | top) @@ -84,7 +84,7 @@ module Hanzoai def to_yaml: (*top a) -> String - def initialize: (?::Hash[Symbol, top] | self data) -> void + def initialize: (?::Hash[Symbol, top] | instance data) -> void def self.inspect: (?depth: Integer) -> String diff --git a/sig/hanzoai/internal/type/base_page.rbs b/sig/hanzoai/internal/type/base_page.rbs index 23bf0636..91f245d8 100644 --- a/sig/hanzoai/internal/type/base_page.rbs +++ b/sig/hanzoai/internal/type/base_page.rbs @@ -4,7 +4,7 @@ module Hanzoai module BasePage[Elem] def next_page?: -> bool - def next_page: -> self + def next_page: -> instance def auto_paging_each: { (Elem arg0) -> void } -> void diff --git a/sig/hanzoai/internal/type/hash_of.rbs b/sig/hanzoai/internal/type/hash_of.rbs index 2b0d457e..6982435c 100644 --- a/sig/hanzoai/internal/type/hash_of.rbs +++ b/sig/hanzoai/internal/type/hash_of.rbs @@ -9,7 +9,7 @@ module Hanzoai | ^-> Hanzoai::Internal::Type::Converter::input | Hanzoai::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec - ) -> self + ) -> instance def ===: (top other) -> bool From 6204fee065845dc3fa7dd8e169412ee3a0b6a9f8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 04:22:29 +0000 Subject: [PATCH 074/139] feat: expose recursive `#to_h` conversion --- lib/hanzoai/internal/type/base_model.rb | 71 +++++++++++++++--------- rbi/hanzoai/internal/type/base_model.rbi | 29 ++++++---- sig/hanzoai/internal/type/base_model.rbs | 11 ++-- 3 files changed, 71 insertions(+), 40 deletions(-) diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 84ed4d2a..50e75b1d 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -313,6 +313,39 @@ def dump(value, state:) end end + class << self + # @api private + # + # @param model [Hanzoai::Internal::Type::BaseModel] + # @param convert [Boolean] + # + # @return [Hash{Symbol=>Object}] + def recursively_to_h(model, convert:) + rec = ->(x) do + case x + in Hanzoai::Internal::Type::BaseModel + if convert + fields = x.class.known_fields + x.to_h.to_h do |key, val| + [key, rec.call(fields.key?(key) ? x.public_send(key) : val)] + rescue Hanzoai::Errors::ConversionError + [key, rec.call(val)] + end + else + rec.call(x.to_h) + end + in Hash + x.transform_values(&rec) + in Array + x.map(&rec) + else + x + end + end + rec.call(model) + end + end + # @api public # # Returns the raw value associated with the given key, if found. Otherwise, nil is @@ -349,6 +382,14 @@ def to_h = @data alias_method :to_hash, :to_h + # @api public + # + # In addition to the behaviour of `#to_h`, this method will recursively call + # `#to_h` on nested models. + # + # @return [Hash{Symbol=>Object}] + def deep_to_h = self.class.recursively_to_h(@data, convert: false) + # @param keys [Array, nil] # # @return [Hash{Symbol=>Object}] @@ -364,29 +405,6 @@ def deconstruct_keys(keys) .to_h end - class << self - # @api private - # - # @param model [Hanzoai::Internal::Type::BaseModel] - # - # @return [Hash{Symbol=>Object}] - def walk(model) - walk = ->(x) do - case x - in Hanzoai::Internal::Type::BaseModel - walk.call(x.to_h) - in Hash - x.transform_values(&walk) - in Array - x.map(&walk) - else - x - end - end - walk.call(model) - end - end - # @api public # # @param a [Object] @@ -432,12 +450,15 @@ def inspect(depth: 0) # @api public # # @return [String] - def to_s = self.class.walk(@data).to_s + def to_s = deep_to_h.to_s # @api private # # @return [String] - def inspect = "#<#{self.class}:0x#{object_id.to_s(16)} #{self}>" + def inspect + converted = self.class.recursively_to_h(self, convert: true) + "#<#{self.class}:0x#{object_id.to_s(16)} #{converted}>" + end define_sorbet_constant!(:KnownField) do T.type_alias { {mode: T.nilable(Symbol), required: T::Boolean, nilable: T::Boolean} } diff --git a/rbi/hanzoai/internal/type/base_model.rbi b/rbi/hanzoai/internal/type/base_model.rbi index e0a25918..b13267a7 100644 --- a/rbi/hanzoai/internal/type/base_model.rbi +++ b/rbi/hanzoai/internal/type/base_model.rbi @@ -199,6 +199,18 @@ module Hanzoai end end + class << self + # @api private + sig do + params( + model: Hanzoai::Internal::Type::BaseModel, + convert: T::Boolean + ).returns(Hanzoai::Internal::AnyHash) + end + def recursively_to_h(model, convert:) + end + end + # Returns the raw value associated with the given key, if found. Otherwise, nil is # returned. # @@ -233,6 +245,12 @@ module Hanzoai def to_hash end + # In addition to the behaviour of `#to_h`, this method will recursively call + # `#to_h` on nested models. + sig { overridable.returns(Hanzoai::Internal::AnyHash) } + def deep_to_h + end + sig do params(keys: T.nilable(T::Array[Symbol])).returns( Hanzoai::Internal::AnyHash @@ -241,17 +259,6 @@ module Hanzoai def deconstruct_keys(keys) end - class << self - # @api private - sig do - params(model: Hanzoai::Internal::Type::BaseModel).returns( - Hanzoai::Internal::AnyHash - ) - end - def walk(model) - end - end - sig { params(a: T.anything).returns(String) } def to_json(*a) end diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index b4e15f53..19e9e2bf 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -68,17 +68,20 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::dump_state ) -> (::Hash[top, top] | top) + def self.recursively_to_h: ( + Hanzoai::Internal::Type::BaseModel model, + convert: bool + ) -> ::Hash[Symbol, top] + def []: (Symbol key) -> top? def to_h: -> ::Hash[Symbol, top] alias to_hash to_h - def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top] + def deep_to_h: -> ::Hash[Symbol, top] - def self.walk: ( - Hanzoai::Internal::Type::BaseModel model - ) -> ::Hash[Symbol, top] + def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top] def to_json: (*top a) -> String From 3c95282be4dda179ca0b6f77d75ed7c238f849a0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 13 May 2025 04:25:56 +0000 Subject: [PATCH 075/139] feat: expose base client options as read only attributes --- lib/hanzoai/internal/transport/base_client.rb | 35 ++++++++++++++++--- .../internal/transport/base_client.rbi | 21 +++++++++++ .../internal/transport/base_client.rbs | 14 ++++++++ 3 files changed, 65 insertions(+), 5 deletions(-) diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index e9376f80..49dd34af 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -153,6 +153,27 @@ def reap_connection!(status, stream:) end end + # @return [URI::Generic] + attr_reader :base_url + + # @return [Float] + attr_reader :timeout + + # @return [Integer] + attr_reader :max_retries + + # @return [Float] + attr_reader :initial_retry_delay + + # @return [Float] + attr_reader :max_retry_delay + + # @return [Hash{String=>String}] + attr_reader :headers + + # @return [String, nil] + attr_reader :idempotency_header + # @api private # @return [Hanzoai::Internal::Transport::PooledNetRequester] attr_reader :requester @@ -184,10 +205,11 @@ def initialize( }, headers ) - @base_url = Hanzoai::Internal::Util.parse_uri(base_url) + @base_url_components = Hanzoai::Internal::Util.parse_uri(base_url) + @base_url = Hanzoai::Internal::Util.unparse_uri(@base_url_components) @idempotency_header = idempotency_header&.to_s&.downcase - @max_retries = max_retries @timeout = timeout + @max_retries = max_retries @initial_retry_delay = initial_retry_delay @max_retry_delay = max_retry_delay end @@ -278,10 +300,14 @@ def initialize( Hanzoai::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact) end + url = Hanzoai::Internal::Util.join_parsed_uri( + @base_url_components, + {**req, path: path, query: query} + ) headers, encoded = Hanzoai::Internal::Util.encode_content(headers, body) { method: method, - url: Hanzoai::Internal::Util.join_parsed_uri(@base_url, {**req, path: path, query: query}), + url: url, headers: headers, body: encoded, max_retries: opts.fetch(:max_retries, @max_retries), @@ -475,8 +501,7 @@ def request(req) # @return [String] def inspect # rubocop:disable Layout/LineLength - base_url = Hanzoai::Internal::Util.unparse_uri(@base_url) - "#<#{self.class.name}:0x#{object_id.to_s(16)} base_url=#{base_url} max_retries=#{@max_retries} timeout=#{@timeout}>" + "#<#{self.class.name}:0x#{object_id.to_s(16)} base_url=#{@base_url} max_retries=#{@max_retries} timeout=#{@timeout}>" # rubocop:enable Layout/LineLength end diff --git a/rbi/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi index c32ee759..6d72fe6d 100644 --- a/rbi/hanzoai/internal/transport/base_client.rbi +++ b/rbi/hanzoai/internal/transport/base_client.rbi @@ -114,6 +114,27 @@ module Hanzoai end end + sig { returns(URI::Generic) } + attr_reader :base_url + + sig { returns(Float) } + attr_reader :timeout + + sig { returns(Integer) } + attr_reader :max_retries + + sig { returns(Float) } + attr_reader :initial_retry_delay + + sig { returns(Float) } + attr_reader :max_retry_delay + + sig { returns(T::Hash[String, String]) } + attr_reader :headers + + sig { returns(T.nilable(String)) } + attr_reader :idempotency_header + # @api private sig { returns(Hanzoai::Internal::Transport::PooledNetRequester) } attr_reader :requester diff --git a/sig/hanzoai/internal/transport/base_client.rbs b/sig/hanzoai/internal/transport/base_client.rbs index 1af011ba..3400db8a 100644 --- a/sig/hanzoai/internal/transport/base_client.rbs +++ b/sig/hanzoai/internal/transport/base_client.rbs @@ -56,6 +56,20 @@ module Hanzoai stream: Enumerable[String]? ) -> void + attr_reader base_url: URI::Generic + + attr_reader timeout: Float + + attr_reader max_retries: Integer + + attr_reader initial_retry_delay: Float + + attr_reader max_retry_delay: Float + + attr_reader headers: ::Hash[String, String] + + attr_reader idempotency_header: String? + # @api private attr_reader requester: Hanzoai::Internal::Transport::PooledNetRequester From e8ff0ffad487596b3f38f3c29f7d8b3565e0e6f8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 14 May 2025 03:43:35 +0000 Subject: [PATCH 076/139] fix(internal): update gemspec name --- Rakefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index fe1523b8..807c0451 100644 --- a/Rakefile +++ b/Rakefile @@ -147,7 +147,7 @@ multitask(:"build:gem") do sig/* GLOB - sh(*%w[gem build -- openai.gemspec]) + sh(*%w[gem build -- hanzoai.gemspec]) rm_rf(ignore_file) end From 91efac6ce83a648e03738e11230e0e1e6e9542ad Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 15 May 2025 05:23:14 +0000 Subject: [PATCH 077/139] feat: bump default connection pool size limit to minimum of 99 --- lib/hanzoai/client.rb | 8 ++++---- lib/hanzoai/internal/transport/pooled_net_requester.rb | 4 +++- rbi/hanzoai/internal/transport/pooled_net_requester.rbi | 6 +++++- sig/hanzoai/internal/transport/pooled_net_requester.rbs | 2 ++ 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/lib/hanzoai/client.rb b/lib/hanzoai/client.rb index e0ee58f4..6855abca 100644 --- a/lib/hanzoai/client.rb +++ b/lib/hanzoai/client.rb @@ -219,10 +219,10 @@ def initialize( api_key: ENV["HANZO_API_KEY"], environment: nil, base_url: ENV["HANZO_BASE_URL"], - max_retries: Hanzoai::Client::DEFAULT_MAX_RETRIES, - timeout: Hanzoai::Client::DEFAULT_TIMEOUT_IN_SECONDS, - initial_retry_delay: Hanzoai::Client::DEFAULT_INITIAL_RETRY_DELAY, - max_retry_delay: Hanzoai::Client::DEFAULT_MAX_RETRY_DELAY + max_retries: self.class::DEFAULT_MAX_RETRIES, + timeout: self.class::DEFAULT_TIMEOUT_IN_SECONDS, + initial_retry_delay: self.class::DEFAULT_INITIAL_RETRY_DELAY, + max_retry_delay: self.class::DEFAULT_MAX_RETRY_DELAY ) base_url ||= Hanzoai::Client::ENVIRONMENTS.fetch(environment&.to_sym || :production) do message = "environment must be one of #{Hanzoai::Client::ENVIRONMENTS.keys}, got #{environment}" diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 5319113d..be08d0db 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -11,6 +11,8 @@ class PooledNetRequester # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49 KEEP_ALIVE_TIMEOUT = 30 + DEFAULT_MAX_CONNECTIONS = [Etc.nprocessors, 99].max + class << self # @api private # @@ -184,7 +186,7 @@ def execute(request) # @api private # # @param size [Integer] - def initialize(size: Etc.nprocessors) + def initialize(size: self.class::DEFAULT_MAX_CONNECTIONS) @mutex = Mutex.new @size = size @pools = {} diff --git a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi index f7f89cc2..192b6da5 100644 --- a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi +++ b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi @@ -22,6 +22,8 @@ module Hanzoai # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49 KEEP_ALIVE_TIMEOUT = 30 + DEFAULT_MAX_CONNECTIONS = T.let(T.unsafe(nil), Integer) + class << self # @api private sig { params(url: URI::Generic).returns(Net::HTTP) } @@ -67,7 +69,9 @@ module Hanzoai # @api private sig { params(size: Integer).returns(T.attached_class) } - def self.new(size: Etc.nprocessors) + def self.new( + size: Hanzoai::Internal::Transport::PooledNetRequester::DEFAULT_MAX_CONNECTIONS + ) end end end diff --git a/sig/hanzoai/internal/transport/pooled_net_requester.rbs b/sig/hanzoai/internal/transport/pooled_net_requester.rbs index 4a818bbb..99dced99 100644 --- a/sig/hanzoai/internal/transport/pooled_net_requester.rbs +++ b/sig/hanzoai/internal/transport/pooled_net_requester.rbs @@ -15,6 +15,8 @@ module Hanzoai KEEP_ALIVE_TIMEOUT: 30 + DEFAULT_MAX_CONNECTIONS: Integer + def self.connect: (URI::Generic url) -> top def self.calibrate_socket_timeout: (top conn, Float deadline) -> void From 5d80ac7fb7916fbc124e522c5bcf6c75ffbdf09a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 15 May 2025 05:24:50 +0000 Subject: [PATCH 078/139] docs: rewrite much of README.md for readability --- README.md | 146 ++++++++++++++++-------- lib/hanzoai/internal/type/base_model.rb | 8 ++ 2 files changed, 105 insertions(+), 49 deletions(-) diff --git a/README.md b/README.md index 54ce06c4..9865ac2d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Hanzo Ruby API library -The Hanzo Ruby library provides convenient access to the Hanzo REST API from any Ruby 3.2.0+ application. +The Hanzo Ruby library provides convenient access to the Hanzo REST API from any Ruby 3.2.0+ application. It ships with comprehensive types & docstrings in Yard, RBS, and RBI – [see below](https://github.com/hanzoai/ruby-sdk#Sorbet) for usage with Sorbet. The standard library's `net/http` is used as the HTTP transport, with connection pooling via the `connection_pool` gem. It is generated with [Stainless](https://www.stainless.com/). @@ -38,42 +38,43 @@ response = hanzo.get_home puts(response) ``` -## Sorbet - -This library is written with [Sorbet type definitions](https://sorbet.org/docs/rbi). However, there is no runtime dependency on the `sorbet-runtime`. - -When using sorbet, it is recommended to use model classes as below. This provides stronger type checking and tooling integration. - -```ruby -hanzo.get_home -``` - ### File uploads -Request parameters that correspond to file uploads can be passed as `StringIO`, or a [`Pathname`](https://rubyapi.org/3.2/o/pathname) instance. +Request parameters that correspond to file uploads can be passed as raw contents, a [`Pathname`](https://rubyapi.org/3.2/o/pathname) instance, [`StringIO`](https://rubyapi.org/3.2/o/stringio), or more. ```ruby require "pathname" -# using `Pathname`, the file will be lazily read, without reading everything in to memory +# Use `Pathname` to send the filename and/or avoid paging a large file into memory: transcription = hanzo.audio.transcriptions.create(file: Pathname("/path/to/file")) -file = File.read("/path/to/file") -# using `StringIO`, useful if you already have the data in memory -transcription = hanzo.audio.transcriptions.create(file: StringIO.new(file)) +# Alternatively, pass file contents or a `StringIO` directly: +transcription = hanzo.audio.transcriptions.create(file: File.read("/path/to/file")) + +# Or, to control the filename and/or content type: +file = Hanzoai::FilePart.new(File.read("/path/to/file"), filename: "/path/to/file", content_type: "…") +transcription = hanzo.audio.transcriptions.create(file: file) puts(transcription) ``` -### Errors +Note that you can also pass a raw `IO` descriptor, but this disables retries, as the library can't be sure if the descriptor is a file or pipe (which cannot be rewound). + +### Handling errors When the library is unable to connect to the API, or if the API returns a non-success status code (i.e., 4xx or 5xx response), a subclass of `Hanzoai::Errors::APIError` will be thrown: ```ruby begin client = hanzo.get_home -rescue Hanzoai::Errors::APIError => e - puts(e.status) # 400 +rescue Hanzoai::Errors::APIConnectionError => e + puts("The server could not be reached") + puts(e.cause) # an underlying Exception, likely raised within `net/http` +rescue Hanzoai::Errors::RateLimitError => e + puts("A 429 status code was received; we should back off a bit.") +rescue Hanzoai::Errors::APIStatusError => e + puts("Another non-200-range status code was received") + puts(e.status) end ``` @@ -113,11 +114,7 @@ hanzo.get_home(request_options: {max_retries: 5}) ### Timeouts -By default, requests will time out after 60 seconds. - -Timeouts are applied separately to the initial connection and the overall request time, so in some cases a request could wait 2\*timeout seconds before it fails. - -You can use the `timeout` option to configure or disable this: +By default, requests will time out after 60 seconds. You can use the timeout option to configure or disable this: ```ruby # Configure the default for all requests: @@ -129,39 +126,52 @@ hanzo = Hanzoai::Client.new( hanzo.get_home(request_options: {timeout: 5}) ``` -## Model DSL +On timeout, `Hanzoai::Errors::APITimeoutError` is raised. -This library uses a simple DSL to represent request parameters and response shapes in `lib/hanzoai/models`. +Note that requests that time out are retried by default. -With the right [editor plugins](https://shopify.github.io/ruby-lsp), you can ctrl-click on elements of the DSL to navigate around and explore the library. +## Advanced concepts -In all places where a `BaseModel` type is specified, vanilla Ruby `Hash` can also be used. For example, the following are interchangeable as arguments: +### BaseModel -```ruby -# This has tooling readability, for auto-completion, static analysis, and goto definition with supported language services -params = Hanzoai::Models::ClientGetHomeParams.new +All parameter and response objects inherit from `Hanzoai::Internal::Type::BaseModel`, which provides several conveniences, including: -# This also works -params = { +1. All fields, including unknown ones, are accessible with `obj[:prop]` syntax, and can be destructured with `obj => {prop: prop}` or pattern-matching syntax. -} -``` +2. Structural equivalence for equality; if two API calls return the same values, comparing the responses with == will return true. -## Editor support +3. Both instances and the classes themselves can be pretty-printed. -A combination of [Shopify LSP](https://shopify.github.io/ruby-lsp) and [Solargraph](https://solargraph.org/) is recommended for non-[Sorbet](https://sorbet.org) users. The former is especially good at go to definition, while the latter has much better auto-completion support. +4. Helpers such as `#to_h`, `#deep_to_h`, `#to_json`, and `#to_yaml`. -## Advanced concepts +### Making custom or undocumented requests -### Making custom/undocumented requests +#### Undocumented properties + +You can send undocumented parameters to any endpoint, and read undocumented response properties, like so: + +Note: the `extra_` parameters of the same name overrides the documented parameters. + +```ruby +response = + hanzo.get_home( + request_options: { + extra_query: {my_query_parameter: value}, + extra_body: {my_body_parameter: value}, + extra_headers: {"my-header": value} + } + ) + +puts(response[:my_undocumented_property]) +``` #### Undocumented request params -If you want to explicitly send an extra param, you can do so with the `extra_query`, `extra_body`, and `extra_headers` under the `request_options:` parameter when making a requests as seen in examples above. +If you want to explicitly send an extra param, you can do so with the `extra_query`, `extra_body`, and `extra_headers` under the `request_options:` parameter when making a request as seen in examples above. #### Undocumented endpoints -To make requests to undocumented endpoints, you can make requests using `client.request`. Options on the client will be respected (such as retries) when making this request. +To make requests to undocumented endpoints while retaining the benefit of auth, retries, and so on, you can make requests using `client.request`, like so: ```ruby response = client.request( @@ -169,31 +179,69 @@ response = client.request( path: '/undocumented/endpoint', query: {"dog": "woof"}, headers: {"useful-header": "interesting-value"}, - body: {"he": "llo"}, + body: {"hello": "world"} ) ``` ### Concurrency & connection pooling -The `Hanzoai::Client` instances are thread-safe, and should be re-used across multiple threads. By default, each `Client` have their own HTTP connection pool, with a maximum number of connections equal to thread count. +The `Hanzoai::Client` instances are threadsafe, but only are fork-safe when there are no in-flight HTTP requests. -When the maximum number of connections has been checked out from the connection pool, the `Client` will wait for an in use connection to become available. The queue time for this mechanism is accounted for by the per-request timeout. +Each instance of `Hanzoai::Client` has its own HTTP connection pool with a default size of 99. As such, we recommend instantiating the client once per application in most settings. + +When all available connections from the pool are checked out, requests wait for a new connection to become available, with queue time counting towards the request timeout. Unless otherwise specified, other classes in the SDK do not have locks protecting their underlying data structure. -Currently, `Hanzoai::Client` instances are only fork-safe if there are no in-flight HTTP requests. +## Sorbet + +This library provides comprehensive [RBI](https://sorbet.org/docs/rbi) definitions, and has no dependency on sorbet-runtime. -### Sorbet +You can provide typesafe request parameters like so: -#### Argument passing trick +```ruby +hanzo.get_home +``` -It is possible to pass a compatible model / parameter class to a method that expects keyword arguments by using the `**` splat operator. +Or, equivalently: ```ruby -params = Hanzoai::Models::ClientGetHomeParams.new +# Hashes work, but are not typesafe: +hanzo.get_home + +# You can also splat a full Params class: +params = Hanzoai::ClientGetHomeParams.new hanzo.get_home(**params) ``` +### Enums + +Since this library does not depend on `sorbet-runtime`, it cannot provide [`T::Enum`](https://sorbet.org/docs/tenum) instances. Instead, we provide "tagged symbols" instead, which is always a primitive at runtime: + +```ruby +# :embedding +puts(Hanzoai::UtilTransformRequestParams::CallType::EMBEDDING) + +# Revealed type: `T.all(Hanzoai::UtilTransformRequestParams::CallType, Symbol)` +T.reveal_type(Hanzoai::UtilTransformRequestParams::CallType::EMBEDDING) +``` + +Enum parameters have a "relaxed" type, so you can either pass in enum constants or their literal value: + +```ruby +# Using the enum constants preserves the tagged type information: +hanzo.utils.transform_request( + call_type: Hanzoai::UtilTransformRequestParams::CallType::EMBEDDING, + # … +) + +# Literal values is also permissible: +hanzo.utils.transform_request( + call_type: :embedding, + # … +) +``` + ## Versioning This package follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions. As the library is in initial development and has a major version of `0`, APIs may change at any time. diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 50e75b1d..0d4f0fe6 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -393,6 +393,14 @@ def deep_to_h = self.class.recursively_to_h(@data, convert: false) # @param keys [Array, nil] # # @return [Hash{Symbol=>Object}] + # + # @example + # # `util_token_counter_response` is a `Hanzoai::Models::UtilTokenCounterResponse` + # util_token_counter_response => { + # model_used: model_used, + # request_model: request_model, + # tokenizer_type: tokenizer_type + # } def deconstruct_keys(keys) (keys || self.class.known_fields.keys) .filter_map do |k| From ba94f92591e13d01e5eea1835a3e502d329eefcb Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 21 May 2025 02:38:12 +0000 Subject: [PATCH 079/139] chore: whitespaces --- Steepfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Steepfile b/Steepfile index d7aebca1..528b48c3 100644 --- a/Steepfile +++ b/Steepfile @@ -7,7 +7,7 @@ target(:lib) do signature("sig") - YAML.safe_load_file("./manifest.yaml", symbolize_names: true) => { dependencies: } + YAML.safe_load_file("./manifest.yaml", symbolize_names: true) => {dependencies:} # currently these libraries lack the `*.rbs` annotations required by `steep` stdlibs = dependencies - %w[English etc net/http rbconfig set stringio] From 3b7ec7b7cf46a7a7ada355b41f3b46deb9de6758 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 21 May 2025 02:59:45 +0000 Subject: [PATCH 080/139] fix: correctly instantiate sorbet type aliases for enums and unions --- lib/hanzoai/internal/type/array_of.rb | 8 +++ lib/hanzoai/internal/type/base_model.rb | 7 +++ lib/hanzoai/internal/type/boolean.rb | 8 +++ lib/hanzoai/internal/type/enum.rb | 12 +++++ lib/hanzoai/internal/type/file_input.rb | 7 +++ lib/hanzoai/internal/type/hash_of.rb | 8 +++ lib/hanzoai/internal/type/union.rb | 12 +++++ lib/hanzoai/internal/type/unknown.rb | 8 +++ lib/hanzoai/internal/util.rb | 45 +++++++++++++++++ lib/hanzoai/models.rb | 49 ++++++++++++------- .../models/fine_tuning/job_create_params.rb | 12 ----- .../models/global/spend_list_tags_response.rb | 16 ------ .../global/spend_retrieve_report_response.rb | 16 ------ lib/hanzoai/models/guardrail_list_response.rb | 4 -- lib/hanzoai/models/key_block_response.rb | 4 -- lib/hanzoai/models/key_list_response.rb | 8 --- lib/hanzoai/models/model/update_deployment.rb | 16 ------ lib/hanzoai/models/model_create_params.rb | 16 ------ .../organization/info_retrieve_response.rb | 4 -- .../models/organization_add_member_params.rb | 4 -- .../models/organization_delete_response.rb | 4 -- .../models/organization_list_response.rb | 4 -- .../models/organization_update_response.rb | 4 -- .../models/spend_list_logs_response.rb | 16 ------ .../models/spend_list_tags_response.rb | 16 ------ lib/hanzoai/models/team_add_member_params.rb | 4 -- .../models/team_add_member_response.rb | 4 -- lib/hanzoai/models/team_create_response.rb | 4 -- rbi/hanzoai/internal/type/array_of.rbi | 6 +++ rbi/hanzoai/internal/type/base_model.rbi | 5 ++ rbi/hanzoai/internal/type/boolean.rbi | 6 +++ rbi/hanzoai/internal/type/enum.rbi | 5 ++ rbi/hanzoai/internal/type/file_input.rbi | 5 ++ rbi/hanzoai/internal/type/hash_of.rbi | 6 +++ rbi/hanzoai/internal/type/union.rbi | 5 ++ rbi/hanzoai/internal/type/unknown.rbi | 6 +++ rbi/hanzoai/internal/util.rbi | 31 ++++++++++++ sig/hanzoai/internal/type/array_of.rbs | 3 ++ sig/hanzoai/internal/type/base_model.rbs | 2 + sig/hanzoai/internal/type/boolean.rbs | 3 ++ sig/hanzoai/internal/type/enum.rbs | 2 + sig/hanzoai/internal/type/file_input.rbs | 2 + sig/hanzoai/internal/type/hash_of.rbs | 3 ++ sig/hanzoai/internal/type/union.rbs | 2 + sig/hanzoai/internal/type/unknown.rbs | 3 ++ sig/hanzoai/internal/util.rbs | 12 +++++ 46 files changed, 252 insertions(+), 175 deletions(-) diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index f2983317..556e4a8d 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -12,6 +12,7 @@ module Type # Array of items of a given type. class ArrayOf include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport private_class_method :new @@ -110,6 +111,13 @@ def dump(value, state:) end end + # @api private + # + # @return [Object] + def to_sorbet_type + T::Array[Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(item_type)] + end + # @api private # # @return [generic] diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 0d4f0fe6..d8bcec9d 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -311,6 +311,13 @@ def dump(value, state:) acc end + + # @api private + # + # @return [Object] + def to_sorbet_type + self + end end class << self diff --git a/lib/hanzoai/internal/type/boolean.rb b/lib/hanzoai/internal/type/boolean.rb index b5acc3d6..07fceda0 100644 --- a/lib/hanzoai/internal/type/boolean.rb +++ b/lib/hanzoai/internal/type/boolean.rb @@ -10,6 +10,7 @@ module Type # Ruby has no Boolean class; this is something for models to refer to. class Boolean extend Hanzoai::Internal::Type::Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport private_class_method :new @@ -56,6 +57,13 @@ def coerce(value, state:) # @option state [Boolean] :can_retry # # @return [Boolean, Object] + + # @api private + # + # @return [Object] + def to_sorbet_type + T::Boolean + end end end end diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 4ef42b4b..1462f859 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -87,6 +87,18 @@ def coerce(value, state:) # # @return [Symbol, Object] + # @api private + # + # @return [Object] + def to_sorbet_type + case values + in [] + T.noreturn + in [value, *_] + T.all(Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(value), self) + end + end + # @api private # # @param depth [Integer] diff --git a/lib/hanzoai/internal/type/file_input.rb b/lib/hanzoai/internal/type/file_input.rb index 2ba1192a..1cf873a6 100644 --- a/lib/hanzoai/internal/type/file_input.rb +++ b/lib/hanzoai/internal/type/file_input.rb @@ -89,6 +89,13 @@ def dump(value, state:) value end + + # @api private + # + # @return [Object] + def to_sorbet_type + T.any(Pathname, StringIO, IO, String, Hanzoai::FilePart) + end end end end diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index aae86af7..26658f4e 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -12,6 +12,7 @@ module Type # Hash of items of a given type. class HashOf include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport private_class_method :new @@ -130,6 +131,13 @@ def dump(value, state:) end end + # @api private + # + # @return [Object] + def to_sorbet_type + T::Hash[Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(item_type)] + end + # @api private # # @return [generic] diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 286df836..96553ead 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -191,6 +191,18 @@ def dump(value, state:) super end + # @api private + # + # @return [Object] + def to_sorbet_type + case (v = variants) + in [] + T.noreturn + else + T.any(*v.map { Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(_1) }) + end + end + # rubocop:enable Style/CaseEquality # rubocop:enable Style/HashEachMethods diff --git a/lib/hanzoai/internal/type/unknown.rb b/lib/hanzoai/internal/type/unknown.rb index 74a2fc92..a245c940 100644 --- a/lib/hanzoai/internal/type/unknown.rb +++ b/lib/hanzoai/internal/type/unknown.rb @@ -10,6 +10,7 @@ module Type # When we don't know what to expect for the value. class Unknown extend Hanzoai::Internal::Type::Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport # rubocop:disable Lint/UnusedMethodArgument @@ -58,6 +59,13 @@ def coerce(value, state:) # @option state [Boolean] :can_retry # # @return [Object] + + # @api private + # + # @return [Object] + def to_sorbet_type + T.anything + end end # rubocop:enable Lint/UnusedMethodArgument diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index db0d104c..2e325e8c 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -9,6 +9,23 @@ module Util # @return [Float] def self.monotonic_secs = Process.clock_gettime(Process::CLOCK_MONOTONIC) + # @api private + # + # @param ns [Module, Class] + # + # @return [Enumerable] + def self.walk_namespaces(ns) + ns.constants(false).lazy.flat_map do + case (c = ns.const_get(_1, false)) + in Module | Class + walk_namespaces(c) + else + [] + end + end + .chain([ns]) + end + class << self # @api private # @@ -826,11 +843,39 @@ def const_missing(name) sorbet_runtime_constants.fetch(name).call end + # @api private + # + # @param name [Symbol] + # + # @return [Boolean] + def sorbet_constant_defined?(name) = sorbet_runtime_constants.key?(name) + # @api private # # @param name [Symbol] # @param blk [Proc] def define_sorbet_constant!(name, &blk) = sorbet_runtime_constants.store(name, blk) + + # @api private + # + # @return [Object] + def to_sorbet_type = raise NotImplementedError + + class << self + # @api private + # + # @param type [Hanzoai::Internal::Util::SorbetRuntimeSupport, Object] + # + # @return [Object] + def to_sorbet_type(type) + case type + in Hanzoai::Internal::Util::SorbetRuntimeSupport + type.to_sorbet_type + else + type + end + end + end end extend Hanzoai::Internal::Util::SorbetRuntimeSupport diff --git a/lib/hanzoai/models.rb b/lib/hanzoai/models.rb index 67ae33d7..e4c02a9e 100644 --- a/lib/hanzoai/models.rb +++ b/lib/hanzoai/models.rb @@ -5,29 +5,40 @@ module Hanzoai cls.define_sorbet_constant!(:OrHash) { T.type_alias { T.any(cls, Hanzoai::Internal::AnyHash) } } end - [ - *Hanzoai::Internal::Type::Enum.included_modules, - *Hanzoai::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 + Hanzoai::Internal::Util.walk_namespaces(Hanzoai::Models).each do |mod| + case mod + in Hanzoai::Internal::Type::Enum | Hanzoai::Internal::Type::Union + mod.constants.each do |name| + case mod.const_get(name) + in true | false + mod.define_sorbet_constant!(:TaggedBoolean) { T.type_alias { T.all(T::Boolean, mod) } } + mod.define_sorbet_constant!(:OrBoolean) { T.type_alias { T::Boolean } } + in Integer + mod.define_sorbet_constant!(:TaggedInteger) { T.type_alias { T.all(Integer, mod) } } + mod.define_sorbet_constant!(:OrInteger) { T.type_alias { Integer } } + in Float + mod.define_sorbet_constant!(:TaggedFloat) { T.type_alias { T.all(Float, mod) } } + mod.define_sorbet_constant!(:OrFloat) { T.type_alias { Float } } + in Symbol + mod.define_sorbet_constant!(:TaggedSymbol) { T.type_alias { T.all(Symbol, mod) } } + mod.define_sorbet_constant!(:OrSymbol) { T.type_alias { T.any(Symbol, String) } } + else + end end + else end end + Hanzoai::Internal::Util.walk_namespaces(Hanzoai::Models) + .lazy + .grep(Hanzoai::Internal::Type::Union) + .each do |mod| + const = :Variants + next if mod.sorbet_constant_defined?(const) + + mod.define_sorbet_constant!(const) { T.type_alias { mod.to_sorbet_type } } + end + ActiveListCallbacksParams = Hanzoai::Models::ActiveListCallbacksParams AddAddAllowedIPParams = Hanzoai::Models::AddAddAllowedIPParams diff --git a/lib/hanzoai/models/fine_tuning/job_create_params.rb b/lib/hanzoai/models/fine_tuning/job_create_params.rb index 12df0daf..e7db910c 100644 --- a/lib/hanzoai/models/fine_tuning/job_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_create_params.rb @@ -109,10 +109,6 @@ module BatchSize # @!method self.variants # @return [Array(String, Integer)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Integer) } - end end # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier @@ -125,10 +121,6 @@ module LearningRateMultiplier # @!method self.variants # @return [Array(String, Float)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Float) } - end end # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#n_epochs @@ -141,10 +133,6 @@ module NEpochs # @!method self.variants # @return [Array(String, Integer)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Integer) } - end end end end diff --git a/lib/hanzoai/models/global/spend_list_tags_response.rb b/lib/hanzoai/models/global/spend_list_tags_response.rb index ead624f8..22268d10 100644 --- a/lib/hanzoai/models/global/spend_list_tags_response.rb +++ b/lib/hanzoai/models/global/spend_list_tags_response.rb @@ -136,10 +136,6 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end # @see Hanzoai::Models::Global::SpendListTagsResponseItem#messages @@ -155,10 +151,6 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -176,10 +168,6 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -194,10 +182,6 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end end diff --git a/lib/hanzoai/models/global/spend_retrieve_report_response.rb b/lib/hanzoai/models/global/spend_retrieve_report_response.rb index a4f8dbfc..8a1c3b50 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_response.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_response.rb @@ -140,10 +140,6 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end # @see Hanzoai::Models::Global::SpendRetrieveReportResponseItem#messages @@ -159,10 +155,6 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -180,10 +172,6 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -198,10 +186,6 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end end diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index d0123b05..97191443 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -72,10 +72,6 @@ module Mode # @!method self.variants # @return [Array(String, Array)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[String]) } - end - # @type [Hanzoai::Internal::Type::Converter] StringArray = Hanzoai::Internal::Type::ArrayOf[String] end diff --git a/lib/hanzoai/models/key_block_response.rb b/lib/hanzoai/models/key_block_response.rb index 94283ef3..08b207b5 100644 --- a/lib/hanzoai/models/key_block_response.rb +++ b/lib/hanzoai/models/key_block_response.rb @@ -192,10 +192,6 @@ module Expires # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end end end diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index 22328173..c90aa678 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -471,10 +471,6 @@ module Expires # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can @@ -508,10 +504,6 @@ module UserRole # @!method self.variants # @return [Array(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth) } - end end end end diff --git a/lib/hanzoai/models/model/update_deployment.rb b/lib/hanzoai/models/model/update_deployment.rb index 2dee1ec0..66e8a71f 100644 --- a/lib/hanzoai/models/model/update_deployment.rb +++ b/lib/hanzoai/models/model/update_deployment.rb @@ -231,10 +231,6 @@ module ConfigurableClientsideAuthParam # @!method self.variants # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) } - end end # @see Hanzoai::Model::UpdateDeployment::LlmParams#stream_timeout @@ -247,10 +243,6 @@ module StreamTimeout # @!method self.variants # @return [Array(Float, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(Float, String) } - end end # @see Hanzoai::Model::UpdateDeployment::LlmParams#timeout @@ -263,10 +255,6 @@ module Timeout # @!method self.variants # @return [Array(Float, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(Float, String) } - end end # @see Hanzoai::Model::UpdateDeployment::LlmParams#vertex_credentials @@ -279,10 +267,6 @@ module VertexCredentials # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index 5b7e729e..62ab843c 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -242,10 +242,6 @@ module ConfigurableClientsideAuthParam # @!method self.variants # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) } - end end # @see Hanzoai::ModelCreateParams::LlmParams#stream_timeout @@ -258,10 +254,6 @@ module StreamTimeout # @!method self.variants # @return [Array(Float, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(Float, String) } - end end # @see Hanzoai::ModelCreateParams::LlmParams#timeout @@ -274,10 +266,6 @@ module Timeout # @!method self.variants # @return [Array(Float, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(Float, String) } - end end # @see Hanzoai::ModelCreateParams::LlmParams#vertex_credentials @@ -290,10 +278,6 @@ module VertexCredentials # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index 60c1c16f..ef82c598 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -427,10 +427,6 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/lib/hanzoai/models/organization_add_member_params.rb b/lib/hanzoai/models/organization_add_member_params.rb index 9cf3d6bd..07aae01f 100644 --- a/lib/hanzoai/models/organization_add_member_params.rb +++ b/lib/hanzoai/models/organization_add_member_params.rb @@ -38,10 +38,6 @@ module Member # @!method self.variants # @return [Array(Array, Hanzoai::OrgMember)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T::Array[Hanzoai::OrgMember], Hanzoai::OrgMember) } - end - # @type [Hanzoai::Internal::Type::Converter] OrgMemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::OrgMember }] end diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index 89eb1474..b089df63 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -425,10 +425,6 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index 0ef7a427..d70dba95 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -425,10 +425,6 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index 8ffb4dbe..caabc12b 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -424,10 +424,6 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/lib/hanzoai/models/spend_list_logs_response.rb b/lib/hanzoai/models/spend_list_logs_response.rb index d0c834bc..d5ae911a 100644 --- a/lib/hanzoai/models/spend_list_logs_response.rb +++ b/lib/hanzoai/models/spend_list_logs_response.rb @@ -135,10 +135,6 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end # @see Hanzoai::Models::SpendListLogsResponseItem#messages @@ -154,10 +150,6 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -175,10 +167,6 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -193,10 +181,6 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end end diff --git a/lib/hanzoai/models/spend_list_tags_response.rb b/lib/hanzoai/models/spend_list_tags_response.rb index a59e7133..6d84d64f 100644 --- a/lib/hanzoai/models/spend_list_tags_response.rb +++ b/lib/hanzoai/models/spend_list_tags_response.rb @@ -135,10 +135,6 @@ module EndTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end # @see Hanzoai::Models::SpendListTagsResponseItem#messages @@ -154,10 +150,6 @@ module Messages # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -175,10 +167,6 @@ module Response # @!method self.variants # @return [Array(String, Array, Object)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } - end - # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] end @@ -193,10 +181,6 @@ module StartTime # @!method self.variants # @return [Array(String, Time)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(String, Time) } - end end end diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index a5612742..1fa19be2 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -38,10 +38,6 @@ module Member # @!method self.variants # @return [Array(Array, Hanzoai::Member)] - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T::Array[Hanzoai::Member], Hanzoai::Member) } - end - # @type [Hanzoai::Internal::Type::Converter] MemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Member }] end diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index 5864c344..2787081d 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -474,10 +474,6 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index 752fc042..159dfa8b 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -154,10 +154,6 @@ module ModelAliases # @!method self.variants # @return [Array(Object, String)] - - define_sorbet_constant!(:Variants) do - T.type_alias { T.any(T.anything, String) } - end end end end diff --git a/rbi/hanzoai/internal/type/array_of.rbi b/rbi/hanzoai/internal/type/array_of.rbi index 1846db49..71a78bf8 100644 --- a/rbi/hanzoai/internal/type/array_of.rbi +++ b/rbi/hanzoai/internal/type/array_of.rbi @@ -8,6 +8,7 @@ module Hanzoai # Array of items of a given type. class ArrayOf include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport abstract! @@ -63,6 +64,11 @@ module Hanzoai def dump(value, state:) end + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end + # @api private sig { returns(Elem) } protected def item_type diff --git a/rbi/hanzoai/internal/type/base_model.rbi b/rbi/hanzoai/internal/type/base_model.rbi index b13267a7..75cfb43f 100644 --- a/rbi/hanzoai/internal/type/base_model.rbi +++ b/rbi/hanzoai/internal/type/base_model.rbi @@ -197,6 +197,11 @@ module Hanzoai end def dump(value, state:) end + + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end end class << self diff --git a/rbi/hanzoai/internal/type/boolean.rbi b/rbi/hanzoai/internal/type/boolean.rbi index 2e716986..639fc87b 100644 --- a/rbi/hanzoai/internal/type/boolean.rbi +++ b/rbi/hanzoai/internal/type/boolean.rbi @@ -8,6 +8,7 @@ module Hanzoai # Ruby has no Boolean class; this is something for models to refer to. class Boolean extend Hanzoai::Internal::Type::Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport abstract! @@ -43,6 +44,11 @@ module Hanzoai end def dump(value, state:) end + + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end end end end diff --git a/rbi/hanzoai/internal/type/enum.rbi b/rbi/hanzoai/internal/type/enum.rbi index 1c8c3677..7969bdab 100644 --- a/rbi/hanzoai/internal/type/enum.rbi +++ b/rbi/hanzoai/internal/type/enum.rbi @@ -67,6 +67,11 @@ module Hanzoai def dump(value, state:) end + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end + # @api private sig { params(depth: Integer).returns(String) } def inspect(depth: 0) diff --git a/rbi/hanzoai/internal/type/file_input.rbi b/rbi/hanzoai/internal/type/file_input.rbi index 16bb6e99..cf384c4f 100644 --- a/rbi/hanzoai/internal/type/file_input.rbi +++ b/rbi/hanzoai/internal/type/file_input.rbi @@ -47,6 +47,11 @@ module Hanzoai end def dump(value, state:) end + + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end end end end diff --git a/rbi/hanzoai/internal/type/hash_of.rbi b/rbi/hanzoai/internal/type/hash_of.rbi index 23163eca..6108215a 100644 --- a/rbi/hanzoai/internal/type/hash_of.rbi +++ b/rbi/hanzoai/internal/type/hash_of.rbi @@ -8,6 +8,7 @@ module Hanzoai # Hash of items of a given type. class HashOf include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport abstract! @@ -63,6 +64,11 @@ module Hanzoai def dump(value, state:) end + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end + # @api private sig { returns(Elem) } protected def item_type diff --git a/rbi/hanzoai/internal/type/union.rbi b/rbi/hanzoai/internal/type/union.rbi index 4c4f8522..e89962ba 100644 --- a/rbi/hanzoai/internal/type/union.rbi +++ b/rbi/hanzoai/internal/type/union.rbi @@ -101,6 +101,11 @@ module Hanzoai def dump(value, state:) end + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end + # @api private sig { params(depth: Integer).returns(String) } def inspect(depth: 0) diff --git a/rbi/hanzoai/internal/type/unknown.rbi b/rbi/hanzoai/internal/type/unknown.rbi index 14925cd3..ed2c0d0a 100644 --- a/rbi/hanzoai/internal/type/unknown.rbi +++ b/rbi/hanzoai/internal/type/unknown.rbi @@ -8,6 +8,7 @@ module Hanzoai # When we don't know what to expect for the value. class Unknown extend Hanzoai::Internal::Type::Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport abstract! @@ -43,6 +44,11 @@ module Hanzoai end def dump(value, state:) end + + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end end end end diff --git a/rbi/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi index 6f4dd4d4..d549b1b3 100644 --- a/rbi/hanzoai/internal/util.rbi +++ b/rbi/hanzoai/internal/util.rbi @@ -11,6 +11,15 @@ module Hanzoai def self.monotonic_secs end + # @api private + sig do + params(ns: T.any(Module, T::Class[T.anything])).returns( + T::Enumerable[T.any(Module, T::Class[T.anything])] + ) + end + def self.walk_namespaces(ns) + end + class << self # @api private sig { returns(String) } @@ -441,10 +450,32 @@ module Hanzoai def const_missing(name) end + # @api private + sig { params(name: Symbol).returns(T::Boolean) } + def sorbet_constant_defined?(name) + end + # @api private sig { params(name: Symbol, blk: T.proc.returns(T.anything)).void } def define_sorbet_constant!(name, &blk) end + + # @api private + sig { returns(T.anything) } + def to_sorbet_type + end + + class << self + # @api private + sig do + params( + type: + T.any(Hanzoai::Internal::Util::SorbetRuntimeSupport, T.anything) + ).returns(T.anything) + end + def to_sorbet_type(type) + end + end end end end diff --git a/sig/hanzoai/internal/type/array_of.rbs b/sig/hanzoai/internal/type/array_of.rbs index 6c8b6575..ade86f9a 100644 --- a/sig/hanzoai/internal/type/array_of.rbs +++ b/sig/hanzoai/internal/type/array_of.rbs @@ -3,6 +3,7 @@ module Hanzoai module Type class ArrayOf[Elem] include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport def self.[]: ( ::Hash[Symbol, top] @@ -27,6 +28,8 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::dump_state ) -> (::Array[top] | top) + def to_sorbet_type: -> top + def item_type: -> Elem def nilable?: -> bool diff --git a/sig/hanzoai/internal/type/base_model.rbs b/sig/hanzoai/internal/type/base_model.rbs index 19e9e2bf..71ed4068 100644 --- a/sig/hanzoai/internal/type/base_model.rbs +++ b/sig/hanzoai/internal/type/base_model.rbs @@ -68,6 +68,8 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::dump_state ) -> (::Hash[top, top] | top) + def self.to_sorbet_type: -> top + def self.recursively_to_h: ( Hanzoai::Internal::Type::BaseModel model, convert: bool diff --git a/sig/hanzoai/internal/type/boolean.rbs b/sig/hanzoai/internal/type/boolean.rbs index 6635537e..90764a57 100644 --- a/sig/hanzoai/internal/type/boolean.rbs +++ b/sig/hanzoai/internal/type/boolean.rbs @@ -3,6 +3,7 @@ module Hanzoai module Type class Boolean extend Hanzoai::Internal::Type::Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport def self.===: (top other) -> bool @@ -17,6 +18,8 @@ module Hanzoai bool | top value, state: Hanzoai::Internal::Type::Converter::dump_state ) -> (bool | top) + + def self.to_sorbet_type: -> top end end end diff --git a/sig/hanzoai/internal/type/enum.rbs b/sig/hanzoai/internal/type/enum.rbs index d90c46c3..44bdaf95 100644 --- a/sig/hanzoai/internal/type/enum.rbs +++ b/sig/hanzoai/internal/type/enum.rbs @@ -23,6 +23,8 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::dump_state ) -> (Symbol | top) + def to_sorbet_type: -> top + def inspect: (?depth: Integer) -> String end end diff --git a/sig/hanzoai/internal/type/file_input.rbs b/sig/hanzoai/internal/type/file_input.rbs index c87ab2d5..4c900cf1 100644 --- a/sig/hanzoai/internal/type/file_input.rbs +++ b/sig/hanzoai/internal/type/file_input.rbs @@ -17,6 +17,8 @@ module Hanzoai Pathname | StringIO | IO | String | top value, state: Hanzoai::Internal::Type::Converter::dump_state ) -> (Pathname | StringIO | IO | String | top) + + def self.to_sorbet_type: -> top end end end diff --git a/sig/hanzoai/internal/type/hash_of.rbs b/sig/hanzoai/internal/type/hash_of.rbs index 6982435c..5a89e5cc 100644 --- a/sig/hanzoai/internal/type/hash_of.rbs +++ b/sig/hanzoai/internal/type/hash_of.rbs @@ -3,6 +3,7 @@ module Hanzoai module Type class HashOf[Elem] include Hanzoai::Internal::Type::Converter + include Hanzoai::Internal::Util::SorbetRuntimeSupport def self.[]: ( ::Hash[Symbol, top] @@ -27,6 +28,8 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::dump_state ) -> (::Hash[Symbol, top] | top) + def to_sorbet_type: -> top + def item_type: -> Elem def nilable?: -> bool diff --git a/sig/hanzoai/internal/type/union.rbs b/sig/hanzoai/internal/type/union.rbs index 874012a5..f71f1b77 100644 --- a/sig/hanzoai/internal/type/union.rbs +++ b/sig/hanzoai/internal/type/union.rbs @@ -43,6 +43,8 @@ module Hanzoai state: Hanzoai::Internal::Type::Converter::dump_state ) -> top + def to_sorbet_type: -> top + def inspect: (?depth: Integer) -> String end end diff --git a/sig/hanzoai/internal/type/unknown.rbs b/sig/hanzoai/internal/type/unknown.rbs index c2b52a4b..6c376a7b 100644 --- a/sig/hanzoai/internal/type/unknown.rbs +++ b/sig/hanzoai/internal/type/unknown.rbs @@ -3,6 +3,7 @@ module Hanzoai module Type class Unknown extend Hanzoai::Internal::Type::Converter + extend Hanzoai::Internal::Util::SorbetRuntimeSupport def self.===: (top other) -> bool @@ -17,6 +18,8 @@ module Hanzoai top value, state: Hanzoai::Internal::Type::Converter::dump_state ) -> top + + def self.to_sorbet_type: -> top end end end diff --git a/sig/hanzoai/internal/util.rbs b/sig/hanzoai/internal/util.rbs index 98b55b10..a64a8c98 100644 --- a/sig/hanzoai/internal/util.rbs +++ b/sig/hanzoai/internal/util.rbs @@ -5,6 +5,10 @@ module Hanzoai def self?.monotonic_secs: -> Float + def self?.walk_namespaces: ( + Module | Class ns + ) -> Enumerable[(Module | Class)] + def self?.arch: -> String def self?.os: -> String @@ -166,7 +170,15 @@ module Hanzoai def const_missing: (Symbol name) -> void + def sorbet_constant_defined?: (Symbol name) -> bool + def define_sorbet_constant!: (Symbol name) { -> top } -> void + + def to_sorbet_type: -> top + + def self.to_sorbet_type: ( + Hanzoai::Internal::Util::SorbetRuntimeSupport | top `type` + ) -> top end end end From 909bbbbc54f21a0a0190b497f17d428e196292a9 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 21 May 2025 03:10:49 +0000 Subject: [PATCH 081/139] chore: use sorbet union aliases where available --- .../models/fine_tuning/job_create_params.rbi | 54 ++++++++++++--- .../global/spend_list_tags_response.rbi | 64 ++++++++++++++---- .../global/spend_retrieve_report_response.rbi | 64 ++++++++++++++---- .../models/guardrail_list_response.rbi | 12 +++- .../models/health_check_services_params.rbi | 18 +---- rbi/hanzoai/models/key_block_response.rbi | 10 ++- rbi/hanzoai/models/key_list_response.rbi | 35 +++++----- .../models/model/update_deployment.rbi | 54 ++++++++++++--- rbi/hanzoai/models/model_create_params.rbi | 52 ++++++++++++--- .../organization/info_retrieve_response.rbi | 18 ++++- .../models/organization_delete_response.rbi | 18 ++++- .../models/organization_list_response.rbi | 18 ++++- .../models/organization_update_response.rbi | 18 ++++- .../models/spend_list_logs_response.rbi | 66 +++++++++++++++---- .../models/spend_list_tags_response.rbi | 66 +++++++++++++++---- .../models/team_add_member_response.rbi | 18 ++++- rbi/hanzoai/models/team_create_response.rbi | 18 ++++- rbi/hanzoai/resources/health.rbi | 6 +- 18 files changed, 472 insertions(+), 137 deletions(-) diff --git a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi index fadc3370..1b76469d 100644 --- a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi @@ -157,20 +157,47 @@ module Hanzoai ) end - sig { returns(T.nilable(T.any(String, Integer))) } + sig do + returns( + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants + ) + ) + end attr_accessor :batch_size - sig { returns(T.nilable(T.any(String, Float))) } + sig do + returns( + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants + ) + ) + end attr_accessor :learning_rate_multiplier - sig { returns(T.nilable(T.any(String, Integer))) } + sig do + returns( + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants + ) + ) + end attr_accessor :n_epochs sig do params( - batch_size: T.nilable(T.any(String, Integer)), - learning_rate_multiplier: T.nilable(T.any(String, Float)), - n_epochs: T.nilable(T.any(String, Integer)) + batch_size: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants + ), + learning_rate_multiplier: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants + ), + n_epochs: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants + ) ).returns(T.attached_class) end def self.new( @@ -183,9 +210,18 @@ module Hanzoai sig do override.returns( { - batch_size: T.nilable(T.any(String, Integer)), - learning_rate_multiplier: T.nilable(T.any(String, Float)), - n_epochs: T.nilable(T.any(String, Integer)) + batch_size: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants + ), + learning_rate_multiplier: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants + ), + n_epochs: + T.nilable( + Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants + ) } ) end diff --git a/rbi/hanzoai/models/global/spend_list_tags_response.rbi b/rbi/hanzoai/models/global/spend_list_tags_response.rbi index c320a3c8..9096a717 100644 --- a/rbi/hanzoai/models/global/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/global/spend_list_tags_response.rbi @@ -18,11 +18,21 @@ module Hanzoai sig { returns(String) } attr_accessor :call_type - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::EndTime::Variants + ) + ) + end attr_accessor :end_time sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::Messages::Variants + ) + ) end attr_accessor :messages @@ -30,11 +40,21 @@ module Hanzoai attr_accessor :request_id sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::Response::Variants + ) + ) end attr_accessor :response - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::StartTime::Variants + ) + ) + end attr_accessor :start_time sig { returns(T.nilable(String)) } @@ -83,13 +103,23 @@ module Hanzoai params( api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), + end_time: + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::EndTime::Variants + ), messages: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::Messages::Variants + ), request_id: String, response: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), @@ -132,13 +162,23 @@ module Hanzoai { api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), + end_time: + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::EndTime::Variants + ), messages: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::Messages::Variants + ), request_id: String, response: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::Global::SpendListTagsResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), diff --git a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi index 062ea5d9..2ac16f5e 100644 --- a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi +++ b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi @@ -18,11 +18,21 @@ module Hanzoai sig { returns(String) } attr_accessor :call_type - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::EndTime::Variants + ) + ) + end attr_accessor :end_time sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Messages::Variants + ) + ) end attr_accessor :messages @@ -30,11 +40,21 @@ module Hanzoai attr_accessor :request_id sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Response::Variants + ) + ) end attr_accessor :response - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::StartTime::Variants + ) + ) + end attr_accessor :start_time sig { returns(T.nilable(String)) } @@ -83,13 +103,23 @@ module Hanzoai params( api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), + end_time: + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::EndTime::Variants + ), messages: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Messages::Variants + ), request_id: String, response: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), @@ -132,13 +162,23 @@ module Hanzoai { api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), + end_time: + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::EndTime::Variants + ), messages: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Messages::Variants + ), request_id: String, response: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::Global::SpendRetrieveReportResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), diff --git a/rbi/hanzoai/models/guardrail_list_response.rbi b/rbi/hanzoai/models/guardrail_list_response.rbi index 345c9463..b324fde9 100644 --- a/rbi/hanzoai/models/guardrail_list_response.rbi +++ b/rbi/hanzoai/models/guardrail_list_response.rbi @@ -106,7 +106,11 @@ module Hanzoai sig { returns(String) } attr_accessor :guardrail - sig { returns(T.any(String, T::Array[String])) } + sig do + returns( + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants + ) + end attr_accessor :mode sig { returns(T.nilable(T::Boolean)) } @@ -119,7 +123,8 @@ module Hanzoai sig do params( guardrail: String, - mode: T.any(String, T::Array[String]), + mode: + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants, default_on: T::Boolean ).returns(T.attached_class) end @@ -130,7 +135,8 @@ module Hanzoai override.returns( { guardrail: String, - mode: T.any(String, T::Array[String]), + mode: + Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants, default_on: T::Boolean } ) diff --git a/rbi/hanzoai/models/health_check_services_params.rbi b/rbi/hanzoai/models/health_check_services_params.rbi index 3bbe5fb6..6419f888 100644 --- a/rbi/hanzoai/models/health_check_services_params.rbi +++ b/rbi/hanzoai/models/health_check_services_params.rbi @@ -12,20 +12,12 @@ module Hanzoai end # Specify the service being hit. - sig do - returns( - T.any(Hanzoai::HealthCheckServicesParams::Service::OrSymbol, String) - ) - end + sig { returns(Hanzoai::HealthCheckServicesParams::Service::Variants) } attr_accessor :service sig do params( - service: - T.any( - Hanzoai::HealthCheckServicesParams::Service::OrSymbol, - String - ), + service: Hanzoai::HealthCheckServicesParams::Service::Variants, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end @@ -39,11 +31,7 @@ module Hanzoai sig do override.returns( { - service: - T.any( - Hanzoai::HealthCheckServicesParams::Service::OrSymbol, - String - ), + service: Hanzoai::HealthCheckServicesParams::Service::Variants, request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/key_block_response.rbi b/rbi/hanzoai/models/key_block_response.rbi index befda0ec..63e72344 100644 --- a/rbi/hanzoai/models/key_block_response.rbi +++ b/rbi/hanzoai/models/key_block_response.rbi @@ -41,7 +41,9 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :created_by - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns(T.nilable(Hanzoai::Models::KeyBlockResponse::Expires::Variants)) + end attr_accessor :expires sig { returns(T.nilable(String)) } @@ -133,7 +135,8 @@ module Hanzoai config: T.anything, created_at: T.nilable(Time), created_by: T.nilable(String), - expires: T.nilable(T.any(String, Time)), + expires: + T.nilable(Hanzoai::Models::KeyBlockResponse::Expires::Variants), key_alias: T.nilable(String), key_name: T.nilable(String), llm_budget_table: T.nilable(T.anything), @@ -200,7 +203,8 @@ module Hanzoai config: T.anything, created_at: T.nilable(Time), created_by: T.nilable(String), - expires: T.nilable(T.any(String, Time)), + expires: + T.nilable(Hanzoai::Models::KeyBlockResponse::Expires::Variants), key_alias: T.nilable(String), key_name: T.nilable(String), llm_budget_table: T.nilable(T.anything), diff --git a/rbi/hanzoai/models/key_list_response.rbi b/rbi/hanzoai/models/key_list_response.rbi index 028f7040..10f00a06 100644 --- a/rbi/hanzoai/models/key_list_response.rbi +++ b/rbi/hanzoai/models/key_list_response.rbi @@ -13,14 +13,7 @@ module Hanzoai sig do returns( - T.nilable( - T::Array[ - T.any( - String, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth - ) - ] - ) + T.nilable(T::Array[Hanzoai::Models::KeyListResponse::Key::Variants]) ) end attr_reader :keys @@ -70,13 +63,7 @@ module Hanzoai override.returns( { current_page: T.nilable(Integer), - keys: - T::Array[ - T.any( - String, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth - ) - ], + keys: T::Array[Hanzoai::Models::KeyListResponse::Key::Variants], total_count: T.nilable(Integer), total_pages: T.nilable(Integer) } @@ -160,7 +147,13 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :end_user_tpm_limit - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::Expires::Variants + ) + ) + end attr_accessor :expires sig { returns(T.nilable(String)) } @@ -351,7 +344,10 @@ module Hanzoai end_user_max_budget: T.nilable(Float), end_user_rpm_limit: T.nilable(Integer), end_user_tpm_limit: T.nilable(Integer), - expires: T.nilable(T.any(String, Time)), + expires: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::Expires::Variants + ), key_alias: T.nilable(String), key_name: T.nilable(String), last_refreshed_at: T.nilable(Float), @@ -487,7 +483,10 @@ module Hanzoai end_user_max_budget: T.nilable(Float), end_user_rpm_limit: T.nilable(Integer), end_user_tpm_limit: T.nilable(Integer), - expires: T.nilable(T.any(String, Time)), + expires: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::Expires::Variants + ), key_alias: T.nilable(String), key_name: T.nilable(String), last_refreshed_at: T.nilable(Float), diff --git a/rbi/hanzoai/models/model/update_deployment.rbi b/rbi/hanzoai/models/model/update_deployment.rbi index 14ba166b..9d4a679e 100644 --- a/rbi/hanzoai/models/model/update_deployment.rbi +++ b/rbi/hanzoai/models/model/update_deployment.rbi @@ -139,10 +139,22 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :rpm - sig { returns(T.nilable(T.any(Float, String))) } + sig do + returns( + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + ) + ) + end attr_accessor :stream_timeout - sig { returns(T.nilable(T.any(Float, String))) } + sig do + returns( + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + ) + ) + end attr_accessor :timeout sig { returns(T.nilable(Integer)) } @@ -151,7 +163,13 @@ module Hanzoai sig { returns(T.nilable(T::Boolean)) } attr_accessor :use_in_pass_through - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + ) + ) + end attr_accessor :vertex_credentials sig { returns(T.nilable(String)) } @@ -196,11 +214,20 @@ module Hanzoai output_cost_per_token: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), - stream_timeout: T.nilable(T.any(Float, String)), - timeout: T.nilable(T.any(Float, String)), + stream_timeout: + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + ), + timeout: + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), - vertex_credentials: T.nilable(T.any(T.anything, String)), + vertex_credentials: + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), watsonx_region_name: T.nilable(String) @@ -275,11 +302,20 @@ module Hanzoai output_cost_per_token: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), - stream_timeout: T.nilable(T.any(Float, String)), - timeout: T.nilable(T.any(Float, String)), + stream_timeout: + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + ), + timeout: + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), - vertex_credentials: T.nilable(T.any(T.anything, String)), + vertex_credentials: + T.nilable( + Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), watsonx_region_name: T.nilable(String) diff --git a/rbi/hanzoai/models/model_create_params.rbi b/rbi/hanzoai/models/model_create_params.rbi index 924009a4..f67b4c85 100644 --- a/rbi/hanzoai/models/model_create_params.rbi +++ b/rbi/hanzoai/models/model_create_params.rbi @@ -145,10 +145,20 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :rpm - sig { returns(T.nilable(T.any(Float, String))) } + sig do + returns( + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + ) + ) + end attr_accessor :stream_timeout - sig { returns(T.nilable(T.any(Float, String))) } + sig do + returns( + T.nilable(Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants) + ) + end attr_accessor :timeout sig { returns(T.nilable(Integer)) } @@ -157,7 +167,13 @@ module Hanzoai sig { returns(T.nilable(T::Boolean)) } attr_accessor :use_in_pass_through - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + ) + ) + end attr_accessor :vertex_credentials sig { returns(T.nilable(String)) } @@ -203,11 +219,20 @@ module Hanzoai output_cost_per_token: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), - stream_timeout: T.nilable(T.any(Float, String)), - timeout: T.nilable(T.any(Float, String)), + stream_timeout: + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + ), + timeout: + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants + ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), - vertex_credentials: T.nilable(T.any(T.anything, String)), + vertex_credentials: + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), watsonx_region_name: T.nilable(String) @@ -282,11 +307,20 @@ module Hanzoai output_cost_per_token: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), - stream_timeout: T.nilable(T.any(Float, String)), - timeout: T.nilable(T.any(Float, String)), + stream_timeout: + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + ), + timeout: + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants + ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), - vertex_credentials: T.nilable(T.any(T.anything, String)), + vertex_credentials: + T.nilable( + Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), watsonx_region_name: T.nilable(String) diff --git a/rbi/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/hanzoai/models/organization/info_retrieve_response.rbi index 9c0fc338..76e2237e 100644 --- a/rbi/hanzoai/models/organization/info_retrieve_response.rbi +++ b/rbi/hanzoai/models/organization/info_retrieve_response.rbi @@ -630,14 +630,23 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants + ) + ) + end attr_accessor :model_aliases sig do params( created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants + ) ).returns(T.attached_class) end def self.new(created_by:, updated_by:, model_aliases: nil) @@ -648,7 +657,10 @@ module Hanzoai { created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants + ) } ) end diff --git a/rbi/hanzoai/models/organization_delete_response.rbi b/rbi/hanzoai/models/organization_delete_response.rbi index ad0bf40d..c692d6f7 100644 --- a/rbi/hanzoai/models/organization_delete_response.rbi +++ b/rbi/hanzoai/models/organization_delete_response.rbi @@ -621,14 +621,23 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants + ) + ) + end attr_accessor :model_aliases sig do params( created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants + ) ).returns(T.attached_class) end def self.new(created_by:, updated_by:, model_aliases: nil) @@ -639,7 +648,10 @@ module Hanzoai { created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants + ) } ) end diff --git a/rbi/hanzoai/models/organization_list_response.rbi b/rbi/hanzoai/models/organization_list_response.rbi index 2cf86201..c0d2bcb6 100644 --- a/rbi/hanzoai/models/organization_list_response.rbi +++ b/rbi/hanzoai/models/organization_list_response.rbi @@ -620,14 +620,23 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants + ) + ) + end attr_accessor :model_aliases sig do params( created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants + ) ).returns(T.attached_class) end def self.new(created_by:, updated_by:, model_aliases: nil) @@ -638,7 +647,10 @@ module Hanzoai { created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants + ) } ) end diff --git a/rbi/hanzoai/models/organization_update_response.rbi b/rbi/hanzoai/models/organization_update_response.rbi index be6769d4..4cbad537 100644 --- a/rbi/hanzoai/models/organization_update_response.rbi +++ b/rbi/hanzoai/models/organization_update_response.rbi @@ -612,14 +612,23 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants + ) + ) + end attr_accessor :model_aliases sig do params( created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants + ) ).returns(T.attached_class) end def self.new(created_by:, updated_by:, model_aliases: nil) @@ -630,7 +639,10 @@ module Hanzoai { created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants + ) } ) end diff --git a/rbi/hanzoai/models/spend_list_logs_response.rbi b/rbi/hanzoai/models/spend_list_logs_response.rbi index 0607a5ad..00284674 100644 --- a/rbi/hanzoai/models/spend_list_logs_response.rbi +++ b/rbi/hanzoai/models/spend_list_logs_response.rbi @@ -17,11 +17,21 @@ module Hanzoai sig { returns(String) } attr_accessor :call_type - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::EndTime::Variants + ) + ) + end attr_accessor :end_time sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::Messages::Variants + ) + ) end attr_accessor :messages @@ -29,11 +39,21 @@ module Hanzoai attr_accessor :request_id sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::Response::Variants + ) + ) end attr_accessor :response - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::StartTime::Variants + ) + ) + end attr_accessor :start_time sig { returns(T.nilable(String)) } @@ -82,11 +102,23 @@ module Hanzoai params( api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), + end_time: + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::EndTime::Variants + ), + messages: + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::Messages::Variants + ), request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + response: + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), @@ -129,13 +161,23 @@ module Hanzoai { api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), + end_time: + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::EndTime::Variants + ), messages: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::Messages::Variants + ), request_id: String, response: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::SpendListLogsResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), diff --git a/rbi/hanzoai/models/spend_list_tags_response.rbi b/rbi/hanzoai/models/spend_list_tags_response.rbi index 0cf9e6d5..72791cb6 100644 --- a/rbi/hanzoai/models/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/spend_list_tags_response.rbi @@ -17,11 +17,21 @@ module Hanzoai sig { returns(String) } attr_accessor :call_type - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::EndTime::Variants + ) + ) + end attr_accessor :end_time sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::Messages::Variants + ) + ) end attr_accessor :messages @@ -29,11 +39,21 @@ module Hanzoai attr_accessor :request_id sig do - returns(T.nilable(T.any(String, T::Array[T.anything], T.anything))) + returns( + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::Response::Variants + ) + ) end attr_accessor :response - sig { returns(T.nilable(T.any(String, Time))) } + sig do + returns( + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::StartTime::Variants + ) + ) + end attr_accessor :start_time sig { returns(T.nilable(String)) } @@ -82,11 +102,23 @@ module Hanzoai params( api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), - messages: T.nilable(T.any(String, T::Array[T.anything], T.anything)), + end_time: + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::EndTime::Variants + ), + messages: + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::Messages::Variants + ), request_id: String, - response: T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + response: + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), @@ -129,13 +161,23 @@ module Hanzoai { api_key: String, call_type: String, - end_time: T.nilable(T.any(String, Time)), + end_time: + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::EndTime::Variants + ), messages: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::Messages::Variants + ), request_id: String, response: - T.nilable(T.any(String, T::Array[T.anything], T.anything)), - start_time: T.nilable(T.any(String, Time)), + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::Response::Variants + ), + start_time: + T.nilable( + Hanzoai::Models::SpendListTagsResponseItem::StartTime::Variants + ), api_base: T.nilable(String), cache_hit: T.nilable(String), cache_key: T.nilable(String), diff --git a/rbi/hanzoai/models/team_add_member_response.rbi b/rbi/hanzoai/models/team_add_member_response.rbi index bb7843cb..a45993e8 100644 --- a/rbi/hanzoai/models/team_add_member_response.rbi +++ b/rbi/hanzoai/models/team_add_member_response.rbi @@ -698,14 +698,23 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants + ) + ) + end attr_accessor :model_aliases sig do params( created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants + ) ).returns(T.attached_class) end def self.new(created_by:, updated_by:, model_aliases: nil) @@ -716,7 +725,10 @@ module Hanzoai { created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants + ) } ) end diff --git a/rbi/hanzoai/models/team_create_response.rbi b/rbi/hanzoai/models/team_create_response.rbi index 9cded3d4..212f3e52 100644 --- a/rbi/hanzoai/models/team_create_response.rbi +++ b/rbi/hanzoai/models/team_create_response.rbi @@ -185,14 +185,23 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by - sig { returns(T.nilable(T.any(T.anything, String))) } + sig do + returns( + T.nilable( + Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants + ) + ) + end attr_accessor :model_aliases sig do params( created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants + ) ).returns(T.attached_class) end def self.new(created_by:, updated_by:, model_aliases: nil) @@ -203,7 +212,10 @@ module Hanzoai { created_by: String, updated_by: String, - model_aliases: T.nilable(T.any(T.anything, String)) + model_aliases: + T.nilable( + Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants + ) } ) end diff --git a/rbi/hanzoai/resources/health.rbi b/rbi/hanzoai/resources/health.rbi index 2f94a02b..ec21debe 100644 --- a/rbi/hanzoai/resources/health.rbi +++ b/rbi/hanzoai/resources/health.rbi @@ -67,11 +67,7 @@ module Hanzoai # ``` sig do params( - service: - T.any( - Hanzoai::HealthCheckServicesParams::Service::OrSymbol, - String - ), + service: Hanzoai::HealthCheckServicesParams::Service::Variants, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end From b14560dd5b4a1cd5ad9ca83bb11df8e76d70362c Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 21 May 2025 03:31:39 +0000 Subject: [PATCH 082/139] chore: refine Yard and Sorbet types and ensure linting is turned on for examples --- Rakefile | 13 ++++++++----- lib/hanzoai/internal.rb | 3 +++ .../audio/transcription_create_params.rb | 4 ++-- lib/hanzoai/models/file_create_params.rb | 4 ++-- lib/hanzoai/resources/audio/transcriptions.rb | 2 +- lib/hanzoai/resources/files.rb | 2 +- rbi/hanzoai/internal.rbi | 3 +++ .../audio/transcription_create_params.rbi | 6 +++--- rbi/hanzoai/models/file_create_params.rbi | 6 +++--- .../models/health_check_services_params.rbi | 18 +++++++++++++++--- rbi/hanzoai/resources/audio/transcriptions.rbi | 2 +- rbi/hanzoai/resources/files.rbi | 2 +- rbi/hanzoai/resources/health.rbi | 6 +++++- sig/hanzoai/internal.rbs | 2 ++ .../audio/transcription_create_params.rbs | 6 +++--- sig/hanzoai/models/file_create_params.rbs | 6 +++--- sig/hanzoai/resources/audio/transcriptions.rbs | 2 +- sig/hanzoai/resources/files.rbs | 2 +- sorbet/config | 2 +- .../internal/sorbet_runtime_support_test.rb | 1 + 20 files changed, 60 insertions(+), 32 deletions(-) diff --git a/Rakefile b/Rakefile index 807c0451..24b601af 100644 --- a/Rakefile +++ b/Rakefile @@ -9,6 +9,7 @@ require "rake/clean" require "rubocop/rake_task" tapioca = "sorbet/tapioca" +examples = "examples" ignore_file = ".ignore" CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/ doc/], *FileList["*.gem"], ignore_file) @@ -39,7 +40,7 @@ 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] + find = %w[find ./lib ./test ./rbi ./examples -type f -and ( -name *.rb -or -name *.rbi ) -print0] rubocop = %w[rubocop] rubocop += %w[--format github] if ENV.key?("CI") @@ -54,7 +55,7 @@ end 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] + find = %w[find ./lib ./test ./examples -type f -and -name *.rb -print0] fmt = xargs + %w[rubocop --fail-level F --autocorrect --format simple --] sh("#{find.shelljoin} | #{fmt.shelljoin}") end @@ -117,12 +118,14 @@ multitask(:"typecheck:steep") do sh(*%w[steep check]) end +directory(examples) + desc("Typecheck `*.rbi`") -multitask(:"typecheck:sorbet") do - sh(*%w[srb typecheck]) +multitask("typecheck:sorbet": examples) do + sh(*%w[srb typecheck --dir], examples) end -file(tapioca) do +directory(tapioca) do sh(*%w[tapioca init]) end diff --git a/lib/hanzoai/internal.rb b/lib/hanzoai/internal.rb index ec4e1f7a..f78a7e9f 100644 --- a/lib/hanzoai/internal.rb +++ b/lib/hanzoai/internal.rb @@ -13,5 +13,8 @@ module Internal define_sorbet_constant!(:AnyHash) do T.type_alias { T::Hash[Symbol, T.anything] } end + define_sorbet_constant!(:FileInput) do + T.type_alias { T.any(Pathname, StringIO, IO, String, Hanzoai::FilePart) } + end end end diff --git a/lib/hanzoai/models/audio/transcription_create_params.rb b/lib/hanzoai/models/audio/transcription_create_params.rb index 0c48eb36..69b01b01 100644 --- a/lib/hanzoai/models/audio/transcription_create_params.rb +++ b/lib/hanzoai/models/audio/transcription_create_params.rb @@ -10,11 +10,11 @@ class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute file # - # @return [Pathname, StringIO, IO, Hanzoai::FilePart] + # @return [Pathname, StringIO, IO, String, Hanzoai::FilePart] required :file, Hanzoai::Internal::Type::FileInput # @!method initialize(file:, request_options: {}) - # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] + # @param file [Pathname, StringIO, IO, String, Hanzoai::FilePart] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/file_create_params.rb b/lib/hanzoai/models/file_create_params.rb index 240845c1..48b1c42f 100644 --- a/lib/hanzoai/models/file_create_params.rb +++ b/lib/hanzoai/models/file_create_params.rb @@ -9,7 +9,7 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute file # - # @return [Pathname, StringIO, IO, Hanzoai::FilePart] + # @return [Pathname, StringIO, IO, String, Hanzoai::FilePart] required :file, Hanzoai::Internal::Type::FileInput # @!attribute purpose @@ -23,7 +23,7 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel optional :custom_llm_provider, String # @!method initialize(file:, purpose:, custom_llm_provider: nil, request_options: {}) - # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] + # @param file [Pathname, StringIO, IO, String, Hanzoai::FilePart] # @param purpose [String] # @param custom_llm_provider [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/resources/audio/transcriptions.rb b/lib/hanzoai/resources/audio/transcriptions.rb index 9d100e1a..18bdd097 100644 --- a/lib/hanzoai/resources/audio/transcriptions.rb +++ b/lib/hanzoai/resources/audio/transcriptions.rb @@ -10,7 +10,7 @@ class Transcriptions # # @overload create(file:, request_options: {}) # - # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] + # @param file [Pathname, StringIO, IO, String, Hanzoai::FilePart] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/files.rb b/lib/hanzoai/resources/files.rb index e78dd739..4257ba6e 100644 --- a/lib/hanzoai/resources/files.rb +++ b/lib/hanzoai/resources/files.rb @@ -22,7 +22,7 @@ class Files # @overload create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}) # # @param provider [String] - # @param file [Pathname, StringIO, IO, Hanzoai::FilePart] + # @param file [Pathname, StringIO, IO, String, Hanzoai::FilePart] # @param purpose [String] # @param custom_llm_provider [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/rbi/hanzoai/internal.rbi b/rbi/hanzoai/internal.rbi index d0e4ed73..408293cc 100644 --- a/rbi/hanzoai/internal.rbi +++ b/rbi/hanzoai/internal.rbi @@ -8,6 +8,9 @@ module Hanzoai # this alias might be refined in the future. AnyHash = T.type_alias { T::Hash[Symbol, T.anything] } + FileInput = + T.type_alias { T.any(Pathname, StringIO, IO, String, Hanzoai::FilePart) } + OMIT = T.let(Object.new.freeze, T.anything) end end diff --git a/rbi/hanzoai/models/audio/transcription_create_params.rbi b/rbi/hanzoai/models/audio/transcription_create_params.rbi index 4ecefa1b..009720f4 100644 --- a/rbi/hanzoai/models/audio/transcription_create_params.rbi +++ b/rbi/hanzoai/models/audio/transcription_create_params.rbi @@ -15,12 +15,12 @@ module Hanzoai ) end - sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } + sig { returns(Hanzoai::Internal::FileInput) } attr_accessor :file sig do params( - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + file: Hanzoai::Internal::FileInput, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end @@ -30,7 +30,7 @@ module Hanzoai sig do override.returns( { - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + file: Hanzoai::Internal::FileInput, request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/file_create_params.rbi b/rbi/hanzoai/models/file_create_params.rbi index 4cef20e6..a7e4d9b3 100644 --- a/rbi/hanzoai/models/file_create_params.rbi +++ b/rbi/hanzoai/models/file_create_params.rbi @@ -11,7 +11,7 @@ module Hanzoai T.any(Hanzoai::FileCreateParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.any(Pathname, StringIO, IO, Hanzoai::FilePart)) } + sig { returns(Hanzoai::Internal::FileInput) } attr_accessor :file sig { returns(String) } @@ -25,7 +25,7 @@ module Hanzoai sig do params( - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + file: Hanzoai::Internal::FileInput, purpose: String, custom_llm_provider: String, request_options: Hanzoai::RequestOptions::OrHash @@ -42,7 +42,7 @@ module Hanzoai sig do override.returns( { - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + file: Hanzoai::Internal::FileInput, purpose: String, custom_llm_provider: String, request_options: Hanzoai::RequestOptions diff --git a/rbi/hanzoai/models/health_check_services_params.rbi b/rbi/hanzoai/models/health_check_services_params.rbi index 6419f888..3bbe5fb6 100644 --- a/rbi/hanzoai/models/health_check_services_params.rbi +++ b/rbi/hanzoai/models/health_check_services_params.rbi @@ -12,12 +12,20 @@ module Hanzoai end # Specify the service being hit. - sig { returns(Hanzoai::HealthCheckServicesParams::Service::Variants) } + sig do + returns( + T.any(Hanzoai::HealthCheckServicesParams::Service::OrSymbol, String) + ) + end attr_accessor :service sig do params( - service: Hanzoai::HealthCheckServicesParams::Service::Variants, + service: + T.any( + Hanzoai::HealthCheckServicesParams::Service::OrSymbol, + String + ), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end @@ -31,7 +39,11 @@ module Hanzoai sig do override.returns( { - service: Hanzoai::HealthCheckServicesParams::Service::Variants, + service: + T.any( + Hanzoai::HealthCheckServicesParams::Service::OrSymbol, + String + ), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/resources/audio/transcriptions.rbi b/rbi/hanzoai/resources/audio/transcriptions.rbi index 291b480d..620135c8 100644 --- a/rbi/hanzoai/resources/audio/transcriptions.rbi +++ b/rbi/hanzoai/resources/audio/transcriptions.rbi @@ -9,7 +9,7 @@ module Hanzoai # https://platform.openai.com/docs/api-reference/audio/createTranscription?lang=curl sig do params( - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + file: Hanzoai::Internal::FileInput, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end diff --git a/rbi/hanzoai/resources/files.rbi b/rbi/hanzoai/resources/files.rbi index b2df58c4..592d9bb1 100644 --- a/rbi/hanzoai/resources/files.rbi +++ b/rbi/hanzoai/resources/files.rbi @@ -21,7 +21,7 @@ module Hanzoai sig do params( provider: String, - file: T.any(Pathname, StringIO, IO, Hanzoai::FilePart), + file: Hanzoai::Internal::FileInput, purpose: String, custom_llm_provider: String, request_options: Hanzoai::RequestOptions::OrHash diff --git a/rbi/hanzoai/resources/health.rbi b/rbi/hanzoai/resources/health.rbi index ec21debe..2f94a02b 100644 --- a/rbi/hanzoai/resources/health.rbi +++ b/rbi/hanzoai/resources/health.rbi @@ -67,7 +67,11 @@ module Hanzoai # ``` sig do params( - service: Hanzoai::HealthCheckServicesParams::Service::Variants, + service: + T.any( + Hanzoai::HealthCheckServicesParams::Service::OrSymbol, + String + ), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end diff --git a/sig/hanzoai/internal.rbs b/sig/hanzoai/internal.rbs index ef4e2947..8d8b98d9 100644 --- a/sig/hanzoai/internal.rbs +++ b/sig/hanzoai/internal.rbs @@ -2,6 +2,8 @@ module Hanzoai module Internal extend Hanzoai::Internal::Util::SorbetRuntimeSupport + type file_input = Pathname | StringIO | IO | String | Hanzoai::FilePart + OMIT: Object end end diff --git a/sig/hanzoai/models/audio/transcription_create_params.rbs b/sig/hanzoai/models/audio/transcription_create_params.rbs index 2e93c94d..17b860cb 100644 --- a/sig/hanzoai/models/audio/transcription_create_params.rbs +++ b/sig/hanzoai/models/audio/transcription_create_params.rbs @@ -2,17 +2,17 @@ module Hanzoai module Models module Audio type transcription_create_params = - { file: (Pathname | StringIO | IO | Hanzoai::FilePart) } + { file: Hanzoai::Internal::file_input } & Hanzoai::Internal::Type::request_parameters class TranscriptionCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor file: Pathname | StringIO | IO | Hanzoai::FilePart + attr_accessor file: Hanzoai::Internal::file_input def initialize: ( - file: Pathname | StringIO | IO | Hanzoai::FilePart, + file: Hanzoai::Internal::file_input, ?request_options: Hanzoai::request_opts ) -> void end diff --git a/sig/hanzoai/models/file_create_params.rbs b/sig/hanzoai/models/file_create_params.rbs index affb1325..2fe95e44 100644 --- a/sig/hanzoai/models/file_create_params.rbs +++ b/sig/hanzoai/models/file_create_params.rbs @@ -2,7 +2,7 @@ module Hanzoai module Models type file_create_params = { - file: (Pathname | StringIO | IO | Hanzoai::FilePart), + file: Hanzoai::Internal::file_input, purpose: String, custom_llm_provider: String } @@ -12,7 +12,7 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor file: Pathname | StringIO | IO | Hanzoai::FilePart + attr_accessor file: Hanzoai::Internal::file_input attr_accessor purpose: String @@ -21,7 +21,7 @@ module Hanzoai def custom_llm_provider=: (String) -> String def initialize: ( - file: Pathname | StringIO | IO | Hanzoai::FilePart, + file: Hanzoai::Internal::file_input, purpose: String, ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts diff --git a/sig/hanzoai/resources/audio/transcriptions.rbs b/sig/hanzoai/resources/audio/transcriptions.rbs index 817e15a9..7f4ab972 100644 --- a/sig/hanzoai/resources/audio/transcriptions.rbs +++ b/sig/hanzoai/resources/audio/transcriptions.rbs @@ -3,7 +3,7 @@ module Hanzoai class Audio class Transcriptions def create: ( - file: Pathname | StringIO | IO | Hanzoai::FilePart, + file: Hanzoai::Internal::file_input, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/files.rbs b/sig/hanzoai/resources/files.rbs index 1bd039c2..e63bf550 100644 --- a/sig/hanzoai/resources/files.rbs +++ b/sig/hanzoai/resources/files.rbs @@ -5,7 +5,7 @@ module Hanzoai def create: ( String provider, - file: Pathname | StringIO | IO | Hanzoai::FilePart, + file: Hanzoai::Internal::file_input, purpose: String, ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts diff --git a/sorbet/config b/sorbet/config index 538c1528..6fe84ed8 100644 --- a/sorbet/config +++ b/sorbet/config @@ -1,2 +1,2 @@ ---dir=rbi +--dir=rbi/ --ignore=test/ diff --git a/test/hanzoai/internal/sorbet_runtime_support_test.rb b/test/hanzoai/internal/sorbet_runtime_support_test.rb index 8b74e051..04b2e319 100644 --- a/test/hanzoai/internal/sorbet_runtime_support_test.rb +++ b/test/hanzoai/internal/sorbet_runtime_support_test.rb @@ -25,6 +25,7 @@ def test_nil_aliases err = Hanzoai::Internal::Util::SorbetRuntimeSupport::MissingSorbetRuntimeError assert_raises(err) { Hanzoai::Internal::AnyHash } + assert_raises(err) { Hanzoai::Internal::FileInput } assert_raises(err) { Hanzoai::Internal::Type::Converter::Input } assert_raises(err) { Hanzoai::Internal::Type::Converter::CoerceState } assert_raises(err) { Hanzoai::Internal::Type::Converter::DumpState } From a8363d4d6539cc012164dd338a8b130f2c0482af Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 22 May 2025 02:39:01 +0000 Subject: [PATCH 083/139] chore(docs): grammar improvements --- README.md | 6 +++--- SECURITY.md | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 9865ac2d..1554d149 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ puts(response[:my_undocumented_property]) #### Undocumented request params -If you want to explicitly send an extra param, you can do so with the `extra_query`, `extra_body`, and `extra_headers` under the `request_options:` parameter when making a request as seen in examples above. +If you want to explicitly send an extra param, you can do so with the `extra_query`, `extra_body`, and `extra_headers` under the `request_options:` parameter when making a request, as seen in the examples above. #### Undocumented endpoints @@ -185,7 +185,7 @@ response = client.request( ### Concurrency & connection pooling -The `Hanzoai::Client` instances are threadsafe, but only are fork-safe when there are no in-flight HTTP requests. +The `Hanzoai::Client` instances are threadsafe, but are only are fork-safe when there are no in-flight HTTP requests. Each instance of `Hanzoai::Client` has its own HTTP connection pool with a default size of 99. As such, we recommend instantiating the client once per application in most settings. @@ -235,7 +235,7 @@ hanzo.utils.transform_request( # … ) -# Literal values is also permissible: +# Literal values are also permissible: hanzo.utils.transform_request( call_type: :embedding, # … diff --git a/SECURITY.md b/SECURITY.md index bada7faa..0b579e02 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -16,11 +16,11 @@ before making any information public. ## Reporting Non-SDK Related Security Issues If you encounter security issues that are not directly related to SDKs but pertain to the services -or products provided by Hanzo please follow the respective company's security reporting guidelines. +or products provided by Hanzo, please follow the respective company's security reporting guidelines. ### Hanzo Terms and Policies -Please contact dev@hanzo.ai for any questions or concerns regarding security of our services. +Please contact dev@hanzo.ai for any questions or concerns regarding the security of our services. --- From 81b0d4b40df5ed06f4e01ab9cc3abf88c38d150b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 22 May 2025 03:22:43 +0000 Subject: [PATCH 084/139] chore: force utf-8 locale via `RUBYOPT` when formatting --- Rakefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Rakefile b/Rakefile index 24b601af..95f3f90e 100644 --- a/Rakefile +++ b/Rakefile @@ -36,7 +36,7 @@ multitask(:test) do end xargs = %w[xargs --no-run-if-empty --null --max-procs=0 --max-args=300 --] -locale = {"LC_ALL" => "C.UTF-8"} +ruby_opt = {"RUBYOPT" => [ENV["RUBYOPT"], "--encoding=UTF-8"].compact.join(" ")} desc("Lint `*.rb(i)`") multitask(:"lint:rubocop") do @@ -64,7 +64,7 @@ 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}") + sh(ruby_opt, "#{find.shelljoin} | #{fmt.shelljoin}") end desc("Format `*.rbs`") @@ -100,7 +100,7 @@ multitask(:"format:rbs") 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(locale, "#{find.shelljoin} | #{fmt.shelljoin}") do + sh(ruby_opt, "#{find.shelljoin} | #{fmt.shelljoin}") do success = _1 end # transform type aliases back to class aliases From 41b0ab4c947eb815211460d59d6f389e0f661af1 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 22 May 2025 04:00:24 +0000 Subject: [PATCH 085/139] chore: use fully qualified names for yard annotations and rbs aliases --- lib/hanzoai/models/budget_new.rb | 8 +- .../config/pass_through_endpoint_response.rb | 4 +- .../config/pass_through_generic_endpoint.rb | 2 +- lib/hanzoai/models/customer_create_params.rb | 8 +- lib/hanzoai/models/customer_update_params.rb | 4 +- .../models/fine_tuning/job_create_params.rb | 14 +-- .../models/fine_tuning/job_list_params.rb | 4 +- .../models/fine_tuning/job_retrieve_params.rb | 4 +- .../global/spend_retrieve_report_params.rb | 4 +- .../models/health_check_services_params.rb | 20 ++--- lib/hanzoai/models/key_list_response.rb | 4 +- lib/hanzoai/models/member.rb | 6 +- lib/hanzoai/models/model/update_deployment.rb | 22 ++--- lib/hanzoai/models/model_create_params.rb | 20 ++--- lib/hanzoai/models/model_info.rb | 6 +- lib/hanzoai/models/org_member.rb | 6 +- .../organization/info_retrieve_response.rb | 4 +- .../models/organization_add_member_params.rb | 8 +- .../models/organization_delete_response.rb | 4 +- .../models/organization_list_response.rb | 4 +- .../organization_update_member_params.rb | 4 +- .../models/organization_update_response.rb | 4 +- .../models/team/callback_add_params.rb | 4 +- lib/hanzoai/models/team_add_member_params.rb | 8 +- .../models/team_add_member_response.rb | 4 +- lib/hanzoai/models/team_create_params.rb | 4 +- lib/hanzoai/models/team_create_response.rb | 4 +- .../models/team_update_member_params.rb | 4 +- lib/hanzoai/models/user_create_params.rb | 4 +- lib/hanzoai/models/user_update_params.rb | 4 +- .../models/util_transform_request_params.rb | 4 +- lib/hanzoai/resources/budget.rb | 4 +- .../resources/config/pass_through_endpoint.rb | 4 +- lib/hanzoai/resources/customer.rb | 6 +- lib/hanzoai/resources/fine_tuning/jobs.rb | 8 +- lib/hanzoai/resources/global/spend.rb | 2 +- lib/hanzoai/resources/health.rb | 2 +- lib/hanzoai/resources/key.rb | 4 +- lib/hanzoai/resources/model.rb | 4 +- lib/hanzoai/resources/model/update.rb | 8 +- lib/hanzoai/resources/organization.rb | 4 +- lib/hanzoai/resources/team.rb | 6 +- lib/hanzoai/resources/team/callback.rb | 2 +- lib/hanzoai/resources/user.rb | 4 +- lib/hanzoai/resources/utils.rb | 2 +- .../models/active_list_callbacks_params.rbs | 2 + .../models/add_add_allowed_ip_params.rbs | 2 + .../models/anthropic_create_params.rbs | 2 + .../models/anthropic_delete_params.rbs | 2 + .../models/anthropic_modify_params.rbs | 2 + .../models/anthropic_retrieve_params.rbs | 2 + .../models/anthropic_update_params.rbs | 2 + .../models/assemblyai_create_params.rbs | 2 + .../models/assemblyai_delete_params.rbs | 2 + .../models/assemblyai_patch_params.rbs | 2 + .../models/assemblyai_retrieve_params.rbs | 2 + .../models/assemblyai_update_params.rbs | 2 + .../models/assistant_create_params.rbs | 2 + .../models/assistant_delete_params.rbs | 2 + sig/hanzoai/models/assistant_list_params.rbs | 2 + .../models/audio/speech_create_params.rbs | 2 + .../audio/transcription_create_params.rbs | 5 ++ sig/hanzoai/models/azure_call_params.rbs | 2 + sig/hanzoai/models/azure_create_params.rbs | 2 + sig/hanzoai/models/azure_delete_params.rbs | 2 + sig/hanzoai/models/azure_patch_params.rbs | 2 + sig/hanzoai/models/azure_update_params.rbs | 2 + .../batch_cancel_with_provider_params.rbs | 5 ++ sig/hanzoai/models/batch_create_params.rbs | 5 ++ .../batch_create_with_provider_params.rbs | 2 + sig/hanzoai/models/batch_list_params.rbs | 7 ++ .../batch_list_with_provider_params.rbs | 6 ++ sig/hanzoai/models/batch_retrieve_params.rbs | 5 ++ .../batch_retrieve_with_provider_params.rbs | 5 ++ .../models/batches/cancel_cancel_params.rbs | 5 ++ sig/hanzoai/models/bedrock_create_params.rbs | 2 + sig/hanzoai/models/bedrock_delete_params.rbs | 2 + sig/hanzoai/models/bedrock_patch_params.rbs | 2 + .../models/bedrock_retrieve_params.rbs | 2 + sig/hanzoai/models/bedrock_update_params.rbs | 2 + sig/hanzoai/models/block_key_request.rbs | 2 + sig/hanzoai/models/block_team_request.rbs | 2 + sig/hanzoai/models/block_users.rbs | 2 + sig/hanzoai/models/budget_create_params.rbs | 2 + sig/hanzoai/models/budget_delete_params.rbs | 2 + sig/hanzoai/models/budget_info_params.rbs | 5 ++ sig/hanzoai/models/budget_list_params.rbs | 2 + sig/hanzoai/models/budget_new.rbs | 18 ++++ sig/hanzoai/models/budget_settings_params.rbs | 5 ++ sig/hanzoai/models/budget_update_params.rbs | 2 + .../cache/redi_retrieve_info_params.rbs | 2 + sig/hanzoai/models/cache_delete_params.rbs | 2 + sig/hanzoai/models/cache_flush_all_params.rbs | 2 + sig/hanzoai/models/cache_ping_params.rbs | 2 + sig/hanzoai/models/cache_ping_response.rbs | 9 ++ .../models/chat/completion_create_params.rbs | 5 ++ sig/hanzoai/models/client_get_home_params.rbs | 2 + sig/hanzoai/models/cohere_create_params.rbs | 2 + sig/hanzoai/models/cohere_delete_params.rbs | 2 + sig/hanzoai/models/cohere_modify_params.rbs | 2 + sig/hanzoai/models/cohere_retrieve_params.rbs | 2 + sig/hanzoai/models/cohere_update_params.rbs | 2 + .../models/completion_create_params.rbs | 5 ++ .../pass_through_endpoint_create_params.rbs | 2 + .../pass_through_endpoint_delete_params.rbs | 5 ++ .../pass_through_endpoint_list_params.rbs | 5 ++ .../config/pass_through_endpoint_response.rbs | 4 + .../pass_through_endpoint_update_params.rbs | 2 + .../config/pass_through_generic_endpoint.rbs | 2 + ...igurable_clientside_params_custom_auth.rbs | 2 + .../models/credential_create_params.rbs | 8 ++ .../models/credential_delete_params.rbs | 2 + sig/hanzoai/models/credential_item.rbs | 6 ++ sig/hanzoai/models/credential_list_params.rbs | 2 + sig/hanzoai/models/customer_block_params.rbs | 2 + sig/hanzoai/models/customer_create_params.rbs | 24 +++++ sig/hanzoai/models/customer_delete_params.rbs | 5 ++ sig/hanzoai/models/customer_list_params.rbs | 2 + sig/hanzoai/models/customer_list_response.rbs | 20 +++++ .../models/customer_retrieve_info_params.rbs | 5 ++ .../customer_retrieve_info_response.rbs | 20 +++++ .../models/customer_unblock_params.rbs | 2 + sig/hanzoai/models/customer_update_params.rbs | 11 +++ .../delete_create_allowed_ip_params.rbs | 2 + .../models/embedding_create_params.rbs | 5 ++ sig/hanzoai/models/engine_complete_params.rbs | 2 + sig/hanzoai/models/engine_embed_params.rbs | 2 + .../models/engines/chat_complete_params.rbs | 2 + .../models/eu_assemblyai_create_params.rbs | 2 + .../models/eu_assemblyai_delete_params.rbs | 2 + .../models/eu_assemblyai_patch_params.rbs | 2 + .../models/eu_assemblyai_retrieve_params.rbs | 2 + .../models/eu_assemblyai_update_params.rbs | 2 + sig/hanzoai/models/file_create_params.rbs | 7 ++ sig/hanzoai/models/file_delete_params.rbs | 5 ++ sig/hanzoai/models/file_list_params.rbs | 5 ++ sig/hanzoai/models/file_retrieve_params.rbs | 5 ++ .../models/files/content_retrieve_params.rbs | 5 ++ .../models/fine_tuning/job_create_params.rbs | 42 ++++++--- .../models/fine_tuning/job_list_params.rbs | 7 ++ .../fine_tuning/job_retrieve_params.rbs | 5 ++ .../fine_tuning/jobs/cancel_create_params.rbs | 2 + sig/hanzoai/models/gemini_create_params.rbs | 2 + sig/hanzoai/models/gemini_delete_params.rbs | 2 + sig/hanzoai/models/gemini_patch_params.rbs | 2 + sig/hanzoai/models/gemini_retrieve_params.rbs | 2 + sig/hanzoai/models/gemini_update_params.rbs | 2 + sig/hanzoai/models/generate_key_response.rbs | 35 ++++++++ .../models/global/spend_list_tags_params.rbs | 7 ++ .../global/spend_list_tags_response.rbs | 22 +++++ .../models/global/spend_reset_params.rbs | 2 + .../global/spend_retrieve_report_params.rbs | 11 +++ .../global/spend_retrieve_report_response.rbs | 22 +++++ sig/hanzoai/models/guardrail_list_params.rbs | 2 + .../models/guardrail_list_response.rbs | 16 ++++ .../models/health_check_all_params.rbs | 5 ++ .../models/health_check_liveliness_params.rbs | 2 + .../models/health_check_liveness_params.rbs | 2 + .../models/health_check_readiness_params.rbs | 2 + .../models/health_check_services_params.rbs | 5 ++ .../images/generation_create_params.rbs | 2 + sig/hanzoai/models/ip_address.rbs | 2 + .../models/key/regenerate_key_request.rbs | 31 +++++++ sig/hanzoai/models/key_block_params.rbs | 5 ++ sig/hanzoai/models/key_block_response.rbs | 32 +++++++ .../models/key_check_health_params.rbs | 2 + .../models/key_check_health_response.rbs | 11 +++ sig/hanzoai/models/key_delete_params.rbs | 7 ++ sig/hanzoai/models/key_generate_params.rbs | 32 +++++++ sig/hanzoai/models/key_list_params.rbs | 12 +++ sig/hanzoai/models/key_list_response.rbs | 65 ++++++++++++++ .../models/key_regenerate_by_key_params.rbs | 5 ++ .../models/key_retrieve_info_params.rbs | 2 + sig/hanzoai/models/key_unblock_params.rbs | 5 ++ sig/hanzoai/models/key_update_params.rbs | 32 +++++++ sig/hanzoai/models/langfuse_create_params.rbs | 2 + sig/hanzoai/models/langfuse_delete_params.rbs | 2 + sig/hanzoai/models/langfuse_patch_params.rbs | 2 + .../models/langfuse_retrieve_params.rbs | 2 + sig/hanzoai/models/langfuse_update_params.rbs | 2 + sig/hanzoai/models/member.rbs | 18 +++- sig/hanzoai/models/model/info_list_params.rbs | 5 ++ .../models/model/update_deployment.rbs | 72 +++++++++++---- .../models/model/update_full_params.rbs | 2 + .../models/model/update_partial_params.rbs | 2 + sig/hanzoai/models/model_create_params.rbs | 73 +++++++++++---- sig/hanzoai/models/model_delete_params.rbs | 2 + .../model_group_retrieve_info_params.rbs | 5 ++ sig/hanzoai/models/model_info.rbs | 21 ++++- sig/hanzoai/models/model_list_params.rbs | 6 ++ .../models/moderation_create_params.rbs | 2 + .../openai/deployment_complete_params.rbs | 2 + .../models/openai/deployment_embed_params.rbs | 2 + .../deployments/chat_complete_params.rbs | 2 + sig/hanzoai/models/openai_create_params.rbs | 2 + sig/hanzoai/models/openai_delete_params.rbs | 2 + sig/hanzoai/models/openai_patch_params.rbs | 2 + sig/hanzoai/models/openai_retrieve_params.rbs | 2 + sig/hanzoai/models/openai_update_params.rbs | 2 + sig/hanzoai/models/org_member.rbs | 18 +++- .../organization/info_deprecated_params.rbs | 5 ++ .../organization/info_retrieve_params.rbs | 5 ++ .../organization/info_retrieve_response.rbs | 76 ++++++++++++++++ .../models/organization_add_member_params.rbs | 7 ++ .../organization_add_member_response.rbs | 69 +++++++++++++++ .../models/organization_create_params.rbs | 16 ++++ .../models/organization_create_response.rbs | 13 +++ .../organization_delete_member_params.rbs | 7 ++ .../models/organization_delete_params.rbs | 5 ++ .../models/organization_delete_response.rbs | 76 ++++++++++++++++ .../models/organization_list_params.rbs | 2 + .../models/organization_list_response.rbs | 76 ++++++++++++++++ .../organization_update_member_params.rbs | 9 ++ .../organization_update_member_response.rbs | 22 +++++ .../models/organization_update_params.rbs | 11 +++ .../models/organization_update_response.rbs | 76 ++++++++++++++++ .../models/provider_list_budgets_params.rbs | 2 + .../models/provider_list_budgets_response.rbs | 11 +++ sig/hanzoai/models/rerank_create_params.rbs | 2 + .../models/rerank_create_v1_params.rbs | 2 + .../models/rerank_create_v2_params.rbs | 2 + sig/hanzoai/models/response_create_params.rbs | 2 + sig/hanzoai/models/response_delete_params.rbs | 2 + .../models/response_retrieve_params.rbs | 2 + .../responses/input_item_list_params.rbs | 2 + sig/hanzoai/models/route_list_params.rbs | 2 + .../models/setting_retrieve_params.rbs | 2 + .../models/spend_calculate_spend_params.rbs | 7 ++ sig/hanzoai/models/spend_list_logs_params.rbs | 9 ++ .../models/spend_list_logs_response.rbs | 22 +++++ sig/hanzoai/models/spend_list_tags_params.rbs | 6 ++ .../models/spend_list_tags_response.rbs | 22 +++++ .../models/team/callback_add_params.rbs | 8 ++ .../models/team/callback_retrieve_params.rbs | 2 + sig/hanzoai/models/team/model_add_params.rbs | 6 ++ .../models/team/model_remove_params.rbs | 6 ++ sig/hanzoai/models/team_add_member_params.rbs | 7 ++ .../models/team_add_member_response.rbs | 88 +++++++++++++++++++ sig/hanzoai/models/team_block_params.rbs | 2 + sig/hanzoai/models/team_create_params.rbs | 21 +++++ sig/hanzoai/models/team_create_response.rbs | 28 ++++++ sig/hanzoai/models/team_delete_params.rbs | 6 ++ .../models/team_disable_logging_params.rbs | 2 + .../models/team_list_available_params.rbs | 5 ++ sig/hanzoai/models/team_list_params.rbs | 6 ++ .../models/team_remove_member_params.rbs | 7 ++ .../models/team_retrieve_info_params.rbs | 5 ++ sig/hanzoai/models/team_unblock_params.rbs | 2 + .../models/team_update_member_params.rbs | 9 ++ .../models/team_update_member_response.rbs | 7 ++ sig/hanzoai/models/team_update_params.rbs | 18 ++++ sig/hanzoai/models/test_ping_params.rbs | 2 + sig/hanzoai/models/thread_create_params.rbs | 2 + sig/hanzoai/models/thread_retrieve_params.rbs | 2 + .../models/threads/message_create_params.rbs | 2 + .../models/threads/message_list_params.rbs | 2 + .../models/threads/run_create_params.rbs | 2 + sig/hanzoai/models/user_create_params.rbs | 31 +++++++ sig/hanzoai/models/user_create_response.rbs | 39 ++++++++ sig/hanzoai/models/user_delete_params.rbs | 6 ++ sig/hanzoai/models/user_list_params.rbs | 8 ++ .../models/user_retrieve_info_params.rbs | 5 ++ sig/hanzoai/models/user_update_params.rbs | 28 ++++++ ...til_get_supported_openai_params_params.rbs | 5 ++ .../models/util_token_counter_params.rbs | 7 ++ .../models/util_token_counter_response.rbs | 7 ++ .../models/util_transform_request_params.rbs | 6 ++ .../util_transform_request_response.rbs | 7 ++ .../models/vertex_ai_create_params.rbs | 2 + .../models/vertex_ai_delete_params.rbs | 2 + sig/hanzoai/models/vertex_ai_patch_params.rbs | 2 + .../models/vertex_ai_retrieve_params.rbs | 2 + .../models/vertex_ai_update_params.rbs | 2 + 273 files changed, 2109 insertions(+), 188 deletions(-) diff --git a/lib/hanzoai/models/budget_new.rb b/lib/hanzoai/models/budget_new.rb index c74eae4f..4f103aaa 100644 --- a/lib/hanzoai/models/budget_new.rb +++ b/lib/hanzoai/models/budget_new.rb @@ -31,7 +31,7 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) # - # @return [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] + # @return [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] optional :model_max_budget, -> { Hanzoai::Internal::Type::HashOf[Hanzoai::BudgetNew::ModelMaxBudget] }, nil?: true @@ -55,8 +55,8 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel optional :tpm_limit, Integer, nil?: true # @!method initialize(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Some parameter documentations has been truncated, see {Hanzoai::BudgetNew} for - # more details. + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::BudgetNew} for more details. # # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') # @@ -66,7 +66,7 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # diff --git a/lib/hanzoai/models/config/pass_through_endpoint_response.rb b/lib/hanzoai/models/config/pass_through_endpoint_response.rb index 244f7a0f..7facd513 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_response.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_response.rb @@ -7,14 +7,14 @@ module Config class PassThroughEndpointResponse < Hanzoai::Internal::Type::BaseModel # @!attribute endpoints # - # @return [Array] + # @return [Array] required :endpoints, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Config::PassThroughGenericEndpoint] } # @!method initialize(endpoints:) - # @param endpoints [Array] + # @param endpoints [Array] end end end diff --git a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb index 89905edb..2add888c 100644 --- a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb +++ b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb @@ -25,7 +25,7 @@ class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel # @!method initialize(headers:, path:, target:) # Some parameter documentations has been truncated, see - # {Hanzoai::Config::PassThroughGenericEndpoint} for more details. + # {Hanzoai::Models::Config::PassThroughGenericEndpoint} for more details. # # @param headers [Object] Key-value pairs of headers to be forwarded with the request. You can set any key # diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index 9872078c..2271d600 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -19,7 +19,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute allowed_model_region # - # @return [Symbol, Hanzoai::CustomerCreateParams::AllowedModelRegion, nil] + # @return [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] optional :allowed_model_region, enum: -> { Hanzoai::CustomerCreateParams::AllowedModelRegion @@ -63,7 +63,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', # 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}}) # - # @return [Hash{Symbol=>Hanzoai::CustomerCreateParams::ModelMaxBudget}, nil] + # @return [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] optional :model_max_budget, -> { Hanzoai::Internal::Type::HashOf[Hanzoai::CustomerCreateParams::ModelMaxBudget] }, nil?: true @@ -94,7 +94,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # # @param alias_ [String, nil] # - # @param allowed_model_region [Symbol, Hanzoai::CustomerCreateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] # # @param blocked [Boolean] # @@ -108,7 +108,7 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # diff --git a/lib/hanzoai/models/customer_update_params.rb b/lib/hanzoai/models/customer_update_params.rb index f83bfee0..510e5ddb 100644 --- a/lib/hanzoai/models/customer_update_params.rb +++ b/lib/hanzoai/models/customer_update_params.rb @@ -19,7 +19,7 @@ class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute allowed_model_region # - # @return [Symbol, Hanzoai::CustomerUpdateParams::AllowedModelRegion, nil] + # @return [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] optional :allowed_model_region, enum: -> { Hanzoai::CustomerUpdateParams::AllowedModelRegion @@ -49,7 +49,7 @@ class CustomerUpdateParams < Hanzoai::Internal::Type::BaseModel # @!method initialize(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_id: nil, default_model: nil, max_budget: nil, request_options: {}) # @param user_id [String] # @param alias_ [String, nil] - # @param allowed_model_region [Symbol, Hanzoai::CustomerUpdateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] # @param blocked [Boolean] # @param budget_id [String, nil] # @param default_model [String, nil] diff --git a/lib/hanzoai/models/fine_tuning/job_create_params.rb b/lib/hanzoai/models/fine_tuning/job_create_params.rb index e7db910c..393b56b9 100644 --- a/lib/hanzoai/models/fine_tuning/job_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_create_params.rb @@ -10,7 +10,7 @@ class JobCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute custom_llm_provider # - # @return [Symbol, Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider] + # @return [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider } # @!attribute model @@ -25,7 +25,7 @@ class JobCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute hyperparameters # - # @return [Hanzoai::FineTuning::JobCreateParams::Hyperparameters, nil] + # @return [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] optional :hyperparameters, -> { Hanzoai::FineTuning::JobCreateParams::Hyperparameters }, nil?: true # @!attribute integrations @@ -49,10 +49,10 @@ class JobCreateParams < Hanzoai::Internal::Type::BaseModel optional :validation_file, String, nil?: true # @!method initialize(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] # @param model [String] # @param training_file [String] - # @param hyperparameters [Hanzoai::FineTuning::JobCreateParams::Hyperparameters, nil] + # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] # @param integrations [Array, nil] # @param seed [Integer, nil] # @param suffix [String, nil] @@ -99,7 +99,7 @@ class Hyperparameters < Hanzoai::Internal::Type::BaseModel # @param learning_rate_multiplier [String, Float, nil] # @param n_epochs [String, Integer, nil] - # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#batch_size + # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#batch_size module BatchSize extend Hanzoai::Internal::Type::Union @@ -111,7 +111,7 @@ module BatchSize # @return [Array(String, Integer)] end - # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier + # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend Hanzoai::Internal::Type::Union @@ -123,7 +123,7 @@ module LearningRateMultiplier # @return [Array(String, Float)] end - # @see Hanzoai::FineTuning::JobCreateParams::Hyperparameters#n_epochs + # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#n_epochs module NEpochs extend Hanzoai::Internal::Type::Union diff --git a/lib/hanzoai/models/fine_tuning/job_list_params.rb b/lib/hanzoai/models/fine_tuning/job_list_params.rb index 4189ddc5..d541ea17 100644 --- a/lib/hanzoai/models/fine_tuning/job_list_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_list_params.rb @@ -10,7 +10,7 @@ class JobListParams < Hanzoai::Internal::Type::BaseModel # @!attribute custom_llm_provider # - # @return [Symbol, Hanzoai::FineTuning::JobListParams::CustomLlmProvider] + # @return [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobListParams::CustomLlmProvider } # @!attribute after @@ -24,7 +24,7 @@ class JobListParams < Hanzoai::Internal::Type::BaseModel optional :limit, Integer, nil?: true # @!method initialize(custom_llm_provider:, after: nil, limit: nil, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobListParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] # @param after [String, nil] # @param limit [Integer, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb index 182dd2d7..1de73ce2 100644 --- a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb @@ -10,11 +10,11 @@ class JobRetrieveParams < Hanzoai::Internal::Type::BaseModel # @!attribute custom_llm_provider # - # @return [Symbol, Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @return [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider } # @!method initialize(custom_llm_provider:, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CustomLlmProvider diff --git a/lib/hanzoai/models/global/spend_retrieve_report_params.rb b/lib/hanzoai/models/global/spend_retrieve_report_params.rb index ec36af3a..793b69bc 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_params.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_params.rb @@ -30,7 +30,7 @@ class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel # @!attribute group_by # Group spend by internal team or customer or api_key # - # @return [Symbol, Hanzoai::Global::SpendRetrieveReportParams::GroupBy, nil] + # @return [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] optional :group_by, enum: -> { Hanzoai::Global::SpendRetrieveReportParams::GroupBy }, nil?: true # @!attribute internal_user_id @@ -61,7 +61,7 @@ class SpendRetrieveReportParams < Hanzoai::Internal::Type::BaseModel # # @param end_date [String, nil] Time till which to view spend # - # @param group_by [Symbol, Hanzoai::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key + # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key # # @param internal_user_id [String, nil] View spend for a specific internal_user_id. Example internal_user_id='1234 # diff --git a/lib/hanzoai/models/health_check_services_params.rb b/lib/hanzoai/models/health_check_services_params.rb index d2c2661b..6dda6b45 100644 --- a/lib/hanzoai/models/health_check_services_params.rb +++ b/lib/hanzoai/models/health_check_services_params.rb @@ -10,11 +10,11 @@ class HealthCheckServicesParams < Hanzoai::Internal::Type::BaseModel # @!attribute service # Specify the service being hit. # - # @return [Symbol, String, Hanzoai::HealthCheckServicesParams::Service] + # @return [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] required :service, union: -> { Hanzoai::HealthCheckServicesParams::Service } # @!method initialize(service:, request_options: {}) - # @param service [Symbol, String, Hanzoai::HealthCheckServicesParams::Service] Specify the service being hit. + # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] Specify the service being hit. # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] @@ -22,21 +22,21 @@ class HealthCheckServicesParams < Hanzoai::Internal::Type::BaseModel module Service extend Hanzoai::Internal::Type::Union - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::SLACK_BUDGET_ALERTS } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::SLACK_BUDGET_ALERTS } - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::LANGFUSE } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::LANGFUSE } - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::SLACK } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::SLACK } - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::OPENMETER } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::OPENMETER } - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::WEBHOOK } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::WEBHOOK } - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::EMAIL } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::EMAIL } - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::BRAINTRUST } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::BRAINTRUST } - variant const: -> { Hanzoai::HealthCheckServicesParams::Service::DATADOG } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::DATADOG } variant String diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index c90aa678..db7264ba 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -238,7 +238,7 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute team_member # - # @return [Hanzoai::Member, nil] + # @return [Hanzoai::Models::Member, nil] optional :team_member, -> { Hanzoai::Member }, nil?: true # @!attribute team_member_spend @@ -416,7 +416,7 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # @param team_max_budget [Float, nil] # - # @param team_member [Hanzoai::Member, nil] + # @param team_member [Hanzoai::Models::Member, nil] # # @param team_member_spend [Float, nil] # diff --git a/lib/hanzoai/models/member.rb b/lib/hanzoai/models/member.rb index 7af36dd0..a2b76119 100644 --- a/lib/hanzoai/models/member.rb +++ b/lib/hanzoai/models/member.rb @@ -5,7 +5,7 @@ module Models class Member < Hanzoai::Internal::Type::BaseModel # @!attribute role # - # @return [Symbol, Hanzoai::Member::Role] + # @return [Symbol, Hanzoai::Models::Member::Role] required :role, enum: -> { Hanzoai::Member::Role } # @!attribute user_email @@ -19,11 +19,11 @@ class Member < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(role:, user_email: nil, user_id: nil) - # @param role [Symbol, Hanzoai::Member::Role] + # @param role [Symbol, Hanzoai::Models::Member::Role] # @param user_email [String, nil] # @param user_id [String, nil] - # @see Hanzoai::Member#role + # @see Hanzoai::Models::Member#role module Role extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/model/update_deployment.rb b/lib/hanzoai/models/model/update_deployment.rb index 66e8a71f..21eae39f 100644 --- a/lib/hanzoai/models/model/update_deployment.rb +++ b/lib/hanzoai/models/model/update_deployment.rb @@ -6,12 +6,12 @@ module Model class UpdateDeployment < Hanzoai::Internal::Type::BaseModel # @!attribute llm_params # - # @return [Hanzoai::Model::UpdateDeployment::LlmParams, nil] + # @return [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] optional :llm_params, -> { Hanzoai::Model::UpdateDeployment::LlmParams }, nil?: true # @!attribute model_info # - # @return [Hanzoai::ModelInfo, nil] + # @return [Hanzoai::Models::ModelInfo, nil] optional :model_info, -> { Hanzoai::ModelInfo }, nil?: true # @!attribute model_name @@ -20,11 +20,11 @@ class UpdateDeployment < Hanzoai::Internal::Type::BaseModel optional :model_name, String, nil?: true # @!method initialize(llm_params: nil, model_info: nil, model_name: nil) - # @param llm_params [Hanzoai::Model::UpdateDeployment::LlmParams, nil] - # @param model_info [Hanzoai::ModelInfo, nil] + # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] + # @param model_info [Hanzoai::Models::ModelInfo, nil] # @param model_name [String, nil] - # @see Hanzoai::Model::UpdateDeployment#llm_params + # @see Hanzoai::Models::Model::UpdateDeployment#llm_params class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute api_base # @@ -63,7 +63,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute configurable_clientside_auth_params # - # @return [Array, nil] + # @return [Array, nil] optional :configurable_clientside_auth_params, -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Model::UpdateDeployment::LlmParams::ConfigurableClientsideAuthParam] @@ -197,7 +197,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @param aws_region_name [String, nil] # @param aws_secret_access_key [String, nil] # @param budget_duration [String, nil] - # @param configurable_clientside_auth_params [Array, nil] + # @param configurable_clientside_auth_params [Array, nil] # @param custom_llm_provider [String, nil] # @param input_cost_per_second [Float, nil] # @param input_cost_per_token [Float, nil] @@ -230,10 +230,10 @@ module ConfigurableClientsideAuthParam variant -> { Hanzoai::ConfigurableClientsideParamsCustomAuth } # @!method self.variants - # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] + # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] end - # @see Hanzoai::Model::UpdateDeployment::LlmParams#stream_timeout + # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#stream_timeout module StreamTimeout extend Hanzoai::Internal::Type::Union @@ -245,7 +245,7 @@ module StreamTimeout # @return [Array(Float, String)] end - # @see Hanzoai::Model::UpdateDeployment::LlmParams#timeout + # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#timeout module Timeout extend Hanzoai::Internal::Type::Union @@ -257,7 +257,7 @@ module Timeout # @return [Array(Float, String)] end - # @see Hanzoai::Model::UpdateDeployment::LlmParams#vertex_credentials + # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#vertex_credentials module VertexCredentials extend Hanzoai::Internal::Type::Union diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index 62ab843c..d9e7583e 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -10,12 +10,12 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute llm_params # LLM Params with 'model' requirement - used for completions # - # @return [Hanzoai::ModelCreateParams::LlmParams] + # @return [Hanzoai::Models::ModelCreateParams::LlmParams] required :llm_params, -> { Hanzoai::ModelCreateParams::LlmParams } # @!attribute model_info # - # @return [Hanzoai::ModelInfo] + # @return [Hanzoai::Models::ModelInfo] required :model_info, -> { Hanzoai::ModelInfo } # @!attribute model_name @@ -24,9 +24,9 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel required :model_name, String # @!method initialize(llm_params:, model_info:, model_name:, request_options: {}) - # @param llm_params [Hanzoai::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions # - # @param model_info [Hanzoai::ModelInfo] + # @param model_info [Hanzoai::Models::ModelInfo] # # @param model_name [String] # @@ -75,7 +75,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute configurable_clientside_auth_params # - # @return [Array, nil] + # @return [Array, nil] optional :configurable_clientside_auth_params, -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::ModelCreateParams::LlmParams::ConfigurableClientsideAuthParam] @@ -209,7 +209,7 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @param aws_region_name [String, nil] # @param aws_secret_access_key [String, nil] # @param budget_duration [String, nil] - # @param configurable_clientside_auth_params [Array, nil] + # @param configurable_clientside_auth_params [Array, nil] # @param custom_llm_provider [String, nil] # @param input_cost_per_second [Float, nil] # @param input_cost_per_token [Float, nil] @@ -241,10 +241,10 @@ module ConfigurableClientsideAuthParam variant -> { Hanzoai::ConfigurableClientsideParamsCustomAuth } # @!method self.variants - # @return [Array(String, Hanzoai::ConfigurableClientsideParamsCustomAuth)] + # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] end - # @see Hanzoai::ModelCreateParams::LlmParams#stream_timeout + # @see Hanzoai::Models::ModelCreateParams::LlmParams#stream_timeout module StreamTimeout extend Hanzoai::Internal::Type::Union @@ -256,7 +256,7 @@ module StreamTimeout # @return [Array(Float, String)] end - # @see Hanzoai::ModelCreateParams::LlmParams#timeout + # @see Hanzoai::Models::ModelCreateParams::LlmParams#timeout module Timeout extend Hanzoai::Internal::Type::Union @@ -268,7 +268,7 @@ module Timeout # @return [Array(Float, String)] end - # @see Hanzoai::ModelCreateParams::LlmParams#vertex_credentials + # @see Hanzoai::Models::ModelCreateParams::LlmParams#vertex_credentials module VertexCredentials extend Hanzoai::Internal::Type::Union diff --git a/lib/hanzoai/models/model_info.rb b/lib/hanzoai/models/model_info.rb index f6a3220f..fa83ff38 100644 --- a/lib/hanzoai/models/model_info.rb +++ b/lib/hanzoai/models/model_info.rb @@ -40,7 +40,7 @@ class ModelInfo < Hanzoai::Internal::Type::BaseModel # @!attribute tier # - # @return [Symbol, Hanzoai::ModelInfo::Tier, nil] + # @return [Symbol, Hanzoai::Models::ModelInfo::Tier, nil] optional :tier, enum: -> { Hanzoai::ModelInfo::Tier }, nil?: true # @!attribute updated_at @@ -61,11 +61,11 @@ class ModelInfo < Hanzoai::Internal::Type::BaseModel # @param db_model [Boolean] # @param team_id [String, nil] # @param team_public_model_name [String, nil] - # @param tier [Symbol, Hanzoai::ModelInfo::Tier, nil] + # @param tier [Symbol, Hanzoai::Models::ModelInfo::Tier, nil] # @param updated_at [Time, nil] # @param updated_by [String, nil] - # @see Hanzoai::ModelInfo#tier + # @see Hanzoai::Models::ModelInfo#tier module Tier extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/org_member.rb b/lib/hanzoai/models/org_member.rb index 033c4ad6..9ea094a1 100644 --- a/lib/hanzoai/models/org_member.rb +++ b/lib/hanzoai/models/org_member.rb @@ -5,7 +5,7 @@ module Models class OrgMember < Hanzoai::Internal::Type::BaseModel # @!attribute role # - # @return [Symbol, Hanzoai::OrgMember::Role] + # @return [Symbol, Hanzoai::Models::OrgMember::Role] required :role, enum: -> { Hanzoai::OrgMember::Role } # @!attribute user_email @@ -19,11 +19,11 @@ class OrgMember < Hanzoai::Internal::Type::BaseModel optional :user_id, String, nil?: true # @!method initialize(role:, user_email: nil, user_id: nil) - # @param role [Symbol, Hanzoai::OrgMember::Role] + # @param role [Symbol, Hanzoai::Models::OrgMember::Role] # @param user_email [String, nil] # @param user_id [String, nil] - # @see Hanzoai::OrgMember#role + # @see Hanzoai::Models::OrgMember#role module Role extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb index ef82c598..e7c97b88 100644 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ b/lib/hanzoai/models/organization/info_retrieve_response.rb @@ -329,7 +329,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] + # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata @@ -383,7 +383,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/organization_add_member_params.rb b/lib/hanzoai/models/organization_add_member_params.rb index 07aae01f..6bc5c276 100644 --- a/lib/hanzoai/models/organization_add_member_params.rb +++ b/lib/hanzoai/models/organization_add_member_params.rb @@ -9,7 +9,7 @@ class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel # @!attribute member # - # @return [Array, Hanzoai::OrgMember] + # @return [Array, Hanzoai::Models::OrgMember] required :member, union: -> { Hanzoai::OrganizationAddMemberParams::Member } # @!attribute organization_id @@ -23,7 +23,7 @@ class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel optional :max_budget_in_organization, Float, nil?: true # @!method initialize(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) - # @param member [Array, Hanzoai::OrgMember] + # @param member [Array, Hanzoai::Models::OrgMember] # @param organization_id [String] # @param max_budget_in_organization [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] @@ -31,12 +31,12 @@ class OrganizationAddMemberParams < Hanzoai::Internal::Type::BaseModel module Member extend Hanzoai::Internal::Type::Union - variant -> { Hanzoai::OrganizationAddMemberParams::Member::OrgMemberArray } + variant -> { Hanzoai::Models::OrganizationAddMemberParams::Member::OrgMemberArray } variant -> { Hanzoai::OrgMember } # @!method self.variants - # @return [Array(Array, Hanzoai::OrgMember)] + # @return [Array(Array, Hanzoai::Models::OrgMember)] # @type [Hanzoai::Internal::Type::Converter] OrgMemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::OrgMember }] diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index b089df63..1b1fd3fe 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -327,7 +327,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] + # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata @@ -381,7 +381,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index d70dba95..89e6025d 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -327,7 +327,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] + # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata @@ -381,7 +381,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/organization_update_member_params.rb b/lib/hanzoai/models/organization_update_member_params.rb index 573714fa..b6cefe3e 100644 --- a/lib/hanzoai/models/organization_update_member_params.rb +++ b/lib/hanzoai/models/organization_update_member_params.rb @@ -30,7 +30,7 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # # Customer Roles: CUSTOMER: External users -> these are customers # - # @return [Symbol, Hanzoai::OrganizationUpdateMemberParams::Role, nil] + # @return [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] optional :role, enum: -> { Hanzoai::OrganizationUpdateMemberParams::Role }, nil?: true # @!attribute user_email @@ -51,7 +51,7 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # # @param max_budget_in_organization [Float, nil] # - # @param role [Symbol, Hanzoai::OrganizationUpdateMemberParams::Role, nil] Admin Roles: + # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: # # @param user_email [String, nil] # diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb index caabc12b..4a941d30 100644 --- a/lib/hanzoai/models/organization_update_response.rb +++ b/lib/hanzoai/models/organization_update_response.rb @@ -326,7 +326,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] + # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata @@ -380,7 +380,7 @@ class Team < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index 929e39f0..dcf5ea77 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -20,7 +20,7 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # @!attribute callback_type # - # @return [Symbol, Hanzoai::Team::CallbackAddParams::CallbackType, nil] + # @return [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] optional :callback_type, enum: -> { Hanzoai::Team::CallbackAddParams::CallbackType }, nil?: true # @!attribute llm_changed_by @@ -38,7 +38,7 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # # @param callback_vars [Hash{Symbol=>String}] # - # @param callback_type [Symbol, Hanzoai::Team::CallbackAddParams::CallbackType, nil] + # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] # # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us # diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index 1fa19be2..44b31c01 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -9,7 +9,7 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel # @!attribute member # - # @return [Array, Hanzoai::Member] + # @return [Array, Hanzoai::Models::Member] required :member, union: -> { Hanzoai::TeamAddMemberParams::Member } # @!attribute team_id @@ -23,7 +23,7 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel optional :max_budget_in_team, Float, nil?: true # @!method initialize(member:, team_id:, max_budget_in_team: nil, request_options: {}) - # @param member [Array, Hanzoai::Member] + # @param member [Array, Hanzoai::Models::Member] # @param team_id [String] # @param max_budget_in_team [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] @@ -31,12 +31,12 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel module Member extend Hanzoai::Internal::Type::Union - variant -> { Hanzoai::TeamAddMemberParams::Member::MemberArray } + variant -> { Hanzoai::Models::TeamAddMemberParams::Member::MemberArray } variant -> { Hanzoai::Member } # @!method self.variants - # @return [Array(Array, Hanzoai::Member)] + # @return [Array(Array, Hanzoai::Models::Member)] # @type [Hanzoai::Internal::Type::Converter] MemberArray = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Member }] diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index 2787081d..1d093da5 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -68,7 +68,7 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] + # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata @@ -124,7 +124,7 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index d4dfd014..b29260e0 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -39,7 +39,7 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] + # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata @@ -110,7 +110,7 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # # @param members [Array] # - # @param members_with_roles [Array] + # @param members_with_roles [Array] # # @param metadata [Object, nil] # diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index 159dfa8b..f21a4926 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -56,7 +56,7 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute members_with_roles # - # @return [Array, nil] + # @return [Array, nil] optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } # @!attribute metadata @@ -110,7 +110,7 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] # @param members [Array] - # @param members_with_roles [Array] + # @param members_with_roles [Array] # @param metadata [Object, nil] # @param model_id [Integer, nil] # @param models [Array] diff --git a/lib/hanzoai/models/team_update_member_params.rb b/lib/hanzoai/models/team_update_member_params.rb index ad21d5ca..6a4d717d 100644 --- a/lib/hanzoai/models/team_update_member_params.rb +++ b/lib/hanzoai/models/team_update_member_params.rb @@ -19,7 +19,7 @@ class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @!attribute role # - # @return [Symbol, Hanzoai::TeamUpdateMemberParams::Role, nil] + # @return [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] optional :role, enum: -> { Hanzoai::TeamUpdateMemberParams::Role }, nil?: true # @!attribute user_email @@ -35,7 +35,7 @@ class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @!method initialize(team_id:, max_budget_in_team: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) # @param team_id [String] # @param max_budget_in_team [Float, nil] - # @param role [Symbol, Hanzoai::TeamUpdateMemberParams::Role, nil] + # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] # @param user_email [String, nil] # @param user_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/user_create_params.rb b/lib/hanzoai/models/user_create_params.rb index a268cf53..12c4f1ec 100644 --- a/lib/hanzoai/models/user_create_params.rb +++ b/lib/hanzoai/models/user_create_params.rb @@ -141,7 +141,7 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute user_role # - # @return [Symbol, Hanzoai::UserCreateParams::UserRole, nil] + # @return [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] optional :user_role, enum: -> { Hanzoai::UserCreateParams::UserRole }, nil?: true # @!method initialize(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) @@ -171,7 +171,7 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @param user_alias [String, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::UserCreateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module UserRole diff --git a/lib/hanzoai/models/user_update_params.rb b/lib/hanzoai/models/user_update_params.rb index 33579f52..cf82bd55 100644 --- a/lib/hanzoai/models/user_update_params.rb +++ b/lib/hanzoai/models/user_update_params.rb @@ -126,7 +126,7 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute user_role # - # @return [Symbol, Hanzoai::UserUpdateParams::UserRole, nil] + # @return [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] optional :user_role, enum: -> { Hanzoai::UserUpdateParams::UserRole }, nil?: true # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, password: nil, permissions: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) @@ -153,7 +153,7 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @param tpm_limit [Integer, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::UserUpdateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module UserRole diff --git a/lib/hanzoai/models/util_transform_request_params.rb b/lib/hanzoai/models/util_transform_request_params.rb index a6b79e0e..7cacaa0d 100644 --- a/lib/hanzoai/models/util_transform_request_params.rb +++ b/lib/hanzoai/models/util_transform_request_params.rb @@ -9,7 +9,7 @@ class UtilTransformRequestParams < Hanzoai::Internal::Type::BaseModel # @!attribute call_type # - # @return [Symbol, Hanzoai::UtilTransformRequestParams::CallType] + # @return [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] required :call_type, enum: -> { Hanzoai::UtilTransformRequestParams::CallType } # @!attribute request_body @@ -18,7 +18,7 @@ class UtilTransformRequestParams < Hanzoai::Internal::Type::BaseModel required :request_body, Hanzoai::Internal::Type::Unknown # @!method initialize(call_type:, request_body:, request_options: {}) - # @param call_type [Symbol, Hanzoai::UtilTransformRequestParams::CallType] + # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] # @param request_body [Object] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/resources/budget.rb b/lib/hanzoai/resources/budget.rb index 0c4614df..098ce863 100644 --- a/lib/hanzoai/resources/budget.rb +++ b/lib/hanzoai/resources/budget.rb @@ -33,7 +33,7 @@ class Budget # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # @@ -87,7 +87,7 @@ def create(params = {}) # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::BudgetNew::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # diff --git a/lib/hanzoai/resources/config/pass_through_endpoint.rb b/lib/hanzoai/resources/config/pass_through_endpoint.rb index fbbbf693..67bb6949 100644 --- a/lib/hanzoai/resources/config/pass_through_endpoint.rb +++ b/lib/hanzoai/resources/config/pass_through_endpoint.rb @@ -61,7 +61,7 @@ def update(endpoint_id, params = {}) # @param endpoint_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Config::PassThroughEndpointResponse] + # @return [Hanzoai::Models::Config::PassThroughEndpointResponse] # # @see Hanzoai::Models::Config::PassThroughEndpointListParams def list(params = {}) @@ -84,7 +84,7 @@ def list(params = {}) # @param endpoint_id [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Config::PassThroughEndpointResponse] + # @return [Hanzoai::Models::Config::PassThroughEndpointResponse] # # @see Hanzoai::Models::Config::PassThroughEndpointDeleteParams def delete(params) diff --git a/lib/hanzoai/resources/customer.rb b/lib/hanzoai/resources/customer.rb index 543b83f8..716e9974 100644 --- a/lib/hanzoai/resources/customer.rb +++ b/lib/hanzoai/resources/customer.rb @@ -64,7 +64,7 @@ class Customer # # @param alias_ [String, nil] # - # @param allowed_model_region [Symbol, Hanzoai::CustomerCreateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerCreateParams::AllowedModelRegion, nil] # # @param blocked [Boolean] # @@ -78,7 +78,7 @@ class Customer # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. # - # @param model_max_budget [Hash{Symbol=>Hanzoai::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d + # @param model_max_budget [Hash{Symbol=>Hanzoai::Models::CustomerCreateParams::ModelMaxBudget}, nil] Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_d # # @param rpm_limit [Integer, nil] Max requests per minute, allowed for this budget id. # @@ -131,7 +131,7 @@ def create(params) # # @param user_id [String] # @param alias_ [String, nil] - # @param allowed_model_region [Symbol, Hanzoai::CustomerUpdateParams::AllowedModelRegion, nil] + # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerUpdateParams::AllowedModelRegion, nil] # @param blocked [Boolean] # @param budget_id [String, nil] # @param default_model [String, nil] diff --git a/lib/hanzoai/resources/fine_tuning/jobs.rb b/lib/hanzoai/resources/fine_tuning/jobs.rb index a16c8d3b..27d2ad1d 100644 --- a/lib/hanzoai/resources/fine_tuning/jobs.rb +++ b/lib/hanzoai/resources/fine_tuning/jobs.rb @@ -28,10 +28,10 @@ class Jobs # # @overload create(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) # - # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] # @param model [String] # @param training_file [String] - # @param hyperparameters [Hanzoai::FineTuning::JobCreateParams::Hyperparameters, nil] + # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] # @param integrations [Array, nil] # @param seed [Integer, nil] # @param suffix [String, nil] @@ -63,7 +63,7 @@ def create(params) # @overload retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}) # # @param fine_tuning_job_id [String] - # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -91,7 +91,7 @@ def retrieve(fine_tuning_job_id, params) # # @overload list(custom_llm_provider:, after: nil, limit: nil, request_options: {}) # - # @param custom_llm_provider [Symbol, Hanzoai::FineTuning::JobListParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] # @param after [String, nil] # @param limit [Integer, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/lib/hanzoai/resources/global/spend.rb b/lib/hanzoai/resources/global/spend.rb index db23d42d..9517c689 100644 --- a/lib/hanzoai/resources/global/spend.rb +++ b/lib/hanzoai/resources/global/spend.rb @@ -85,7 +85,7 @@ def reset(params = {}) # # @param end_date [String, nil] Time till which to view spend # - # @param group_by [Symbol, Hanzoai::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key + # @param group_by [Symbol, Hanzoai::Models::Global::SpendRetrieveReportParams::GroupBy, nil] Group spend by internal team or customer or api_key # # @param internal_user_id [String, nil] View spend for a specific internal_user_id. Example internal_user_id='1234 # diff --git a/lib/hanzoai/resources/health.rb b/lib/hanzoai/resources/health.rb index 0f402e4f..9f7ec614 100644 --- a/lib/hanzoai/resources/health.rb +++ b/lib/hanzoai/resources/health.rb @@ -103,7 +103,7 @@ def check_readiness(params = {}) # # @overload check_services(service:, request_options: {}) # - # @param service [Symbol, String, Hanzoai::HealthCheckServicesParams::Service] Specify the service being hit. + # @param service [Symbol, String, Hanzoai::Models::HealthCheckServicesParams::Service] Specify the service being hit. # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # diff --git a/lib/hanzoai/resources/key.rb b/lib/hanzoai/resources/key.rb index 53d3b383..0bb3ff51 100644 --- a/lib/hanzoai/resources/key.rb +++ b/lib/hanzoai/resources/key.rb @@ -484,7 +484,7 @@ def check_health(params = {}) # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::GenerateKeyResponse] + # @return [Hanzoai::Models::GenerateKeyResponse] # # @see Hanzoai::Models::KeyGenerateParams def generate(params = {}) @@ -618,7 +618,7 @@ def generate(params = {}) # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::GenerateKeyResponse, nil] + # @return [Hanzoai::Models::GenerateKeyResponse, nil] # # @see Hanzoai::Models::KeyRegenerateByKeyParams def regenerate_by_key(path_key, params = {}) diff --git a/lib/hanzoai/resources/model.rb b/lib/hanzoai/resources/model.rb index 1f0071d6..42bd61d0 100644 --- a/lib/hanzoai/resources/model.rb +++ b/lib/hanzoai/resources/model.rb @@ -13,9 +13,9 @@ class Model # # @overload create(llm_params:, model_info:, model_name:, request_options: {}) # - # @param llm_params [Hanzoai::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions # - # @param model_info [Hanzoai::ModelInfo] + # @param model_info [Hanzoai::Models::ModelInfo] # # @param model_name [String] # diff --git a/lib/hanzoai/resources/model/update.rb b/lib/hanzoai/resources/model/update.rb index 0a6b30b4..0fb34798 100644 --- a/lib/hanzoai/resources/model/update.rb +++ b/lib/hanzoai/resources/model/update.rb @@ -8,8 +8,8 @@ class Update # # @overload full(llm_params: nil, model_info: nil, model_name: nil, request_options: {}) # - # @param llm_params [Hanzoai::Model::UpdateDeployment::LlmParams, nil] - # @param model_info [Hanzoai::ModelInfo, nil] + # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] + # @param model_info [Hanzoai::Models::ModelInfo, nil] # @param model_name [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -43,8 +43,8 @@ def full(params = {}) # @overload partial(model_id, llm_params: nil, model_info: nil, model_name: nil, request_options: {}) # # @param model_id [String] - # @param llm_params [Hanzoai::Model::UpdateDeployment::LlmParams, nil] - # @param model_info [Hanzoai::ModelInfo, nil] + # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] + # @param model_info [Hanzoai::Models::ModelInfo, nil] # @param model_name [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # diff --git a/lib/hanzoai/resources/organization.rb b/lib/hanzoai/resources/organization.rb index 1b277a13..469f0a01 100644 --- a/lib/hanzoai/resources/organization.rb +++ b/lib/hanzoai/resources/organization.rb @@ -213,7 +213,7 @@ def delete(params) # # @overload add_member(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) # - # @param member [Array, Hanzoai::OrgMember] + # @param member [Array, Hanzoai::Models::OrgMember] # @param organization_id [String] # @param max_budget_in_organization [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -266,7 +266,7 @@ def delete_member(params) # # @param max_budget_in_organization [Float, nil] # - # @param role [Symbol, Hanzoai::OrganizationUpdateMemberParams::Role, nil] Admin Roles: + # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: # # @param user_email [String, nil] # diff --git a/lib/hanzoai/resources/team.rb b/lib/hanzoai/resources/team.rb index de6c35eb..cad453e5 100644 --- a/lib/hanzoai/resources/team.rb +++ b/lib/hanzoai/resources/team.rb @@ -93,7 +93,7 @@ class Team # # @param members [Array] Body param: # - # @param members_with_roles [Array] Body param: + # @param members_with_roles [Array] Body param: # # @param metadata [Object, nil] Body param: # @@ -326,7 +326,7 @@ def delete(params) # # @overload add_member(member:, team_id:, max_budget_in_team: nil, request_options: {}) # - # @param member [Array, Hanzoai::Member] + # @param member [Array, Hanzoai::Models::Member] # @param team_id [String] # @param max_budget_in_team [Float, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -540,7 +540,7 @@ def unblock(params) # # @param team_id [String] # @param max_budget_in_team [Float, nil] - # @param role [Symbol, Hanzoai::TeamUpdateMemberParams::Role, nil] + # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] # @param user_email [String, nil] # @param user_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/lib/hanzoai/resources/team/callback.rb b/lib/hanzoai/resources/team/callback.rb index 1a9bbf19..5209626e 100644 --- a/lib/hanzoai/resources/team/callback.rb +++ b/lib/hanzoai/resources/team/callback.rb @@ -93,7 +93,7 @@ def retrieve(team_id, params = {}) # # @param callback_vars [Hash{Symbol=>String}] Body param: # - # @param callback_type [Symbol, Hanzoai::Team::CallbackAddParams::CallbackType, nil] Body param: + # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] Body param: # # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by # diff --git a/lib/hanzoai/resources/user.rb b/lib/hanzoai/resources/user.rb index f95b83f8..43aa96a5 100644 --- a/lib/hanzoai/resources/user.rb +++ b/lib/hanzoai/resources/user.rb @@ -114,7 +114,7 @@ class User # @param user_alias [String, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::UserCreateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::UserCreateResponse] @@ -213,7 +213,7 @@ def create(params = {}) # @param tpm_limit [Integer, nil] # @param user_email [String, nil] # @param user_id [String, nil] - # @param user_role [Symbol, Hanzoai::UserUpdateParams::UserRole, nil] + # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/utils.rb b/lib/hanzoai/resources/utils.rb index d3db4ed4..2b49befa 100644 --- a/lib/hanzoai/resources/utils.rb +++ b/lib/hanzoai/resources/utils.rb @@ -59,7 +59,7 @@ def token_counter(params) # # @overload transform_request(call_type:, request_body:, request_options: {}) # - # @param call_type [Symbol, Hanzoai::UtilTransformRequestParams::CallType] + # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] # @param request_body [Object] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # diff --git a/sig/hanzoai/models/active_list_callbacks_params.rbs b/sig/hanzoai/models/active_list_callbacks_params.rbs index c156577f..d9973749 100644 --- a/sig/hanzoai/models/active_list_callbacks_params.rbs +++ b/sig/hanzoai/models/active_list_callbacks_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/add_add_allowed_ip_params.rbs b/sig/hanzoai/models/add_add_allowed_ip_params.rbs index 0deac50f..86d55732 100644 --- a/sig/hanzoai/models/add_add_allowed_ip_params.rbs +++ b/sig/hanzoai/models/add_add_allowed_ip_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/anthropic_create_params.rbs b/sig/hanzoai/models/anthropic_create_params.rbs index 507aebef..ace6a71c 100644 --- a/sig/hanzoai/models/anthropic_create_params.rbs +++ b/sig/hanzoai/models/anthropic_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/anthropic_delete_params.rbs b/sig/hanzoai/models/anthropic_delete_params.rbs index 5c17b994..4ac0a14a 100644 --- a/sig/hanzoai/models/anthropic_delete_params.rbs +++ b/sig/hanzoai/models/anthropic_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/anthropic_modify_params.rbs b/sig/hanzoai/models/anthropic_modify_params.rbs index f9566e0f..65d27a0c 100644 --- a/sig/hanzoai/models/anthropic_modify_params.rbs +++ b/sig/hanzoai/models/anthropic_modify_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/anthropic_retrieve_params.rbs b/sig/hanzoai/models/anthropic_retrieve_params.rbs index 3c113c90..5faa84b7 100644 --- a/sig/hanzoai/models/anthropic_retrieve_params.rbs +++ b/sig/hanzoai/models/anthropic_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/anthropic_update_params.rbs b/sig/hanzoai/models/anthropic_update_params.rbs index 0ae52853..a47a872e 100644 --- a/sig/hanzoai/models/anthropic_update_params.rbs +++ b/sig/hanzoai/models/anthropic_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assemblyai_create_params.rbs b/sig/hanzoai/models/assemblyai_create_params.rbs index d147342a..3519dc84 100644 --- a/sig/hanzoai/models/assemblyai_create_params.rbs +++ b/sig/hanzoai/models/assemblyai_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assemblyai_delete_params.rbs b/sig/hanzoai/models/assemblyai_delete_params.rbs index b11c5c80..081b8543 100644 --- a/sig/hanzoai/models/assemblyai_delete_params.rbs +++ b/sig/hanzoai/models/assemblyai_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assemblyai_patch_params.rbs b/sig/hanzoai/models/assemblyai_patch_params.rbs index b14d1ad6..3055b4d3 100644 --- a/sig/hanzoai/models/assemblyai_patch_params.rbs +++ b/sig/hanzoai/models/assemblyai_patch_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assemblyai_retrieve_params.rbs b/sig/hanzoai/models/assemblyai_retrieve_params.rbs index dfec8feb..60b39e6c 100644 --- a/sig/hanzoai/models/assemblyai_retrieve_params.rbs +++ b/sig/hanzoai/models/assemblyai_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assemblyai_update_params.rbs b/sig/hanzoai/models/assemblyai_update_params.rbs index d93af73e..770f7902 100644 --- a/sig/hanzoai/models/assemblyai_update_params.rbs +++ b/sig/hanzoai/models/assemblyai_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assistant_create_params.rbs b/sig/hanzoai/models/assistant_create_params.rbs index ad1683eb..36cf5898 100644 --- a/sig/hanzoai/models/assistant_create_params.rbs +++ b/sig/hanzoai/models/assistant_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assistant_delete_params.rbs b/sig/hanzoai/models/assistant_delete_params.rbs index 6008cb25..11885750 100644 --- a/sig/hanzoai/models/assistant_delete_params.rbs +++ b/sig/hanzoai/models/assistant_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/assistant_list_params.rbs b/sig/hanzoai/models/assistant_list_params.rbs index 87e22b9d..a5d9243e 100644 --- a/sig/hanzoai/models/assistant_list_params.rbs +++ b/sig/hanzoai/models/assistant_list_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/audio/speech_create_params.rbs b/sig/hanzoai/models/audio/speech_create_params.rbs index 347ea22a..118afd44 100644 --- a/sig/hanzoai/models/audio/speech_create_params.rbs +++ b/sig/hanzoai/models/audio/speech_create_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/audio/transcription_create_params.rbs b/sig/hanzoai/models/audio/transcription_create_params.rbs index 17b860cb..4b2d3626 100644 --- a/sig/hanzoai/models/audio/transcription_create_params.rbs +++ b/sig/hanzoai/models/audio/transcription_create_params.rbs @@ -15,6 +15,11 @@ module Hanzoai file: Hanzoai::Internal::file_input, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + file: Hanzoai::Internal::file_input, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/azure_call_params.rbs b/sig/hanzoai/models/azure_call_params.rbs index 7cee35fc..7bcbc46e 100644 --- a/sig/hanzoai/models/azure_call_params.rbs +++ b/sig/hanzoai/models/azure_call_params.rbs @@ -7,6 +7,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/azure_create_params.rbs b/sig/hanzoai/models/azure_create_params.rbs index 5864a200..485b98b3 100644 --- a/sig/hanzoai/models/azure_create_params.rbs +++ b/sig/hanzoai/models/azure_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/azure_delete_params.rbs b/sig/hanzoai/models/azure_delete_params.rbs index addcfa8a..e5b34554 100644 --- a/sig/hanzoai/models/azure_delete_params.rbs +++ b/sig/hanzoai/models/azure_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/azure_patch_params.rbs b/sig/hanzoai/models/azure_patch_params.rbs index 409a1f14..45301158 100644 --- a/sig/hanzoai/models/azure_patch_params.rbs +++ b/sig/hanzoai/models/azure_patch_params.rbs @@ -7,6 +7,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/azure_update_params.rbs b/sig/hanzoai/models/azure_update_params.rbs index 3951c88b..5d03ef3f 100644 --- a/sig/hanzoai/models/azure_update_params.rbs +++ b/sig/hanzoai/models/azure_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/batch_cancel_with_provider_params.rbs b/sig/hanzoai/models/batch_cancel_with_provider_params.rbs index 1177428e..241a20ec 100644 --- a/sig/hanzoai/models/batch_cancel_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_cancel_with_provider_params.rbs @@ -13,6 +13,11 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/batch_create_params.rbs b/sig/hanzoai/models/batch_create_params.rbs index 2fff9984..e8178b1c 100644 --- a/sig/hanzoai/models/batch_create_params.rbs +++ b/sig/hanzoai/models/batch_create_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/batch_create_with_provider_params.rbs b/sig/hanzoai/models/batch_create_with_provider_params.rbs index 4c729726..584a3547 100644 --- a/sig/hanzoai/models/batch_create_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_create_with_provider_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/batch_list_params.rbs b/sig/hanzoai/models/batch_list_params.rbs index ddff0f69..d49b6a4f 100644 --- a/sig/hanzoai/models/batch_list_params.rbs +++ b/sig/hanzoai/models/batch_list_params.rbs @@ -20,6 +20,13 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + after: String?, + limit: Integer?, + provider: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/batch_list_with_provider_params.rbs b/sig/hanzoai/models/batch_list_with_provider_params.rbs index 90a53567..7a249a5a 100644 --- a/sig/hanzoai/models/batch_list_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_list_with_provider_params.rbs @@ -17,6 +17,12 @@ module Hanzoai ?limit: Integer?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + after: String?, + limit: Integer?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/batch_retrieve_params.rbs b/sig/hanzoai/models/batch_retrieve_params.rbs index 85cc09f2..9c594c23 100644 --- a/sig/hanzoai/models/batch_retrieve_params.rbs +++ b/sig/hanzoai/models/batch_retrieve_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs b/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs index b3786ae8..62b66a13 100644 --- a/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_retrieve_with_provider_params.rbs @@ -13,6 +13,11 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/batches/cancel_cancel_params.rbs b/sig/hanzoai/models/batches/cancel_cancel_params.rbs index a7fa046c..bd7f9700 100644 --- a/sig/hanzoai/models/batches/cancel_cancel_params.rbs +++ b/sig/hanzoai/models/batches/cancel_cancel_params.rbs @@ -14,6 +14,11 @@ module Hanzoai ?provider: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/bedrock_create_params.rbs b/sig/hanzoai/models/bedrock_create_params.rbs index c3bfcd97..710f0bd4 100644 --- a/sig/hanzoai/models/bedrock_create_params.rbs +++ b/sig/hanzoai/models/bedrock_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/bedrock_delete_params.rbs b/sig/hanzoai/models/bedrock_delete_params.rbs index 5566cbe0..4b92b05a 100644 --- a/sig/hanzoai/models/bedrock_delete_params.rbs +++ b/sig/hanzoai/models/bedrock_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/bedrock_patch_params.rbs b/sig/hanzoai/models/bedrock_patch_params.rbs index b2c303fd..8480b52a 100644 --- a/sig/hanzoai/models/bedrock_patch_params.rbs +++ b/sig/hanzoai/models/bedrock_patch_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/bedrock_retrieve_params.rbs b/sig/hanzoai/models/bedrock_retrieve_params.rbs index d80040be..37f70bdb 100644 --- a/sig/hanzoai/models/bedrock_retrieve_params.rbs +++ b/sig/hanzoai/models/bedrock_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/bedrock_update_params.rbs b/sig/hanzoai/models/bedrock_update_params.rbs index 5afb1b51..40700550 100644 --- a/sig/hanzoai/models/bedrock_update_params.rbs +++ b/sig/hanzoai/models/bedrock_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/block_key_request.rbs b/sig/hanzoai/models/block_key_request.rbs index 514d6100..48788020 100644 --- a/sig/hanzoai/models/block_key_request.rbs +++ b/sig/hanzoai/models/block_key_request.rbs @@ -6,6 +6,8 @@ module Hanzoai attr_accessor key: String def initialize: (key: String) -> void + + def to_hash: -> { key: String } end end end diff --git a/sig/hanzoai/models/block_team_request.rbs b/sig/hanzoai/models/block_team_request.rbs index 6ab3dbbc..cfed90e5 100644 --- a/sig/hanzoai/models/block_team_request.rbs +++ b/sig/hanzoai/models/block_team_request.rbs @@ -6,6 +6,8 @@ module Hanzoai attr_accessor team_id: String def initialize: (team_id: String) -> void + + def to_hash: -> { team_id: String } end end end diff --git a/sig/hanzoai/models/block_users.rbs b/sig/hanzoai/models/block_users.rbs index c55c14da..83434673 100644 --- a/sig/hanzoai/models/block_users.rbs +++ b/sig/hanzoai/models/block_users.rbs @@ -6,6 +6,8 @@ module Hanzoai attr_accessor user_ids: ::Array[String] def initialize: (user_ids: ::Array[String]) -> void + + def to_hash: -> { user_ids: ::Array[String] } end end end diff --git a/sig/hanzoai/models/budget_create_params.rbs b/sig/hanzoai/models/budget_create_params.rbs index f11cd84e..10aec1e4 100644 --- a/sig/hanzoai/models/budget_create_params.rbs +++ b/sig/hanzoai/models/budget_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/budget_delete_params.rbs b/sig/hanzoai/models/budget_delete_params.rbs index 66124a46..59f65289 100644 --- a/sig/hanzoai/models/budget_delete_params.rbs +++ b/sig/hanzoai/models/budget_delete_params.rbs @@ -13,6 +13,8 @@ module Hanzoai id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { id: String, request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/budget_info_params.rbs b/sig/hanzoai/models/budget_info_params.rbs index 633bda2c..3f29837b 100644 --- a/sig/hanzoai/models/budget_info_params.rbs +++ b/sig/hanzoai/models/budget_info_params.rbs @@ -13,6 +13,11 @@ module Hanzoai budgets: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + budgets: ::Array[String], + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/budget_list_params.rbs b/sig/hanzoai/models/budget_list_params.rbs index b398b2e0..e290a647 100644 --- a/sig/hanzoai/models/budget_list_params.rbs +++ b/sig/hanzoai/models/budget_list_params.rbs @@ -7,6 +7,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/budget_new.rbs b/sig/hanzoai/models/budget_new.rbs index 42d124af..5dfde588 100644 --- a/sig/hanzoai/models/budget_new.rbs +++ b/sig/hanzoai/models/budget_new.rbs @@ -40,6 +40,17 @@ module Hanzoai ?tpm_limit: Integer? ) -> void + def to_hash: -> { + budget_duration: String?, + budget_id: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } + type model_max_budget = { budget_duration: String?, @@ -63,6 +74,13 @@ module Hanzoai ?rpm_limit: Integer?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + rpm_limit: Integer?, + tpm_limit: Integer? + } end end end diff --git a/sig/hanzoai/models/budget_settings_params.rbs b/sig/hanzoai/models/budget_settings_params.rbs index 005d7534..2a62490d 100644 --- a/sig/hanzoai/models/budget_settings_params.rbs +++ b/sig/hanzoai/models/budget_settings_params.rbs @@ -13,6 +13,11 @@ module Hanzoai budget_id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + budget_id: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/budget_update_params.rbs b/sig/hanzoai/models/budget_update_params.rbs index f39f1ddd..3efcbe79 100644 --- a/sig/hanzoai/models/budget_update_params.rbs +++ b/sig/hanzoai/models/budget_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs b/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs index 6e143901..81e40b29 100644 --- a/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs +++ b/sig/hanzoai/models/cache/redi_retrieve_info_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cache_delete_params.rbs b/sig/hanzoai/models/cache_delete_params.rbs index eb9f6f19..63f67492 100644 --- a/sig/hanzoai/models/cache_delete_params.rbs +++ b/sig/hanzoai/models/cache_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cache_flush_all_params.rbs b/sig/hanzoai/models/cache_flush_all_params.rbs index df5a1673..0be7c47a 100644 --- a/sig/hanzoai/models/cache_flush_all_params.rbs +++ b/sig/hanzoai/models/cache_flush_all_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cache_ping_params.rbs b/sig/hanzoai/models/cache_ping_params.rbs index f82cf73c..5cc55bc2 100644 --- a/sig/hanzoai/models/cache_ping_params.rbs +++ b/sig/hanzoai/models/cache_ping_params.rbs @@ -7,6 +7,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cache_ping_response.rbs b/sig/hanzoai/models/cache_ping_response.rbs index 4ccf7f12..698def89 100644 --- a/sig/hanzoai/models/cache_ping_response.rbs +++ b/sig/hanzoai/models/cache_ping_response.rbs @@ -31,6 +31,15 @@ module Hanzoai ?ping_response: bool?, ?set_cache_response: String? ) -> void + + def to_hash: -> { + cache_type: String, + status: String, + health_check_cache_params: top?, + llm_cache_params: String?, + ping_response: bool?, + set_cache_response: String? + } end end end diff --git a/sig/hanzoai/models/chat/completion_create_params.rbs b/sig/hanzoai/models/chat/completion_create_params.rbs index 948dd41e..9079bc1a 100644 --- a/sig/hanzoai/models/chat/completion_create_params.rbs +++ b/sig/hanzoai/models/chat/completion_create_params.rbs @@ -14,6 +14,11 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + model: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/client_get_home_params.rbs b/sig/hanzoai/models/client_get_home_params.rbs index 1a97f746..19bf28ba 100644 --- a/sig/hanzoai/models/client_get_home_params.rbs +++ b/sig/hanzoai/models/client_get_home_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cohere_create_params.rbs b/sig/hanzoai/models/cohere_create_params.rbs index ae8fc178..7e7ef6bd 100644 --- a/sig/hanzoai/models/cohere_create_params.rbs +++ b/sig/hanzoai/models/cohere_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cohere_delete_params.rbs b/sig/hanzoai/models/cohere_delete_params.rbs index 05ece41c..78c46da5 100644 --- a/sig/hanzoai/models/cohere_delete_params.rbs +++ b/sig/hanzoai/models/cohere_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cohere_modify_params.rbs b/sig/hanzoai/models/cohere_modify_params.rbs index a274b913..84d024f1 100644 --- a/sig/hanzoai/models/cohere_modify_params.rbs +++ b/sig/hanzoai/models/cohere_modify_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cohere_retrieve_params.rbs b/sig/hanzoai/models/cohere_retrieve_params.rbs index 5a174465..163dcf6a 100644 --- a/sig/hanzoai/models/cohere_retrieve_params.rbs +++ b/sig/hanzoai/models/cohere_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/cohere_update_params.rbs b/sig/hanzoai/models/cohere_update_params.rbs index 3bc493e9..0218a226 100644 --- a/sig/hanzoai/models/cohere_update_params.rbs +++ b/sig/hanzoai/models/cohere_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/completion_create_params.rbs b/sig/hanzoai/models/completion_create_params.rbs index dce06679..67039861 100644 --- a/sig/hanzoai/models/completion_create_params.rbs +++ b/sig/hanzoai/models/completion_create_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + model: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs index 4579537d..85b88aa1 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_create_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs index 82d3486a..2efe6fca 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_delete_params.rbs @@ -14,6 +14,11 @@ module Hanzoai endpoint_id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + endpoint_id: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs index b0a81f60..7419275c 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs @@ -14,6 +14,11 @@ module Hanzoai ?endpoint_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + endpoint_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_response.rbs b/sig/hanzoai/models/config/pass_through_endpoint_response.rbs index 48571b5f..e606f01e 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_response.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_response.rbs @@ -10,6 +10,10 @@ module Hanzoai def initialize: ( endpoints: ::Array[Hanzoai::Config::PassThroughGenericEndpoint] ) -> void + + def to_hash: -> { + endpoints: ::Array[Hanzoai::Config::PassThroughGenericEndpoint] + } end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs index f0dcb8d4..a2c5ffd2 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs b/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs index f8842427..e3aace70 100644 --- a/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs +++ b/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs @@ -12,6 +12,8 @@ module Hanzoai attr_accessor target: String def initialize: (headers: top, path: String, target: String) -> void + + def to_hash: -> { headers: top, path: String, target: String } end end end diff --git a/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs b/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs index 0bd091f4..8da3907e 100644 --- a/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs +++ b/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs @@ -6,6 +6,8 @@ module Hanzoai attr_accessor api_base: String def initialize: (api_base: String) -> void + + def to_hash: -> { api_base: String } end end end diff --git a/sig/hanzoai/models/credential_create_params.rbs b/sig/hanzoai/models/credential_create_params.rbs index eacd67ea..c527b392 100644 --- a/sig/hanzoai/models/credential_create_params.rbs +++ b/sig/hanzoai/models/credential_create_params.rbs @@ -28,6 +28,14 @@ module Hanzoai ?model_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + credential_info: top, + credential_name: String, + credential_values: top?, + model_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/credential_delete_params.rbs b/sig/hanzoai/models/credential_delete_params.rbs index e536cc23..520f463b 100644 --- a/sig/hanzoai/models/credential_delete_params.rbs +++ b/sig/hanzoai/models/credential_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/credential_item.rbs b/sig/hanzoai/models/credential_item.rbs index c83b483c..d6baa622 100644 --- a/sig/hanzoai/models/credential_item.rbs +++ b/sig/hanzoai/models/credential_item.rbs @@ -15,6 +15,12 @@ module Hanzoai credential_name: String, credential_values: top ) -> void + + def to_hash: -> { + credential_info: top, + credential_name: String, + credential_values: top + } end end end diff --git a/sig/hanzoai/models/credential_list_params.rbs b/sig/hanzoai/models/credential_list_params.rbs index ca5a52fb..3d892e87 100644 --- a/sig/hanzoai/models/credential_list_params.rbs +++ b/sig/hanzoai/models/credential_list_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/customer_block_params.rbs b/sig/hanzoai/models/customer_block_params.rbs index fed8874a..30af4d18 100644 --- a/sig/hanzoai/models/customer_block_params.rbs +++ b/sig/hanzoai/models/customer_block_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/customer_create_params.rbs b/sig/hanzoai/models/customer_create_params.rbs index e858d2a6..0df5a337 100644 --- a/sig/hanzoai/models/customer_create_params.rbs +++ b/sig/hanzoai/models/customer_create_params.rbs @@ -67,6 +67,23 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + user_id: String, + alias_: String?, + allowed_model_region: Hanzoai::Models::CustomerCreateParams::allowed_model_region?, + blocked: bool, + budget_duration: String?, + budget_id: String?, + default_model: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer?, + request_options: Hanzoai::RequestOptions + } + type allowed_model_region = :eu | :us module AllowedModelRegion @@ -101,6 +118,13 @@ module Hanzoai ?rpm_limit: Integer?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + rpm_limit: Integer?, + tpm_limit: Integer? + } end end end diff --git a/sig/hanzoai/models/customer_delete_params.rbs b/sig/hanzoai/models/customer_delete_params.rbs index 4c078c59..3a2a8ba9 100644 --- a/sig/hanzoai/models/customer_delete_params.rbs +++ b/sig/hanzoai/models/customer_delete_params.rbs @@ -14,6 +14,11 @@ module Hanzoai user_ids: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + user_ids: ::Array[String], + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/customer_list_params.rbs b/sig/hanzoai/models/customer_list_params.rbs index a998ff78..a23494c6 100644 --- a/sig/hanzoai/models/customer_list_params.rbs +++ b/sig/hanzoai/models/customer_list_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/customer_list_response.rbs b/sig/hanzoai/models/customer_list_response.rbs index 4211d00e..85d5815d 100644 --- a/sig/hanzoai/models/customer_list_response.rbs +++ b/sig/hanzoai/models/customer_list_response.rbs @@ -38,6 +38,16 @@ module Hanzoai ?spend: Float ) -> void + def to_hash: -> { + blocked: bool, + user_id: String, + alias_: String?, + allowed_model_region: Hanzoai::Models::CustomerListResponseItem::allowed_model_region?, + default_model: String?, + llm_budget_table: Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable?, + spend: Float + } + type allowed_model_region = :eu | :us module AllowedModelRegion @@ -84,6 +94,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end diff --git a/sig/hanzoai/models/customer_retrieve_info_params.rbs b/sig/hanzoai/models/customer_retrieve_info_params.rbs index e63f3f52..1a30c584 100644 --- a/sig/hanzoai/models/customer_retrieve_info_params.rbs +++ b/sig/hanzoai/models/customer_retrieve_info_params.rbs @@ -13,6 +13,11 @@ module Hanzoai end_user_id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + end_user_id: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/customer_retrieve_info_response.rbs b/sig/hanzoai/models/customer_retrieve_info_response.rbs index dc689065..bb39f0aa 100644 --- a/sig/hanzoai/models/customer_retrieve_info_response.rbs +++ b/sig/hanzoai/models/customer_retrieve_info_response.rbs @@ -38,6 +38,16 @@ module Hanzoai ?spend: Float ) -> void + def to_hash: -> { + blocked: bool, + user_id: String, + alias_: String?, + allowed_model_region: Hanzoai::Models::CustomerRetrieveInfoResponse::allowed_model_region?, + default_model: String?, + llm_budget_table: Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable?, + spend: Float + } + type allowed_model_region = :eu | :us module AllowedModelRegion @@ -84,6 +94,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end end diff --git a/sig/hanzoai/models/customer_unblock_params.rbs b/sig/hanzoai/models/customer_unblock_params.rbs index 40108a04..abb17bf0 100644 --- a/sig/hanzoai/models/customer_unblock_params.rbs +++ b/sig/hanzoai/models/customer_unblock_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/customer_update_params.rbs b/sig/hanzoai/models/customer_update_params.rbs index f570938a..8d67531e 100644 --- a/sig/hanzoai/models/customer_update_params.rbs +++ b/sig/hanzoai/models/customer_update_params.rbs @@ -43,6 +43,17 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + user_id: String, + alias_: String?, + allowed_model_region: Hanzoai::Models::CustomerUpdateParams::allowed_model_region?, + blocked: bool, + budget_id: String?, + default_model: String?, + max_budget: Float?, + request_options: Hanzoai::RequestOptions + } + type allowed_model_region = :eu | :us module AllowedModelRegion diff --git a/sig/hanzoai/models/delete_create_allowed_ip_params.rbs b/sig/hanzoai/models/delete_create_allowed_ip_params.rbs index 5efa7f90..3b5ebcb3 100644 --- a/sig/hanzoai/models/delete_create_allowed_ip_params.rbs +++ b/sig/hanzoai/models/delete_create_allowed_ip_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/embedding_create_params.rbs b/sig/hanzoai/models/embedding_create_params.rbs index e836e414..7c51b693 100644 --- a/sig/hanzoai/models/embedding_create_params.rbs +++ b/sig/hanzoai/models/embedding_create_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + model: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/engine_complete_params.rbs b/sig/hanzoai/models/engine_complete_params.rbs index 2dc3e0ff..3f8fea20 100644 --- a/sig/hanzoai/models/engine_complete_params.rbs +++ b/sig/hanzoai/models/engine_complete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/engine_embed_params.rbs b/sig/hanzoai/models/engine_embed_params.rbs index 8026ac5c..48e4233f 100644 --- a/sig/hanzoai/models/engine_embed_params.rbs +++ b/sig/hanzoai/models/engine_embed_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/engines/chat_complete_params.rbs b/sig/hanzoai/models/engines/chat_complete_params.rbs index 21fc656d..4ece7e50 100644 --- a/sig/hanzoai/models/engines/chat_complete_params.rbs +++ b/sig/hanzoai/models/engines/chat_complete_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/eu_assemblyai_create_params.rbs b/sig/hanzoai/models/eu_assemblyai_create_params.rbs index 6627e231..7ba3c68a 100644 --- a/sig/hanzoai/models/eu_assemblyai_create_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/eu_assemblyai_delete_params.rbs b/sig/hanzoai/models/eu_assemblyai_delete_params.rbs index 95bd2981..5ab1aac7 100644 --- a/sig/hanzoai/models/eu_assemblyai_delete_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/eu_assemblyai_patch_params.rbs b/sig/hanzoai/models/eu_assemblyai_patch_params.rbs index 77b85532..ca55956c 100644 --- a/sig/hanzoai/models/eu_assemblyai_patch_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_patch_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs b/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs index eff44a4c..eacec403 100644 --- a/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/eu_assemblyai_update_params.rbs b/sig/hanzoai/models/eu_assemblyai_update_params.rbs index 91c0f049..a7f0ef9e 100644 --- a/sig/hanzoai/models/eu_assemblyai_update_params.rbs +++ b/sig/hanzoai/models/eu_assemblyai_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/file_create_params.rbs b/sig/hanzoai/models/file_create_params.rbs index 2fe95e44..f51135bf 100644 --- a/sig/hanzoai/models/file_create_params.rbs +++ b/sig/hanzoai/models/file_create_params.rbs @@ -26,6 +26,13 @@ module Hanzoai ?custom_llm_provider: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + file: Hanzoai::Internal::file_input, + purpose: String, + custom_llm_provider: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/file_delete_params.rbs b/sig/hanzoai/models/file_delete_params.rbs index f7f76f69..53fa7b70 100644 --- a/sig/hanzoai/models/file_delete_params.rbs +++ b/sig/hanzoai/models/file_delete_params.rbs @@ -13,6 +13,11 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/file_list_params.rbs b/sig/hanzoai/models/file_list_params.rbs index f87ea356..e0b2e1f3 100644 --- a/sig/hanzoai/models/file_list_params.rbs +++ b/sig/hanzoai/models/file_list_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?purpose: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + purpose: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/file_retrieve_params.rbs b/sig/hanzoai/models/file_retrieve_params.rbs index 6e56d62f..baf27cf1 100644 --- a/sig/hanzoai/models/file_retrieve_params.rbs +++ b/sig/hanzoai/models/file_retrieve_params.rbs @@ -13,6 +13,11 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/files/content_retrieve_params.rbs b/sig/hanzoai/models/files/content_retrieve_params.rbs index 6f5e10a4..65678156 100644 --- a/sig/hanzoai/models/files/content_retrieve_params.rbs +++ b/sig/hanzoai/models/files/content_retrieve_params.rbs @@ -14,6 +14,11 @@ module Hanzoai provider: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + provider: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/fine_tuning/job_create_params.rbs b/sig/hanzoai/models/fine_tuning/job_create_params.rbs index 65e94a67..bf2bf3d5 100644 --- a/sig/hanzoai/models/fine_tuning/job_create_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_create_params.rbs @@ -46,6 +46,18 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, + model: String, + training_file: String, + hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, + integrations: ::Array[String]?, + seed: Integer?, + suffix: String?, + validation_file: String?, + request_options: Hanzoai::RequestOptions + } + type custom_llm_provider = :openai | :azure | :vertex_ai module CustomLlmProvider @@ -60,30 +72,36 @@ module Hanzoai type hyperparameters = { - batch_size: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size?, - learning_rate_multiplier: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, - n_epochs: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, + learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, + n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? } class Hyperparameters < Hanzoai::Internal::Type::BaseModel - attr_accessor batch_size: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size? + attr_accessor batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size? - attr_accessor learning_rate_multiplier: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier? + attr_accessor learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier? - attr_accessor n_epochs: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + attr_accessor n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? def initialize: ( - ?batch_size: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size?, - ?learning_rate_multiplier: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, - ?n_epochs: Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + ?batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, + ?learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, + ?n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? ) -> void + def to_hash: -> { + batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, + learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, + n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + } + type batch_size = String | Integer module BatchSize extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::FineTuning::JobCreateParams::Hyperparameters::batch_size] + def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size] end type learning_rate_multiplier = String | Float @@ -91,7 +109,7 @@ module Hanzoai module LearningRateMultiplier extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier] + def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier] end type n_epochs = String | Integer @@ -99,7 +117,7 @@ module Hanzoai module NEpochs extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::FineTuning::JobCreateParams::Hyperparameters::n_epochs] + def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs] end end end diff --git a/sig/hanzoai/models/fine_tuning/job_list_params.rbs b/sig/hanzoai/models/fine_tuning/job_list_params.rbs index 3bf34d8b..08edac6e 100644 --- a/sig/hanzoai/models/fine_tuning/job_list_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_list_params.rbs @@ -26,6 +26,13 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider, + after: String?, + limit: Integer?, + request_options: Hanzoai::RequestOptions + } + type custom_llm_provider = :openai | :azure module CustomLlmProvider diff --git a/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs b/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs index 9b422c7d..1461e3d0 100644 --- a/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs @@ -18,6 +18,11 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider, + request_options: Hanzoai::RequestOptions + } + type custom_llm_provider = :openai | :azure module CustomLlmProvider diff --git a/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs b/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs index 91cd8023..e8f48f19 100644 --- a/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs +++ b/sig/hanzoai/models/fine_tuning/jobs/cancel_create_params.rbs @@ -10,6 +10,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/gemini_create_params.rbs b/sig/hanzoai/models/gemini_create_params.rbs index 35eb12cd..7fc85a29 100644 --- a/sig/hanzoai/models/gemini_create_params.rbs +++ b/sig/hanzoai/models/gemini_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/gemini_delete_params.rbs b/sig/hanzoai/models/gemini_delete_params.rbs index c5c01e06..d7c17be7 100644 --- a/sig/hanzoai/models/gemini_delete_params.rbs +++ b/sig/hanzoai/models/gemini_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/gemini_patch_params.rbs b/sig/hanzoai/models/gemini_patch_params.rbs index eea624de..1adfb4c1 100644 --- a/sig/hanzoai/models/gemini_patch_params.rbs +++ b/sig/hanzoai/models/gemini_patch_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/gemini_retrieve_params.rbs b/sig/hanzoai/models/gemini_retrieve_params.rbs index b602569c..e372d8f7 100644 --- a/sig/hanzoai/models/gemini_retrieve_params.rbs +++ b/sig/hanzoai/models/gemini_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/gemini_update_params.rbs b/sig/hanzoai/models/gemini_update_params.rbs index e689eab3..807eb1cb 100644 --- a/sig/hanzoai/models/gemini_update_params.rbs +++ b/sig/hanzoai/models/gemini_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/generate_key_response.rbs b/sig/hanzoai/models/generate_key_response.rbs index 50e90366..5a70b1ad 100644 --- a/sig/hanzoai/models/generate_key_response.rbs +++ b/sig/hanzoai/models/generate_key_response.rbs @@ -137,6 +137,41 @@ module Hanzoai ?updated_by: String?, ?user_id: String? ) -> void + + def to_hash: -> { + expires: Time?, + key: String, + token: String?, + aliases: top?, + allowed_cache_controls: ::Array[top]?, + blocked: bool?, + budget_duration: String?, + budget_id: String?, + config: top?, + created_by: String?, + duration: String?, + enforced_params: ::Array[String]?, + guardrails: ::Array[String]?, + key_alias: String?, + key_name: String?, + llm_budget_table: top, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + model_rpm_limit: top?, + model_tpm_limit: top?, + models: ::Array[top]?, + permissions: top?, + rpm_limit: Integer?, + spend: Float?, + tags: ::Array[String]?, + team_id: String?, + token_id: String?, + tpm_limit: Integer?, + updated_by: String?, + user_id: String? + } end end end diff --git a/sig/hanzoai/models/global/spend_list_tags_params.rbs b/sig/hanzoai/models/global/spend_list_tags_params.rbs index e6796529..82be39fc 100644 --- a/sig/hanzoai/models/global/spend_list_tags_params.rbs +++ b/sig/hanzoai/models/global/spend_list_tags_params.rbs @@ -21,6 +21,13 @@ module Hanzoai ?tags: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + end_date: String?, + start_date: String?, + tags: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/global/spend_list_tags_response.rbs b/sig/hanzoai/models/global/spend_list_tags_response.rbs index 10b1c2c8..92d9ffae 100644 --- a/sig/hanzoai/models/global/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/global/spend_list_tags_response.rbs @@ -89,6 +89,28 @@ module Hanzoai ?user: String? ) -> void + def to_hash: -> { + api_key: String, + call_type: String, + end_time: Hanzoai::Models::Global::SpendListTagsResponseItem::end_time?, + messages: Hanzoai::Models::Global::SpendListTagsResponseItem::messages?, + request_id: String, + response: Hanzoai::Models::Global::SpendListTagsResponseItem::response?, + start_time: Hanzoai::Models::Global::SpendListTagsResponseItem::start_time?, + api_base: String?, + cache_hit: String?, + cache_key: String?, + completion_tokens: Integer?, + metadata: top, + model: String?, + prompt_tokens: Integer?, + request_tags: top, + requester_ip_address: String?, + spend: Float?, + total_tokens: Integer?, + user: String? + } + type end_time = String | Time module EndTime diff --git a/sig/hanzoai/models/global/spend_reset_params.rbs b/sig/hanzoai/models/global/spend_reset_params.rbs index 3957761b..5fc9fe2e 100644 --- a/sig/hanzoai/models/global/spend_reset_params.rbs +++ b/sig/hanzoai/models/global/spend_reset_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/global/spend_retrieve_report_params.rbs b/sig/hanzoai/models/global/spend_retrieve_report_params.rbs index 3e0b11ed..2bc0fdbd 100644 --- a/sig/hanzoai/models/global/spend_retrieve_report_params.rbs +++ b/sig/hanzoai/models/global/spend_retrieve_report_params.rbs @@ -42,6 +42,17 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + api_key: String?, + customer_id: String?, + end_date: String?, + group_by: Hanzoai::Models::Global::SpendRetrieveReportParams::group_by?, + internal_user_id: String?, + start_date: String?, + team_id: String?, + request_options: Hanzoai::RequestOptions + } + type group_by = :team | :customer | :api_key module GroupBy diff --git a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs index 8674bffa..eecc3142 100644 --- a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs +++ b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs @@ -89,6 +89,28 @@ module Hanzoai ?user: String? ) -> void + def to_hash: -> { + api_key: String, + call_type: String, + end_time: Hanzoai::Models::Global::SpendRetrieveReportResponseItem::end_time?, + messages: Hanzoai::Models::Global::SpendRetrieveReportResponseItem::messages?, + request_id: String, + response: Hanzoai::Models::Global::SpendRetrieveReportResponseItem::response?, + start_time: Hanzoai::Models::Global::SpendRetrieveReportResponseItem::start_time?, + api_base: String?, + cache_hit: String?, + cache_key: String?, + completion_tokens: Integer?, + metadata: top, + model: String?, + prompt_tokens: Integer?, + request_tags: top, + requester_ip_address: String?, + spend: Float?, + total_tokens: Integer?, + user: String? + } + type end_time = String | Time module EndTime diff --git a/sig/hanzoai/models/guardrail_list_params.rbs b/sig/hanzoai/models/guardrail_list_params.rbs index 555d86b0..4abaadc8 100644 --- a/sig/hanzoai/models/guardrail_list_params.rbs +++ b/sig/hanzoai/models/guardrail_list_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/guardrail_list_response.rbs b/sig/hanzoai/models/guardrail_list_response.rbs index 4eaf4e8e..3c35fce2 100644 --- a/sig/hanzoai/models/guardrail_list_response.rbs +++ b/sig/hanzoai/models/guardrail_list_response.rbs @@ -10,6 +10,10 @@ module Hanzoai guardrails: ::Array[Hanzoai::Models::GuardrailListResponse::Guardrail] ) -> void + def to_hash: -> { + guardrails: ::Array[Hanzoai::Models::GuardrailListResponse::Guardrail] + } + type guardrail = { guardrail_info: top?, @@ -30,6 +34,12 @@ module Hanzoai llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams ) -> void + def to_hash: -> { + guardrail_info: top?, + guardrail_name: String, + llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams + } + type llm_params = { guardrail: String, @@ -52,6 +62,12 @@ module Hanzoai ?default_on: bool ) -> void + def to_hash: -> { + guardrail: String, + mode: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::mode, + default_on: bool + } + type mode = String | ::Array[String] module Mode diff --git a/sig/hanzoai/models/health_check_all_params.rbs b/sig/hanzoai/models/health_check_all_params.rbs index 8986c7d3..8125ac4e 100644 --- a/sig/hanzoai/models/health_check_all_params.rbs +++ b/sig/hanzoai/models/health_check_all_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + model: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/health_check_liveliness_params.rbs b/sig/hanzoai/models/health_check_liveliness_params.rbs index 0d6eb44e..67034bea 100644 --- a/sig/hanzoai/models/health_check_liveliness_params.rbs +++ b/sig/hanzoai/models/health_check_liveliness_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/health_check_liveness_params.rbs b/sig/hanzoai/models/health_check_liveness_params.rbs index 0511785b..912229d3 100644 --- a/sig/hanzoai/models/health_check_liveness_params.rbs +++ b/sig/hanzoai/models/health_check_liveness_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/health_check_readiness_params.rbs b/sig/hanzoai/models/health_check_readiness_params.rbs index 2c91e728..7df393b8 100644 --- a/sig/hanzoai/models/health_check_readiness_params.rbs +++ b/sig/hanzoai/models/health_check_readiness_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/health_check_services_params.rbs b/sig/hanzoai/models/health_check_services_params.rbs index aa3afbb6..8283d864 100644 --- a/sig/hanzoai/models/health_check_services_params.rbs +++ b/sig/hanzoai/models/health_check_services_params.rbs @@ -15,6 +15,11 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + service: Hanzoai::Models::HealthCheckServicesParams::service, + request_options: Hanzoai::RequestOptions + } + type service = :slack_budget_alerts | :langfuse diff --git a/sig/hanzoai/models/images/generation_create_params.rbs b/sig/hanzoai/models/images/generation_create_params.rbs index 83a9f092..147617cc 100644 --- a/sig/hanzoai/models/images/generation_create_params.rbs +++ b/sig/hanzoai/models/images/generation_create_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/ip_address.rbs b/sig/hanzoai/models/ip_address.rbs index ee73e743..da00eb8a 100644 --- a/sig/hanzoai/models/ip_address.rbs +++ b/sig/hanzoai/models/ip_address.rbs @@ -6,6 +6,8 @@ module Hanzoai attr_accessor ip: String def initialize: (ip: String) -> void + + def to_hash: -> { ip: String } end end end diff --git a/sig/hanzoai/models/key/regenerate_key_request.rbs b/sig/hanzoai/models/key/regenerate_key_request.rbs index 1061bee1..b5669374 100644 --- a/sig/hanzoai/models/key/regenerate_key_request.rbs +++ b/sig/hanzoai/models/key/regenerate_key_request.rbs @@ -120,6 +120,37 @@ module Hanzoai ?tpm_limit: Integer?, ?user_id: String? ) -> void + + def to_hash: -> { + aliases: top?, + allowed_cache_controls: ::Array[top]?, + blocked: bool?, + budget_duration: String?, + budget_id: String?, + config: top?, + duration: String?, + enforced_params: ::Array[String]?, + guardrails: ::Array[String]?, + key: String?, + key_alias: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + model_rpm_limit: top?, + model_tpm_limit: top?, + models: ::Array[top]?, + new_master_key: String?, + permissions: top?, + rpm_limit: Integer?, + send_invite_email: bool?, + soft_budget: Float?, + spend: Float?, + tags: ::Array[String]?, + team_id: String?, + tpm_limit: Integer?, + user_id: String? + } end end end diff --git a/sig/hanzoai/models/key_block_params.rbs b/sig/hanzoai/models/key_block_params.rbs index c60496b8..0646e610 100644 --- a/sig/hanzoai/models/key_block_params.rbs +++ b/sig/hanzoai/models/key_block_params.rbs @@ -15,6 +15,11 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/key_block_response.rbs b/sig/hanzoai/models/key_block_response.rbs index 9e68b738..47a8c479 100644 --- a/sig/hanzoai/models/key_block_response.rbs +++ b/sig/hanzoai/models/key_block_response.rbs @@ -142,6 +142,38 @@ module Hanzoai ?user_id: String? ) -> void + def to_hash: -> { + token: String?, + aliases: top, + allowed_cache_controls: ::Array[top]?, + blocked: bool?, + budget_duration: String?, + budget_reset_at: Time?, + config: top, + created_at: Time?, + created_by: String?, + expires: Hanzoai::Models::KeyBlockResponse::expires?, + key_alias: String?, + key_name: String?, + llm_budget_table: top?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top, + model_max_budget: top, + model_spend: top, + models: ::Array[top], + org_id: String?, + permissions: top, + rpm_limit: Integer?, + soft_budget_cooldown: bool, + spend: Float, + team_id: String?, + tpm_limit: Integer?, + updated_at: Time?, + updated_by: String?, + user_id: String? + } + type expires = String | Time module Expires diff --git a/sig/hanzoai/models/key_check_health_params.rbs b/sig/hanzoai/models/key_check_health_params.rbs index 6dfdbf95..69ef86a8 100644 --- a/sig/hanzoai/models/key_check_health_params.rbs +++ b/sig/hanzoai/models/key_check_health_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/key_check_health_response.rbs b/sig/hanzoai/models/key_check_health_response.rbs index 3998c2cc..208f5b11 100644 --- a/sig/hanzoai/models/key_check_health_response.rbs +++ b/sig/hanzoai/models/key_check_health_response.rbs @@ -20,6 +20,11 @@ module Hanzoai ?logging_callbacks: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks? ) -> void + def to_hash: -> { + key: Hanzoai::Models::KeyCheckHealthResponse::key, + logging_callbacks: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks? + } + type key = :healthy | :unhealthy module Key @@ -57,6 +62,12 @@ module Hanzoai ?status: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::status ) -> void + def to_hash: -> { + callbacks: ::Array[String], + details: String?, + status: Hanzoai::Models::KeyCheckHealthResponse::LoggingCallbacks::status + } + type status = :healthy | :unhealthy module Status diff --git a/sig/hanzoai/models/key_delete_params.rbs b/sig/hanzoai/models/key_delete_params.rbs index 7854f200..4dddf590 100644 --- a/sig/hanzoai/models/key_delete_params.rbs +++ b/sig/hanzoai/models/key_delete_params.rbs @@ -26,6 +26,13 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + key_aliases: ::Array[String]?, + keys: ::Array[String]?, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/key_generate_params.rbs b/sig/hanzoai/models/key_generate_params.rbs index 56fc9f96..41d9b635 100644 --- a/sig/hanzoai/models/key_generate_params.rbs +++ b/sig/hanzoai/models/key_generate_params.rbs @@ -126,6 +126,38 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + aliases: top?, + allowed_cache_controls: ::Array[top]?, + blocked: bool?, + budget_duration: String?, + budget_id: String?, + config: top?, + duration: String?, + enforced_params: ::Array[String]?, + guardrails: ::Array[String]?, + key: String?, + key_alias: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + model_rpm_limit: top?, + model_tpm_limit: top?, + models: ::Array[top]?, + permissions: top?, + rpm_limit: Integer?, + send_invite_email: bool?, + soft_budget: Float?, + spend: Float?, + tags: ::Array[String]?, + team_id: String?, + tpm_limit: Integer?, + user_id: String?, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/key_list_params.rbs b/sig/hanzoai/models/key_list_params.rbs index c3e4db01..e459540b 100644 --- a/sig/hanzoai/models/key_list_params.rbs +++ b/sig/hanzoai/models/key_list_params.rbs @@ -52,6 +52,18 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + include_team_keys: bool, + key_alias: String?, + organization_id: String?, + page: Integer, + return_full_object: bool, + size: Integer, + team_id: String?, + user_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/key_list_response.rbs b/sig/hanzoai/models/key_list_response.rbs index f3adbf17..9c12ed27 100644 --- a/sig/hanzoai/models/key_list_response.rbs +++ b/sig/hanzoai/models/key_list_response.rbs @@ -28,6 +28,13 @@ module Hanzoai ?total_pages: Integer? ) -> void + def to_hash: -> { + current_page: Integer?, + keys: ::Array[Hanzoai::Models::KeyListResponse::key], + total_count: Integer?, + total_pages: Integer? + } + type key = String | Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth module Key @@ -285,6 +292,64 @@ module Hanzoai ?user_tpm_limit: Integer? ) -> void + def to_hash: -> { + token: String?, + aliases: top, + allowed_cache_controls: ::Array[top]?, + allowed_model_region: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::allowed_model_region?, + api_key: String?, + blocked: bool?, + budget_duration: String?, + budget_reset_at: Time?, + config: top, + created_at: Time?, + created_by: String?, + end_user_id: String?, + end_user_max_budget: Float?, + end_user_rpm_limit: Integer?, + end_user_tpm_limit: Integer?, + expires: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::expires?, + key_alias: String?, + key_name: String?, + last_refreshed_at: Float?, + llm_budget_table: top?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top, + model_max_budget: top, + model_spend: top, + models: ::Array[top], + org_id: String?, + parent_otel_span: top, + permissions: top, + rpm_limit: Integer?, + rpm_limit_per_model: ::Hash[Symbol, Integer]?, + soft_budget: Float?, + soft_budget_cooldown: bool, + spend: Float, + team_alias: String?, + team_blocked: bool, + team_id: String?, + team_max_budget: Float?, + team_member: Hanzoai::Member?, + team_member_spend: Float?, + team_metadata: top?, + team_model_aliases: top?, + team_models: ::Array[top], + team_rpm_limit: Integer?, + team_spend: Float?, + team_tpm_limit: Integer?, + tpm_limit: Integer?, + tpm_limit_per_model: ::Hash[Symbol, Integer]?, + updated_at: Time?, + updated_by: String?, + user_email: String?, + user_id: String?, + user_role: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::user_role?, + user_rpm_limit: Integer?, + user_tpm_limit: Integer? + } + type allowed_model_region = :eu | :us module AllowedModelRegion diff --git a/sig/hanzoai/models/key_regenerate_by_key_params.rbs b/sig/hanzoai/models/key_regenerate_by_key_params.rbs index 29b90a4d..8e95ddeb 100644 --- a/sig/hanzoai/models/key_regenerate_by_key_params.rbs +++ b/sig/hanzoai/models/key_regenerate_by_key_params.rbs @@ -15,6 +15,11 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/key_retrieve_info_params.rbs b/sig/hanzoai/models/key_retrieve_info_params.rbs index 9190f6a0..411b0221 100644 --- a/sig/hanzoai/models/key_retrieve_info_params.rbs +++ b/sig/hanzoai/models/key_retrieve_info_params.rbs @@ -13,6 +13,8 @@ module Hanzoai ?key: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { key: String?, request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/key_unblock_params.rbs b/sig/hanzoai/models/key_unblock_params.rbs index 83f28c87..944d368b 100644 --- a/sig/hanzoai/models/key_unblock_params.rbs +++ b/sig/hanzoai/models/key_unblock_params.rbs @@ -15,6 +15,11 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/key_update_params.rbs b/sig/hanzoai/models/key_update_params.rbs index 0709232e..44b4e568 100644 --- a/sig/hanzoai/models/key_update_params.rbs +++ b/sig/hanzoai/models/key_update_params.rbs @@ -126,6 +126,38 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + key: String, + aliases: top?, + allowed_cache_controls: ::Array[top]?, + blocked: bool?, + budget_duration: String?, + budget_id: String?, + config: top?, + duration: String?, + enforced_params: ::Array[String]?, + guardrails: ::Array[String]?, + key_alias: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + model_rpm_limit: top?, + model_tpm_limit: top?, + models: ::Array[top]?, + permissions: top?, + rpm_limit: Integer?, + spend: Float?, + tags: ::Array[String]?, + team_id: String?, + temp_budget_expiry: Time?, + temp_budget_increase: Float?, + tpm_limit: Integer?, + user_id: String?, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/langfuse_create_params.rbs b/sig/hanzoai/models/langfuse_create_params.rbs index 08ea7933..21e02346 100644 --- a/sig/hanzoai/models/langfuse_create_params.rbs +++ b/sig/hanzoai/models/langfuse_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/langfuse_delete_params.rbs b/sig/hanzoai/models/langfuse_delete_params.rbs index cb626a3b..f9cf8210 100644 --- a/sig/hanzoai/models/langfuse_delete_params.rbs +++ b/sig/hanzoai/models/langfuse_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/langfuse_patch_params.rbs b/sig/hanzoai/models/langfuse_patch_params.rbs index f0d0096c..d7fc2e5e 100644 --- a/sig/hanzoai/models/langfuse_patch_params.rbs +++ b/sig/hanzoai/models/langfuse_patch_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/langfuse_retrieve_params.rbs b/sig/hanzoai/models/langfuse_retrieve_params.rbs index fb309098..6f32f30b 100644 --- a/sig/hanzoai/models/langfuse_retrieve_params.rbs +++ b/sig/hanzoai/models/langfuse_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/langfuse_update_params.rbs b/sig/hanzoai/models/langfuse_update_params.rbs index 6a8df7f7..148849ea 100644 --- a/sig/hanzoai/models/langfuse_update_params.rbs +++ b/sig/hanzoai/models/langfuse_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/member.rbs b/sig/hanzoai/models/member.rbs index 13a7c261..e66bd87a 100644 --- a/sig/hanzoai/models/member.rbs +++ b/sig/hanzoai/models/member.rbs @@ -1,21 +1,31 @@ module Hanzoai module Models type member = - { role: Hanzoai::Member::role, user_email: String?, user_id: String? } + { + role: Hanzoai::Models::Member::role, + user_email: String?, + user_id: String? + } class Member < Hanzoai::Internal::Type::BaseModel - attr_accessor role: Hanzoai::Member::role + attr_accessor role: Hanzoai::Models::Member::role attr_accessor user_email: String? attr_accessor user_id: String? def initialize: ( - role: Hanzoai::Member::role, + role: Hanzoai::Models::Member::role, ?user_email: String?, ?user_id: String? ) -> void + def to_hash: -> { + role: Hanzoai::Models::Member::role, + user_email: String?, + user_id: String? + } + type role = :admin | :user module Role @@ -24,7 +34,7 @@ module Hanzoai ADMIN: :admin USER: :user - def self?.values: -> ::Array[Hanzoai::Member::role] + def self?.values: -> ::Array[Hanzoai::Models::Member::role] end end end diff --git a/sig/hanzoai/models/model/info_list_params.rbs b/sig/hanzoai/models/model/info_list_params.rbs index c583a6c6..bcbb618c 100644 --- a/sig/hanzoai/models/model/info_list_params.rbs +++ b/sig/hanzoai/models/model/info_list_params.rbs @@ -14,6 +14,11 @@ module Hanzoai ?llm_model_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + llm_model_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/model/update_deployment.rbs b/sig/hanzoai/models/model/update_deployment.rbs index 3588db0c..29800616 100644 --- a/sig/hanzoai/models/model/update_deployment.rbs +++ b/sig/hanzoai/models/model/update_deployment.rbs @@ -21,6 +21,12 @@ module Hanzoai ?model_name: String? ) -> void + def to_hash: -> { + llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + model_info: Hanzoai::ModelInfo?, + model_name: String? + } + type llm_params = { api_base: String?, @@ -30,7 +36,7 @@ module Hanzoai aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, input_cost_per_second: Float?, input_cost_per_token: Float?, @@ -46,11 +52,11 @@ module Hanzoai output_cost_per_token: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout?, - timeout: Hanzoai::Model::UpdateDeployment::LlmParams::timeout?, + stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, + timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials?, + vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? @@ -71,7 +77,7 @@ module Hanzoai attr_accessor budget_duration: String? - attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]? + attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]? attr_accessor custom_llm_provider: String? @@ -103,15 +109,15 @@ module Hanzoai attr_accessor rpm: Integer? - attr_accessor stream_timeout: Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout? + attr_accessor stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout? - attr_accessor timeout: Hanzoai::Model::UpdateDeployment::LlmParams::timeout? + attr_accessor timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout? attr_accessor tpm: Integer? attr_accessor use_in_pass_through: bool? - attr_accessor vertex_credentials: Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials? + attr_accessor vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials? attr_accessor vertex_location: String? @@ -127,7 +133,7 @@ module Hanzoai ?aws_region_name: String?, ?aws_secret_access_key: String?, ?budget_duration: String?, - ?configurable_clientside_auth_params: ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, ?custom_llm_provider: String?, ?input_cost_per_second: Float?, ?input_cost_per_token: Float?, @@ -143,23 +149,57 @@ module Hanzoai ?output_cost_per_token: Float?, ?region_name: String?, ?rpm: Integer?, - ?stream_timeout: Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout?, - ?timeout: Hanzoai::Model::UpdateDeployment::LlmParams::timeout?, + ?stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, + ?timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, ?tpm: Integer?, ?use_in_pass_through: bool?, - ?vertex_credentials: Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials?, + ?vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, ?vertex_location: String?, ?vertex_project: String?, ?watsonx_region_name: String? ) -> void + def to_hash: -> { + api_base: String?, + api_key: String?, + api_version: String?, + aws_access_key_id: String?, + aws_region_name: String?, + aws_secret_access_key: String?, + budget_duration: String?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + custom_llm_provider: String?, + input_cost_per_second: Float?, + input_cost_per_token: Float?, + llm_trace_id: String?, + max_budget: Float?, + max_file_size_mb: Float?, + max_retries: Integer?, + merge_reasoning_content_in_choices: bool?, + model: String?, + model_info: top?, + organization: String?, + output_cost_per_second: Float?, + output_cost_per_token: Float?, + region_name: String?, + rpm: Integer?, + stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, + timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, + tpm: Integer?, + use_in_pass_through: bool?, + vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, + vertex_location: String?, + vertex_project: String?, + watsonx_region_name: String? + } + type configurable_clientside_auth_param = String | Hanzoai::ConfigurableClientsideParamsCustomAuth module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param] + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param] end type stream_timeout = Float | String @@ -167,7 +207,7 @@ module Hanzoai module StreamTimeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::stream_timeout] + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout] end type timeout = Float | String @@ -175,7 +215,7 @@ module Hanzoai module Timeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::timeout] + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout] end type vertex_credentials = top | String @@ -183,7 +223,7 @@ module Hanzoai module VertexCredentials extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Model::UpdateDeployment::LlmParams::vertex_credentials] + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials] end end end diff --git a/sig/hanzoai/models/model/update_full_params.rbs b/sig/hanzoai/models/model/update_full_params.rbs index 4ca0ed84..3ccfc8e2 100644 --- a/sig/hanzoai/models/model/update_full_params.rbs +++ b/sig/hanzoai/models/model/update_full_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/model/update_partial_params.rbs b/sig/hanzoai/models/model/update_partial_params.rbs index 15da587b..988c02d4 100644 --- a/sig/hanzoai/models/model/update_partial_params.rbs +++ b/sig/hanzoai/models/model/update_partial_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/model_create_params.rbs b/sig/hanzoai/models/model_create_params.rbs index c004c14d..b7b90010 100644 --- a/sig/hanzoai/models/model_create_params.rbs +++ b/sig/hanzoai/models/model_create_params.rbs @@ -25,6 +25,13 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + llm_params: Hanzoai::ModelCreateParams::LlmParams, + model_info: Hanzoai::ModelInfo, + model_name: String, + request_options: Hanzoai::RequestOptions + } + type llm_params = { model: String, @@ -35,7 +42,7 @@ module Hanzoai aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, input_cost_per_second: Float?, input_cost_per_token: Float?, @@ -50,11 +57,11 @@ module Hanzoai output_cost_per_token: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::ModelCreateParams::LlmParams::stream_timeout?, - timeout: Hanzoai::ModelCreateParams::LlmParams::timeout?, + stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, + timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::ModelCreateParams::LlmParams::vertex_credentials?, + vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? @@ -77,7 +84,7 @@ module Hanzoai attr_accessor budget_duration: String? - attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param]? + attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]? attr_accessor custom_llm_provider: String? @@ -107,15 +114,15 @@ module Hanzoai attr_accessor rpm: Integer? - attr_accessor stream_timeout: Hanzoai::ModelCreateParams::LlmParams::stream_timeout? + attr_accessor stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout? - attr_accessor timeout: Hanzoai::ModelCreateParams::LlmParams::timeout? + attr_accessor timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout? attr_accessor tpm: Integer? attr_accessor use_in_pass_through: bool? - attr_accessor vertex_credentials: Hanzoai::ModelCreateParams::LlmParams::vertex_credentials? + attr_accessor vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials? attr_accessor vertex_location: String? @@ -132,7 +139,7 @@ module Hanzoai ?aws_region_name: String?, ?aws_secret_access_key: String?, ?budget_duration: String?, - ?configurable_clientside_auth_params: ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, ?custom_llm_provider: String?, ?input_cost_per_second: Float?, ?input_cost_per_token: Float?, @@ -147,23 +154,57 @@ module Hanzoai ?output_cost_per_token: Float?, ?region_name: String?, ?rpm: Integer?, - ?stream_timeout: Hanzoai::ModelCreateParams::LlmParams::stream_timeout?, - ?timeout: Hanzoai::ModelCreateParams::LlmParams::timeout?, + ?stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, + ?timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, ?tpm: Integer?, ?use_in_pass_through: bool?, - ?vertex_credentials: Hanzoai::ModelCreateParams::LlmParams::vertex_credentials?, + ?vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, ?vertex_location: String?, ?vertex_project: String?, ?watsonx_region_name: String? ) -> void + def to_hash: -> { + model: String, + api_base: String?, + api_key: String?, + api_version: String?, + aws_access_key_id: String?, + aws_region_name: String?, + aws_secret_access_key: String?, + budget_duration: String?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + custom_llm_provider: String?, + input_cost_per_second: Float?, + input_cost_per_token: Float?, + llm_trace_id: String?, + max_budget: Float?, + max_file_size_mb: Float?, + max_retries: Integer?, + merge_reasoning_content_in_choices: bool?, + model_info: top?, + organization: String?, + output_cost_per_second: Float?, + output_cost_per_token: Float?, + region_name: String?, + rpm: Integer?, + stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, + timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, + tpm: Integer?, + use_in_pass_through: bool?, + vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, + vertex_location: String?, + vertex_project: String?, + watsonx_region_name: String? + } + type configurable_clientside_auth_param = String | Hanzoai::ConfigurableClientsideParamsCustomAuth module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::configurable_clientside_auth_param] + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param] end type stream_timeout = Float | String @@ -171,7 +212,7 @@ module Hanzoai module StreamTimeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::stream_timeout] + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout] end type timeout = Float | String @@ -179,7 +220,7 @@ module Hanzoai module Timeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::timeout] + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::timeout] end type vertex_credentials = top | String @@ -187,7 +228,7 @@ module Hanzoai module VertexCredentials extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::ModelCreateParams::LlmParams::vertex_credentials] + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials] end end end diff --git a/sig/hanzoai/models/model_delete_params.rbs b/sig/hanzoai/models/model_delete_params.rbs index b5a65a20..fbbff5a4 100644 --- a/sig/hanzoai/models/model_delete_params.rbs +++ b/sig/hanzoai/models/model_delete_params.rbs @@ -13,6 +13,8 @@ module Hanzoai id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { id: String, request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/model_group_retrieve_info_params.rbs b/sig/hanzoai/models/model_group_retrieve_info_params.rbs index ab654a69..2b24ed55 100644 --- a/sig/hanzoai/models/model_group_retrieve_info_params.rbs +++ b/sig/hanzoai/models/model_group_retrieve_info_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?model_group: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + model_group: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/model_info.rbs b/sig/hanzoai/models/model_info.rbs index 213b13bf..1018d463 100644 --- a/sig/hanzoai/models/model_info.rbs +++ b/sig/hanzoai/models/model_info.rbs @@ -9,7 +9,7 @@ module Hanzoai db_model: bool, team_id: String?, team_public_model_name: String?, - tier: Hanzoai::ModelInfo::tier?, + tier: Hanzoai::Models::ModelInfo::tier?, updated_at: Time?, updated_by: String? } @@ -31,7 +31,7 @@ module Hanzoai attr_accessor team_public_model_name: String? - attr_accessor tier: Hanzoai::ModelInfo::tier? + attr_accessor tier: Hanzoai::Models::ModelInfo::tier? attr_accessor updated_at: Time? @@ -45,11 +45,24 @@ module Hanzoai ?db_model: bool, ?team_id: String?, ?team_public_model_name: String?, - ?tier: Hanzoai::ModelInfo::tier?, + ?tier: Hanzoai::Models::ModelInfo::tier?, ?updated_at: Time?, ?updated_by: String? ) -> void + def to_hash: -> { + id: String?, + base_model: String?, + created_at: Time?, + created_by: String?, + db_model: bool, + team_id: String?, + team_public_model_name: String?, + tier: Hanzoai::Models::ModelInfo::tier?, + updated_at: Time?, + updated_by: String? + } + type tier = :free | :paid module Tier @@ -58,7 +71,7 @@ module Hanzoai FREE: :free PAID: :paid - def self?.values: -> ::Array[Hanzoai::ModelInfo::tier] + def self?.values: -> ::Array[Hanzoai::Models::ModelInfo::tier] end end end diff --git a/sig/hanzoai/models/model_list_params.rbs b/sig/hanzoai/models/model_list_params.rbs index fa44ef27..f55b6251 100644 --- a/sig/hanzoai/models/model_list_params.rbs +++ b/sig/hanzoai/models/model_list_params.rbs @@ -17,6 +17,12 @@ module Hanzoai ?team_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + return_wildcard_routes: bool?, + team_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/moderation_create_params.rbs b/sig/hanzoai/models/moderation_create_params.rbs index c0292da7..81224918 100644 --- a/sig/hanzoai/models/moderation_create_params.rbs +++ b/sig/hanzoai/models/moderation_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai/deployment_complete_params.rbs b/sig/hanzoai/models/openai/deployment_complete_params.rbs index c31a81e0..e82c3ccf 100644 --- a/sig/hanzoai/models/openai/deployment_complete_params.rbs +++ b/sig/hanzoai/models/openai/deployment_complete_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai/deployment_embed_params.rbs b/sig/hanzoai/models/openai/deployment_embed_params.rbs index 9cc4634d..4e73c3a1 100644 --- a/sig/hanzoai/models/openai/deployment_embed_params.rbs +++ b/sig/hanzoai/models/openai/deployment_embed_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs b/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs index d654a72a..92705fdd 100644 --- a/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs +++ b/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs @@ -10,6 +10,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai_create_params.rbs b/sig/hanzoai/models/openai_create_params.rbs index 11054774..fd38818c 100644 --- a/sig/hanzoai/models/openai_create_params.rbs +++ b/sig/hanzoai/models/openai_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai_delete_params.rbs b/sig/hanzoai/models/openai_delete_params.rbs index 3d8169b3..b802264b 100644 --- a/sig/hanzoai/models/openai_delete_params.rbs +++ b/sig/hanzoai/models/openai_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai_patch_params.rbs b/sig/hanzoai/models/openai_patch_params.rbs index 5a56f785..24dbfcd6 100644 --- a/sig/hanzoai/models/openai_patch_params.rbs +++ b/sig/hanzoai/models/openai_patch_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai_retrieve_params.rbs b/sig/hanzoai/models/openai_retrieve_params.rbs index ed47f1f3..e4a8a352 100644 --- a/sig/hanzoai/models/openai_retrieve_params.rbs +++ b/sig/hanzoai/models/openai_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/openai_update_params.rbs b/sig/hanzoai/models/openai_update_params.rbs index d075b520..1609db34 100644 --- a/sig/hanzoai/models/openai_update_params.rbs +++ b/sig/hanzoai/models/openai_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/org_member.rbs b/sig/hanzoai/models/org_member.rbs index 53db890a..6163eae1 100644 --- a/sig/hanzoai/models/org_member.rbs +++ b/sig/hanzoai/models/org_member.rbs @@ -1,21 +1,31 @@ module Hanzoai module Models type org_member = - { role: Hanzoai::OrgMember::role, user_email: String?, user_id: String? } + { + role: Hanzoai::Models::OrgMember::role, + user_email: String?, + user_id: String? + } class OrgMember < Hanzoai::Internal::Type::BaseModel - attr_accessor role: Hanzoai::OrgMember::role + attr_accessor role: Hanzoai::Models::OrgMember::role attr_accessor user_email: String? attr_accessor user_id: String? def initialize: ( - role: Hanzoai::OrgMember::role, + role: Hanzoai::Models::OrgMember::role, ?user_email: String?, ?user_id: String? ) -> void + def to_hash: -> { + role: Hanzoai::Models::OrgMember::role, + user_email: String?, + user_id: String? + } + type role = :org_admin | :internal_user | :internal_user_viewer module Role @@ -25,7 +35,7 @@ module Hanzoai INTERNAL_USER: :internal_user INTERNAL_USER_VIEWER: :internal_user_viewer - def self?.values: -> ::Array[Hanzoai::OrgMember::role] + def self?.values: -> ::Array[Hanzoai::Models::OrgMember::role] end end end diff --git a/sig/hanzoai/models/organization/info_deprecated_params.rbs b/sig/hanzoai/models/organization/info_deprecated_params.rbs index 4bb29a5e..fe309502 100644 --- a/sig/hanzoai/models/organization/info_deprecated_params.rbs +++ b/sig/hanzoai/models/organization/info_deprecated_params.rbs @@ -15,6 +15,11 @@ module Hanzoai organizations: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + organizations: ::Array[String], + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/organization/info_retrieve_params.rbs b/sig/hanzoai/models/organization/info_retrieve_params.rbs index a1109ac5..940e38a2 100644 --- a/sig/hanzoai/models/organization/info_retrieve_params.rbs +++ b/sig/hanzoai/models/organization/info_retrieve_params.rbs @@ -15,6 +15,11 @@ module Hanzoai organization_id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + organization_id: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/organization/info_retrieve_response.rbs b/sig/hanzoai/models/organization/info_retrieve_response.rbs index 9dd105ae..48b7d219 100644 --- a/sig/hanzoai/models/organization/info_retrieve_response.rbs +++ b/sig/hanzoai/models/organization/info_retrieve_response.rbs @@ -71,6 +71,22 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] ) -> void + def to_hash: -> { + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable?, + members: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member], + metadata: top?, + organization_alias: String?, + organization_id: String?, + spend: Float, + teams: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] + } + type llm_budget_table = { budget_duration: String?, @@ -106,6 +122,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end type member = @@ -156,6 +182,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -191,6 +229,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end @@ -290,6 +338,28 @@ module Hanzoai ?tpm_limit: Integer? ) -> void + def to_hash: -> { + team_id: String, + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + llm_model_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable?, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: top?, + model_id: Integer?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + tpm_limit: Integer? + } + type llm_model_table = { created_by: String, @@ -310,6 +380,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases? ) -> void + def to_hash: -> { + created_by: String, + updated_by: String, + model_aliases: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases? + } + type model_aliases = top | String module ModelAliases diff --git a/sig/hanzoai/models/organization_add_member_params.rbs b/sig/hanzoai/models/organization_add_member_params.rbs index 232ac0c4..a9c4b9f4 100644 --- a/sig/hanzoai/models/organization_add_member_params.rbs +++ b/sig/hanzoai/models/organization_add_member_params.rbs @@ -25,6 +25,13 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + member: Hanzoai::Models::OrganizationAddMemberParams::member, + organization_id: String, + max_budget_in_organization: Float?, + request_options: Hanzoai::RequestOptions + } + type member = ::Array[Hanzoai::OrgMember] | Hanzoai::OrgMember module Member diff --git a/sig/hanzoai/models/organization_add_member_response.rbs b/sig/hanzoai/models/organization_add_member_response.rbs index e882e6c1..8245d562 100644 --- a/sig/hanzoai/models/organization_add_member_response.rbs +++ b/sig/hanzoai/models/organization_add_member_response.rbs @@ -20,6 +20,12 @@ module Hanzoai updated_users: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] ) -> void + def to_hash: -> { + organization_id: String, + updated_organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership], + updated_users: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] + } + type updated_organization_membership = { created_at: Time, @@ -68,6 +74,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -103,6 +121,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end @@ -184,6 +212,25 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + user_id: String, + budget_duration: String?, + budget_reset_at: Time?, + max_budget: Float?, + metadata: top?, + model_max_budget: top?, + model_spend: top?, + models: ::Array[top], + organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership]?, + rpm_limit: Integer?, + spend: Float, + sso_user_id: String?, + teams: ::Array[String], + tpm_limit: Integer?, + user_email: String?, + user_role: String? + } + type organization_membership = { created_at: Time, @@ -232,6 +279,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -267,6 +326,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end end diff --git a/sig/hanzoai/models/organization_create_params.rbs b/sig/hanzoai/models/organization_create_params.rbs index 7af1f886..19a3b33c 100644 --- a/sig/hanzoai/models/organization_create_params.rbs +++ b/sig/hanzoai/models/organization_create_params.rbs @@ -62,6 +62,22 @@ module Hanzoai ?tpm_limit: Integer?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + organization_alias: String, + budget_duration: String?, + budget_id: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/organization_create_response.rbs b/sig/hanzoai/models/organization_create_response.rbs index d1f16399..1334c29d 100644 --- a/sig/hanzoai/models/organization_create_response.rbs +++ b/sig/hanzoai/models/organization_create_response.rbs @@ -49,6 +49,19 @@ module Hanzoai ?organization_alias: String?, ?spend: Float ) -> void + + def to_hash: -> { + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + organization_id: String, + updated_at: Time, + updated_by: String, + metadata: top?, + organization_alias: String?, + spend: Float + } end end end diff --git a/sig/hanzoai/models/organization_delete_member_params.rbs b/sig/hanzoai/models/organization_delete_member_params.rbs index ce6683f7..debf6ab1 100644 --- a/sig/hanzoai/models/organization_delete_member_params.rbs +++ b/sig/hanzoai/models/organization_delete_member_params.rbs @@ -20,6 +20,13 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + organization_id: String, + user_email: String?, + user_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/organization_delete_params.rbs b/sig/hanzoai/models/organization_delete_params.rbs index 95169a8d..5311a138 100644 --- a/sig/hanzoai/models/organization_delete_params.rbs +++ b/sig/hanzoai/models/organization_delete_params.rbs @@ -14,6 +14,11 @@ module Hanzoai organization_ids: ::Array[String], ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + organization_ids: ::Array[String], + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/organization_delete_response.rbs b/sig/hanzoai/models/organization_delete_response.rbs index 994908bd..1ae4170f 100644 --- a/sig/hanzoai/models/organization_delete_response.rbs +++ b/sig/hanzoai/models/organization_delete_response.rbs @@ -70,6 +70,22 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] ) -> void + def to_hash: -> { + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable?, + members: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member], + metadata: top?, + organization_alias: String?, + organization_id: String?, + spend: Float, + teams: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] + } + type llm_budget_table = { budget_duration: String?, @@ -105,6 +121,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end type member = @@ -155,6 +181,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -190,6 +228,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end @@ -289,6 +337,28 @@ module Hanzoai ?tpm_limit: Integer? ) -> void + def to_hash: -> { + team_id: String, + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + llm_model_table: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable?, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: top?, + model_id: Integer?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + tpm_limit: Integer? + } + type llm_model_table = { created_by: String, @@ -309,6 +379,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases? ) -> void + def to_hash: -> { + created_by: String, + updated_by: String, + model_aliases: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases? + } + type model_aliases = top | String module ModelAliases diff --git a/sig/hanzoai/models/organization_list_params.rbs b/sig/hanzoai/models/organization_list_params.rbs index 2f871be1..d6a5e4fa 100644 --- a/sig/hanzoai/models/organization_list_params.rbs +++ b/sig/hanzoai/models/organization_list_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/organization_list_response.rbs b/sig/hanzoai/models/organization_list_response.rbs index 69f9f104..35dddab7 100644 --- a/sig/hanzoai/models/organization_list_response.rbs +++ b/sig/hanzoai/models/organization_list_response.rbs @@ -70,6 +70,22 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] ) -> void + def to_hash: -> { + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable?, + members: ::Array[Hanzoai::Models::OrganizationListResponseItem::Member], + metadata: top?, + organization_alias: String?, + organization_id: String?, + spend: Float, + teams: ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] + } + type llm_budget_table = { budget_duration: String?, @@ -105,6 +121,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end type member = @@ -155,6 +181,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -190,6 +228,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end @@ -289,6 +337,28 @@ module Hanzoai ?tpm_limit: Integer? ) -> void + def to_hash: -> { + team_id: String, + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + llm_model_table: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable?, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: top?, + model_id: Integer?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + tpm_limit: Integer? + } + type llm_model_table = { created_by: String, @@ -309,6 +379,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases? ) -> void + def to_hash: -> { + created_by: String, + updated_by: String, + model_aliases: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases? + } + type model_aliases = top | String module ModelAliases diff --git a/sig/hanzoai/models/organization_update_member_params.rbs b/sig/hanzoai/models/organization_update_member_params.rbs index 3ed5bee7..2db083bf 100644 --- a/sig/hanzoai/models/organization_update_member_params.rbs +++ b/sig/hanzoai/models/organization_update_member_params.rbs @@ -33,6 +33,15 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + organization_id: String, + max_budget_in_organization: Float?, + role: Hanzoai::Models::OrganizationUpdateMemberParams::role?, + user_email: String?, + user_id: String?, + request_options: Hanzoai::RequestOptions + } + type role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/organization_update_member_response.rbs b/sig/hanzoai/models/organization_update_member_response.rbs index 494e580e..aba98045 100644 --- a/sig/hanzoai/models/organization_update_member_response.rbs +++ b/sig/hanzoai/models/organization_update_member_response.rbs @@ -48,6 +48,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -83,6 +95,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end end diff --git a/sig/hanzoai/models/organization_update_params.rbs b/sig/hanzoai/models/organization_update_params.rbs index 2a6326b6..594de842 100644 --- a/sig/hanzoai/models/organization_update_params.rbs +++ b/sig/hanzoai/models/organization_update_params.rbs @@ -40,6 +40,17 @@ module Hanzoai ?updated_by: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + budget_id: String?, + metadata: top?, + models: ::Array[String]?, + organization_alias: String?, + organization_id: String?, + spend: Float?, + updated_by: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/organization_update_response.rbs b/sig/hanzoai/models/organization_update_response.rbs index 8f0f99ab..c4c16a02 100644 --- a/sig/hanzoai/models/organization_update_response.rbs +++ b/sig/hanzoai/models/organization_update_response.rbs @@ -70,6 +70,22 @@ module Hanzoai ?teams: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] ) -> void + def to_hash: -> { + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + updated_at: Time, + updated_by: String, + llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable?, + members: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Member], + metadata: top?, + organization_alias: String?, + organization_id: String?, + spend: Float, + teams: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] + } + type llm_budget_table = { budget_duration: String?, @@ -105,6 +121,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end type member = @@ -155,6 +181,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -190,6 +228,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end @@ -289,6 +337,28 @@ module Hanzoai ?tpm_limit: Integer? ) -> void + def to_hash: -> { + team_id: String, + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + llm_model_table: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable?, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: top?, + model_id: Integer?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + tpm_limit: Integer? + } + type llm_model_table = { created_by: String, @@ -309,6 +379,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases? ) -> void + def to_hash: -> { + created_by: String, + updated_by: String, + model_aliases: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases? + } + type model_aliases = top | String module ModelAliases diff --git a/sig/hanzoai/models/provider_list_budgets_params.rbs b/sig/hanzoai/models/provider_list_budgets_params.rbs index b98a6c49..271fdabf 100644 --- a/sig/hanzoai/models/provider_list_budgets_params.rbs +++ b/sig/hanzoai/models/provider_list_budgets_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/provider_list_budgets_response.rbs b/sig/hanzoai/models/provider_list_budgets_response.rbs index cca0865d..1778646d 100644 --- a/sig/hanzoai/models/provider_list_budgets_response.rbs +++ b/sig/hanzoai/models/provider_list_budgets_response.rbs @@ -16,6 +16,10 @@ module Hanzoai ?providers: ::Hash[Symbol, Hanzoai::Models::ProviderListBudgetsResponse::Provider] ) -> void + def to_hash: -> { + providers: ::Hash[Symbol, Hanzoai::Models::ProviderListBudgetsResponse::Provider] + } + type provider = { budget_limit: Float?, @@ -39,6 +43,13 @@ module Hanzoai ?budget_reset_at: String?, ?spend: Float? ) -> void + + def to_hash: -> { + budget_limit: Float?, + time_period: String?, + budget_reset_at: String?, + spend: Float? + } end end end diff --git a/sig/hanzoai/models/rerank_create_params.rbs b/sig/hanzoai/models/rerank_create_params.rbs index 9c5fa197..0d762a02 100644 --- a/sig/hanzoai/models/rerank_create_params.rbs +++ b/sig/hanzoai/models/rerank_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/rerank_create_v1_params.rbs b/sig/hanzoai/models/rerank_create_v1_params.rbs index f0974c2c..004b6cf0 100644 --- a/sig/hanzoai/models/rerank_create_v1_params.rbs +++ b/sig/hanzoai/models/rerank_create_v1_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/rerank_create_v2_params.rbs b/sig/hanzoai/models/rerank_create_v2_params.rbs index b1a3abe7..ff72000f 100644 --- a/sig/hanzoai/models/rerank_create_v2_params.rbs +++ b/sig/hanzoai/models/rerank_create_v2_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/response_create_params.rbs b/sig/hanzoai/models/response_create_params.rbs index 0726e185..09e4be57 100644 --- a/sig/hanzoai/models/response_create_params.rbs +++ b/sig/hanzoai/models/response_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/response_delete_params.rbs b/sig/hanzoai/models/response_delete_params.rbs index 0142ecbd..50c13cb9 100644 --- a/sig/hanzoai/models/response_delete_params.rbs +++ b/sig/hanzoai/models/response_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/response_retrieve_params.rbs b/sig/hanzoai/models/response_retrieve_params.rbs index aa16f4f6..e7700618 100644 --- a/sig/hanzoai/models/response_retrieve_params.rbs +++ b/sig/hanzoai/models/response_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/responses/input_item_list_params.rbs b/sig/hanzoai/models/responses/input_item_list_params.rbs index 2f39f093..11242a9f 100644 --- a/sig/hanzoai/models/responses/input_item_list_params.rbs +++ b/sig/hanzoai/models/responses/input_item_list_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/route_list_params.rbs b/sig/hanzoai/models/route_list_params.rbs index 0756cdf2..21669591 100644 --- a/sig/hanzoai/models/route_list_params.rbs +++ b/sig/hanzoai/models/route_list_params.rbs @@ -7,6 +7,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/setting_retrieve_params.rbs b/sig/hanzoai/models/setting_retrieve_params.rbs index 1b83eb36..1d6e5e98 100644 --- a/sig/hanzoai/models/setting_retrieve_params.rbs +++ b/sig/hanzoai/models/setting_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/spend_calculate_spend_params.rbs b/sig/hanzoai/models/spend_calculate_spend_params.rbs index 8862ba1e..624328be 100644 --- a/sig/hanzoai/models/spend_calculate_spend_params.rbs +++ b/sig/hanzoai/models/spend_calculate_spend_params.rbs @@ -20,6 +20,13 @@ module Hanzoai ?model: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + completion_response: top?, + messages: ::Array[top]?, + model: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/spend_list_logs_params.rbs b/sig/hanzoai/models/spend_list_logs_params.rbs index 2aa27d63..ca1af048 100644 --- a/sig/hanzoai/models/spend_list_logs_params.rbs +++ b/sig/hanzoai/models/spend_list_logs_params.rbs @@ -32,6 +32,15 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + api_key: String?, + end_date: String?, + request_id: String?, + start_date: String?, + user_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/spend_list_logs_response.rbs b/sig/hanzoai/models/spend_list_logs_response.rbs index 22b78b4d..a5623dd7 100644 --- a/sig/hanzoai/models/spend_list_logs_response.rbs +++ b/sig/hanzoai/models/spend_list_logs_response.rbs @@ -88,6 +88,28 @@ module Hanzoai ?user: String? ) -> void + def to_hash: -> { + api_key: String, + call_type: String, + end_time: Hanzoai::Models::SpendListLogsResponseItem::end_time?, + messages: Hanzoai::Models::SpendListLogsResponseItem::messages?, + request_id: String, + response: Hanzoai::Models::SpendListLogsResponseItem::response?, + start_time: Hanzoai::Models::SpendListLogsResponseItem::start_time?, + api_base: String?, + cache_hit: String?, + cache_key: String?, + completion_tokens: Integer?, + metadata: top, + model: String?, + prompt_tokens: Integer?, + request_tags: top, + requester_ip_address: String?, + spend: Float?, + total_tokens: Integer?, + user: String? + } + type end_time = String | Time module EndTime diff --git a/sig/hanzoai/models/spend_list_tags_params.rbs b/sig/hanzoai/models/spend_list_tags_params.rbs index dcbb5f02..f527847d 100644 --- a/sig/hanzoai/models/spend_list_tags_params.rbs +++ b/sig/hanzoai/models/spend_list_tags_params.rbs @@ -17,6 +17,12 @@ module Hanzoai ?start_date: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + end_date: String?, + start_date: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/spend_list_tags_response.rbs b/sig/hanzoai/models/spend_list_tags_response.rbs index 5c7d2c4b..0c9997a9 100644 --- a/sig/hanzoai/models/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/spend_list_tags_response.rbs @@ -88,6 +88,28 @@ module Hanzoai ?user: String? ) -> void + def to_hash: -> { + api_key: String, + call_type: String, + end_time: Hanzoai::Models::SpendListTagsResponseItem::end_time?, + messages: Hanzoai::Models::SpendListTagsResponseItem::messages?, + request_id: String, + response: Hanzoai::Models::SpendListTagsResponseItem::response?, + start_time: Hanzoai::Models::SpendListTagsResponseItem::start_time?, + api_base: String?, + cache_hit: String?, + cache_key: String?, + completion_tokens: Integer?, + metadata: top, + model: String?, + prompt_tokens: Integer?, + request_tags: top, + requester_ip_address: String?, + spend: Float?, + total_tokens: Integer?, + user: String? + } + type end_time = String | Time module EndTime diff --git a/sig/hanzoai/models/team/callback_add_params.rbs b/sig/hanzoai/models/team/callback_add_params.rbs index ab9216c1..b144f772 100644 --- a/sig/hanzoai/models/team/callback_add_params.rbs +++ b/sig/hanzoai/models/team/callback_add_params.rbs @@ -32,6 +32,14 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + callback_name: String, + callback_vars: ::Hash[Symbol, String], + callback_type: Hanzoai::Models::Team::CallbackAddParams::callback_type?, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } + type callback_type = :success | :failure | :success_and_failure module CallbackType diff --git a/sig/hanzoai/models/team/callback_retrieve_params.rbs b/sig/hanzoai/models/team/callback_retrieve_params.rbs index de27bc82..5e4bffe5 100644 --- a/sig/hanzoai/models/team/callback_retrieve_params.rbs +++ b/sig/hanzoai/models/team/callback_retrieve_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/team/model_add_params.rbs b/sig/hanzoai/models/team/model_add_params.rbs index b6353c5d..14a3e069 100644 --- a/sig/hanzoai/models/team/model_add_params.rbs +++ b/sig/hanzoai/models/team/model_add_params.rbs @@ -18,6 +18,12 @@ module Hanzoai team_id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + models: ::Array[String], + team_id: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team/model_remove_params.rbs b/sig/hanzoai/models/team/model_remove_params.rbs index d771d66d..b3c573fe 100644 --- a/sig/hanzoai/models/team/model_remove_params.rbs +++ b/sig/hanzoai/models/team/model_remove_params.rbs @@ -18,6 +18,12 @@ module Hanzoai team_id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + models: ::Array[String], + team_id: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team_add_member_params.rbs b/sig/hanzoai/models/team_add_member_params.rbs index 0f8503ac..f1a1a2e9 100644 --- a/sig/hanzoai/models/team_add_member_params.rbs +++ b/sig/hanzoai/models/team_add_member_params.rbs @@ -25,6 +25,13 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + member: Hanzoai::Models::TeamAddMemberParams::member, + team_id: String, + max_budget_in_team: Float?, + request_options: Hanzoai::RequestOptions + } + type member = ::Array[Hanzoai::Member] | Hanzoai::Member module Member diff --git a/sig/hanzoai/models/team_add_member_response.rbs b/sig/hanzoai/models/team_add_member_response.rbs index ebbacc52..9edfad44 100644 --- a/sig/hanzoai/models/team_add_member_response.rbs +++ b/sig/hanzoai/models/team_add_member_response.rbs @@ -104,6 +104,30 @@ module Hanzoai ?tpm_limit: Integer? ) -> void + def to_hash: -> { + team_id: String, + updated_team_memberships: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership], + updated_users: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser], + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + llm_model_table: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable?, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: top?, + model_id: Integer?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + tpm_limit: Integer? + } + type updated_team_membership = { budget_id: String, @@ -128,6 +152,13 @@ module Hanzoai user_id: String ) -> void + def to_hash: -> { + budget_id: String, + llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable?, + team_id: String, + user_id: String + } + type llm_budget_table = { budget_duration: String?, @@ -163,6 +194,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end @@ -244,6 +285,25 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + user_id: String, + budget_duration: String?, + budget_reset_at: Time?, + max_budget: Float?, + metadata: top?, + model_max_budget: top?, + model_spend: top?, + models: ::Array[top], + organization_memberships: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership]?, + rpm_limit: Integer?, + spend: Float, + sso_user_id: String?, + teams: ::Array[String], + tpm_limit: Integer?, + user_email: String?, + user_role: String? + } + type organization_membership = { created_at: Time, @@ -292,6 +352,18 @@ module Hanzoai ?user_role: String? ) -> void + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, + spend: Float, + user: top, + user_role: String? + } + type llm_budget_table = { budget_duration: String?, @@ -327,6 +399,16 @@ module Hanzoai ?soft_budget: Float?, ?tpm_limit: Integer? ) -> void + + def to_hash: -> { + budget_duration: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: top?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } end end end @@ -351,6 +433,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases? ) -> void + def to_hash: -> { + created_by: String, + updated_by: String, + model_aliases: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases? + } + type model_aliases = top | String module ModelAliases diff --git a/sig/hanzoai/models/team_block_params.rbs b/sig/hanzoai/models/team_block_params.rbs index b0e59dd1..2d4f9a2f 100644 --- a/sig/hanzoai/models/team_block_params.rbs +++ b/sig/hanzoai/models/team_block_params.rbs @@ -7,6 +7,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/team_create_params.rbs b/sig/hanzoai/models/team_create_params.rbs index b9820cd5..1e1ccd10 100644 --- a/sig/hanzoai/models/team_create_params.rbs +++ b/sig/hanzoai/models/team_create_params.rbs @@ -94,6 +94,27 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + guardrails: ::Array[String]?, + max_budget: Float?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: top?, + model_aliases: top?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + tags: ::Array[top]?, + team_alias: String?, + team_id: String?, + tpm_limit: Integer?, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team_create_response.rbs b/sig/hanzoai/models/team_create_response.rbs index d7954675..576dfcfd 100644 --- a/sig/hanzoai/models/team_create_response.rbs +++ b/sig/hanzoai/models/team_create_response.rbs @@ -96,6 +96,28 @@ module Hanzoai ?tpm_limit: Integer? ) -> void + def to_hash: -> { + team_id: String, + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + llm_model_table: Hanzoai::Models::TeamCreateResponse::LlmModelTable?, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: top?, + model_id: Integer?, + models: ::Array[top], + organization_id: String?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + tpm_limit: Integer? + } + type llm_model_table = { created_by: String, @@ -116,6 +138,12 @@ module Hanzoai ?model_aliases: Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases? ) -> void + def to_hash: -> { + created_by: String, + updated_by: String, + model_aliases: Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases? + } + type model_aliases = top | String module ModelAliases diff --git a/sig/hanzoai/models/team_delete_params.rbs b/sig/hanzoai/models/team_delete_params.rbs index fb9ba26b..33c84eb3 100644 --- a/sig/hanzoai/models/team_delete_params.rbs +++ b/sig/hanzoai/models/team_delete_params.rbs @@ -19,6 +19,12 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + team_ids: ::Array[String], + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team_disable_logging_params.rbs b/sig/hanzoai/models/team_disable_logging_params.rbs index 80dae308..f478b35c 100644 --- a/sig/hanzoai/models/team_disable_logging_params.rbs +++ b/sig/hanzoai/models/team_disable_logging_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/team_list_available_params.rbs b/sig/hanzoai/models/team_list_available_params.rbs index c794197b..db2e3c73 100644 --- a/sig/hanzoai/models/team_list_available_params.rbs +++ b/sig/hanzoai/models/team_list_available_params.rbs @@ -15,6 +15,11 @@ module Hanzoai ?response_model: top, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + response_model: top, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team_list_params.rbs b/sig/hanzoai/models/team_list_params.rbs index 3c3c6bd3..9fa07931 100644 --- a/sig/hanzoai/models/team_list_params.rbs +++ b/sig/hanzoai/models/team_list_params.rbs @@ -17,6 +17,12 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + organization_id: String?, + user_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team_remove_member_params.rbs b/sig/hanzoai/models/team_remove_member_params.rbs index fd23c0e4..924b68d8 100644 --- a/sig/hanzoai/models/team_remove_member_params.rbs +++ b/sig/hanzoai/models/team_remove_member_params.rbs @@ -20,6 +20,13 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + team_id: String, + user_email: String?, + user_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team_retrieve_info_params.rbs b/sig/hanzoai/models/team_retrieve_info_params.rbs index 5305ddcc..374695ac 100644 --- a/sig/hanzoai/models/team_retrieve_info_params.rbs +++ b/sig/hanzoai/models/team_retrieve_info_params.rbs @@ -15,6 +15,11 @@ module Hanzoai ?team_id: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + team_id: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/team_unblock_params.rbs b/sig/hanzoai/models/team_unblock_params.rbs index 98fbeaad..7ab530f0 100644 --- a/sig/hanzoai/models/team_unblock_params.rbs +++ b/sig/hanzoai/models/team_unblock_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/team_update_member_params.rbs b/sig/hanzoai/models/team_update_member_params.rbs index 5c8550f4..5ee87f7d 100644 --- a/sig/hanzoai/models/team_update_member_params.rbs +++ b/sig/hanzoai/models/team_update_member_params.rbs @@ -33,6 +33,15 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + team_id: String, + max_budget_in_team: Float?, + role: Hanzoai::Models::TeamUpdateMemberParams::role?, + user_email: String?, + user_id: String?, + request_options: Hanzoai::RequestOptions + } + type role = :admin | :user module Role diff --git a/sig/hanzoai/models/team_update_member_response.rbs b/sig/hanzoai/models/team_update_member_response.rbs index f4b4a8ad..ab3649e0 100644 --- a/sig/hanzoai/models/team_update_member_response.rbs +++ b/sig/hanzoai/models/team_update_member_response.rbs @@ -23,6 +23,13 @@ module Hanzoai ?max_budget_in_team: Float?, ?user_email: String? ) -> void + + def to_hash: -> { + team_id: String, + user_id: String, + max_budget_in_team: Float?, + user_email: String? + } end end end diff --git a/sig/hanzoai/models/team_update_params.rbs b/sig/hanzoai/models/team_update_params.rbs index 397273c2..30c7f114 100644 --- a/sig/hanzoai/models/team_update_params.rbs +++ b/sig/hanzoai/models/team_update_params.rbs @@ -70,6 +70,24 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + team_id: String, + blocked: bool?, + budget_duration: String?, + guardrails: ::Array[String]?, + max_budget: Float?, + metadata: top?, + model_aliases: top?, + models: ::Array[top]?, + organization_id: String?, + rpm_limit: Integer?, + tags: ::Array[top]?, + team_alias: String?, + tpm_limit: Integer?, + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/test_ping_params.rbs b/sig/hanzoai/models/test_ping_params.rbs index 60c2b272..1659b7c4 100644 --- a/sig/hanzoai/models/test_ping_params.rbs +++ b/sig/hanzoai/models/test_ping_params.rbs @@ -7,6 +7,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/thread_create_params.rbs b/sig/hanzoai/models/thread_create_params.rbs index 9e42d469..76c71538 100644 --- a/sig/hanzoai/models/thread_create_params.rbs +++ b/sig/hanzoai/models/thread_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/thread_retrieve_params.rbs b/sig/hanzoai/models/thread_retrieve_params.rbs index fa429a6e..10c1c8d8 100644 --- a/sig/hanzoai/models/thread_retrieve_params.rbs +++ b/sig/hanzoai/models/thread_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/threads/message_create_params.rbs b/sig/hanzoai/models/threads/message_create_params.rbs index ea40a4cc..9a0fe0d8 100644 --- a/sig/hanzoai/models/threads/message_create_params.rbs +++ b/sig/hanzoai/models/threads/message_create_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/threads/message_list_params.rbs b/sig/hanzoai/models/threads/message_list_params.rbs index e3a22afc..93d7fa61 100644 --- a/sig/hanzoai/models/threads/message_list_params.rbs +++ b/sig/hanzoai/models/threads/message_list_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/threads/run_create_params.rbs b/sig/hanzoai/models/threads/run_create_params.rbs index c4a1471d..2aab44c3 100644 --- a/sig/hanzoai/models/threads/run_create_params.rbs +++ b/sig/hanzoai/models/threads/run_create_params.rbs @@ -9,6 +9,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/user_create_params.rbs b/sig/hanzoai/models/user_create_params.rbs index 9b473a87..e4b22904 100644 --- a/sig/hanzoai/models/user_create_params.rbs +++ b/sig/hanzoai/models/user_create_params.rbs @@ -123,6 +123,37 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + aliases: top?, + allowed_cache_controls: ::Array[top]?, + auto_create_key: bool, + blocked: bool?, + budget_duration: String?, + config: top?, + duration: String?, + guardrails: ::Array[String]?, + key_alias: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + model_rpm_limit: top?, + model_tpm_limit: top?, + models: ::Array[top]?, + permissions: top?, + rpm_limit: Integer?, + send_invite_email: bool?, + spend: Float?, + team_id: String?, + teams: ::Array[top]?, + tpm_limit: Integer?, + user_alias: String?, + user_email: String?, + user_id: String?, + user_role: Hanzoai::Models::UserCreateParams::user_role?, + request_options: Hanzoai::RequestOptions + } + type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/user_create_response.rbs b/sig/hanzoai/models/user_create_response.rbs index fda7f1ed..73d7f17e 100644 --- a/sig/hanzoai/models/user_create_response.rbs +++ b/sig/hanzoai/models/user_create_response.rbs @@ -154,6 +154,45 @@ module Hanzoai ?user_role: Hanzoai::Models::UserCreateResponse::user_role? ) -> void + def to_hash: -> { + expires: Time?, + key: String, + token: String?, + aliases: top?, + allowed_cache_controls: ::Array[top]?, + blocked: bool?, + budget_duration: String?, + budget_id: String?, + config: top?, + created_by: String?, + duration: String?, + enforced_params: ::Array[String]?, + guardrails: ::Array[String]?, + key_alias: String?, + key_name: String?, + llm_budget_table: top, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + model_rpm_limit: top?, + model_tpm_limit: top?, + models: ::Array[top]?, + permissions: top?, + rpm_limit: Integer?, + spend: Float?, + tags: ::Array[String]?, + team_id: String?, + teams: ::Array[top]?, + token_id: String?, + tpm_limit: Integer?, + updated_by: String?, + user_alias: String?, + user_email: String?, + user_id: String?, + user_role: Hanzoai::Models::UserCreateResponse::user_role? + } + type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/user_delete_params.rbs b/sig/hanzoai/models/user_delete_params.rbs index 0f8ab282..77f39387 100644 --- a/sig/hanzoai/models/user_delete_params.rbs +++ b/sig/hanzoai/models/user_delete_params.rbs @@ -19,6 +19,12 @@ module Hanzoai ?llm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + user_ids: ::Array[String], + llm_changed_by: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/user_list_params.rbs b/sig/hanzoai/models/user_list_params.rbs index 15557be2..28559cc5 100644 --- a/sig/hanzoai/models/user_list_params.rbs +++ b/sig/hanzoai/models/user_list_params.rbs @@ -27,6 +27,14 @@ module Hanzoai ?user_ids: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + page: Integer, + page_size: Integer, + role: String?, + user_ids: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/user_retrieve_info_params.rbs b/sig/hanzoai/models/user_retrieve_info_params.rbs index 6de1019e..ca222c8e 100644 --- a/sig/hanzoai/models/user_retrieve_info_params.rbs +++ b/sig/hanzoai/models/user_retrieve_info_params.rbs @@ -13,6 +13,11 @@ module Hanzoai ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + user_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/user_update_params.rbs b/sig/hanzoai/models/user_update_params.rbs index cbf95c76..d5e41a5f 100644 --- a/sig/hanzoai/models/user_update_params.rbs +++ b/sig/hanzoai/models/user_update_params.rbs @@ -109,6 +109,34 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + aliases: top?, + allowed_cache_controls: ::Array[top]?, + blocked: bool?, + budget_duration: String?, + config: top?, + duration: String?, + guardrails: ::Array[String]?, + key_alias: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: top?, + model_max_budget: top?, + model_rpm_limit: top?, + model_tpm_limit: top?, + models: ::Array[top]?, + password: String?, + permissions: top?, + rpm_limit: Integer?, + spend: Float?, + team_id: String?, + tpm_limit: Integer?, + user_email: String?, + user_id: String?, + user_role: Hanzoai::Models::UserUpdateParams::user_role?, + request_options: Hanzoai::RequestOptions + } + type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/util_get_supported_openai_params_params.rbs b/sig/hanzoai/models/util_get_supported_openai_params_params.rbs index 6242962d..af29989c 100644 --- a/sig/hanzoai/models/util_get_supported_openai_params_params.rbs +++ b/sig/hanzoai/models/util_get_supported_openai_params_params.rbs @@ -13,6 +13,11 @@ module Hanzoai model: String, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + model: String, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/util_token_counter_params.rbs b/sig/hanzoai/models/util_token_counter_params.rbs index ce6a66c4..442cdeaf 100644 --- a/sig/hanzoai/models/util_token_counter_params.rbs +++ b/sig/hanzoai/models/util_token_counter_params.rbs @@ -20,6 +20,13 @@ module Hanzoai ?prompt: String?, ?request_options: Hanzoai::request_opts ) -> void + + def to_hash: -> { + model: String, + messages: ::Array[top]?, + prompt: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/util_token_counter_response.rbs b/sig/hanzoai/models/util_token_counter_response.rbs index 71ae4e98..ddbaf940 100644 --- a/sig/hanzoai/models/util_token_counter_response.rbs +++ b/sig/hanzoai/models/util_token_counter_response.rbs @@ -23,6 +23,13 @@ module Hanzoai tokenizer_type: String, total_tokens: Integer ) -> void + + def to_hash: -> { + model_used: String, + request_model: String, + tokenizer_type: String, + total_tokens: Integer + } end end end diff --git a/sig/hanzoai/models/util_transform_request_params.rbs b/sig/hanzoai/models/util_transform_request_params.rbs index da29676e..4afe0a31 100644 --- a/sig/hanzoai/models/util_transform_request_params.rbs +++ b/sig/hanzoai/models/util_transform_request_params.rbs @@ -21,6 +21,12 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> void + def to_hash: -> { + call_type: Hanzoai::Models::UtilTransformRequestParams::call_type, + request_body: top, + request_options: Hanzoai::RequestOptions + } + type call_type = :embedding | :aembedding diff --git a/sig/hanzoai/models/util_transform_request_response.rbs b/sig/hanzoai/models/util_transform_request_response.rbs index ba85f4b2..62bc11f7 100644 --- a/sig/hanzoai/models/util_transform_request_response.rbs +++ b/sig/hanzoai/models/util_transform_request_response.rbs @@ -23,6 +23,13 @@ module Hanzoai ?raw_request_body: top?, ?raw_request_headers: top? ) -> void + + def to_hash: -> { + error: String?, + raw_request_api_base: String?, + raw_request_body: top?, + raw_request_headers: top? + } end end end diff --git a/sig/hanzoai/models/vertex_ai_create_params.rbs b/sig/hanzoai/models/vertex_ai_create_params.rbs index f72e9888..2b5a52b1 100644 --- a/sig/hanzoai/models/vertex_ai_create_params.rbs +++ b/sig/hanzoai/models/vertex_ai_create_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/vertex_ai_delete_params.rbs b/sig/hanzoai/models/vertex_ai_delete_params.rbs index c7abea89..18acf7bb 100644 --- a/sig/hanzoai/models/vertex_ai_delete_params.rbs +++ b/sig/hanzoai/models/vertex_ai_delete_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/vertex_ai_patch_params.rbs b/sig/hanzoai/models/vertex_ai_patch_params.rbs index a2079528..6214bb3a 100644 --- a/sig/hanzoai/models/vertex_ai_patch_params.rbs +++ b/sig/hanzoai/models/vertex_ai_patch_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/vertex_ai_retrieve_params.rbs b/sig/hanzoai/models/vertex_ai_retrieve_params.rbs index c363b3a0..05fafbbe 100644 --- a/sig/hanzoai/models/vertex_ai_retrieve_params.rbs +++ b/sig/hanzoai/models/vertex_ai_retrieve_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/vertex_ai_update_params.rbs b/sig/hanzoai/models/vertex_ai_update_params.rbs index 511bcab5..e835cfd4 100644 --- a/sig/hanzoai/models/vertex_ai_update_params.rbs +++ b/sig/hanzoai/models/vertex_ai_update_params.rbs @@ -8,6 +8,8 @@ module Hanzoai include Hanzoai::Internal::Type::RequestParameters def initialize: (?request_options: Hanzoai::request_opts) -> void + + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end From 9b265099c8a127e9d996059b967264a0332f5ba5 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 May 2025 02:46:47 +0000 Subject: [PATCH 086/139] fix: prevent rubocop from mangling `===` to `is_a?` check --- lib/hanzoai/internal/util.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 2e325e8c..a7b242ea 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -600,11 +600,13 @@ class << self # # @return [Object] def encode_content(headers, body) + # rubocop:disable Style/CaseEquality + # rubocop:disable Layout/LineLength content_type = headers["content-type"] case [content_type, body] in [Hanzoai::Internal::Util::JSON_CONTENT, Hash | Array | -> { primitive?(_1) }] [headers, JSON.generate(body)] - in [Hanzoai::Internal::Util::JSONL_CONTENT, Enumerable] unless body.is_a?(Hanzoai::Internal::Type::FileInput) + in [Hanzoai::Internal::Util::JSONL_CONTENT, Enumerable] unless Hanzoai::Internal::Type::FileInput === body [headers, body.lazy.map { JSON.generate(_1) }] in [%r{^multipart/form-data}, Hash | Hanzoai::Internal::Type::FileInput] boundary, strio = encode_multipart_streaming(body) @@ -619,6 +621,8 @@ def encode_content(headers, body) else [headers, body] end + # rubocop:enable Layout/LineLength + # rubocop:enable Style/CaseEquality end # @api private From 43bc35d34cc3c86de007616c18a4b453bbb0a70b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 28 May 2025 02:41:04 +0000 Subject: [PATCH 087/139] fix: sorbet types for enums, and make tapioca detection ignore `tapioca dsl` --- lib/hanzoai.rb | 4 +++- lib/hanzoai/internal/util.rb | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index f4121dc3..054e8d74 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -20,7 +20,9 @@ # We already ship the preferred sorbet manifests in the package itself. # `tapioca` currently does not offer us a way to opt out of unnecessary compilation. -if Object.const_defined?(:Tapioca) && caller.chain([$PROGRAM_NAME]).chain(ARGV).grep(/tapioca/) +if Object.const_defined?(:Tapioca) && + caller.chain([$PROGRAM_NAME]).chain(ARGV).any?(/tapioca/) && + ARGV.none?(/dsl/) return end diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index a7b242ea..ed39c83d 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -875,8 +875,12 @@ def to_sorbet_type(type) case type in Hanzoai::Internal::Util::SorbetRuntimeSupport type.to_sorbet_type - else + in Class | Module type + in true | false + T::Boolean + else + type.class end end end From 448244f93449c2d957cdd9b585ece6c303f6522c Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 3 Jun 2025 04:30:22 +0000 Subject: [PATCH 088/139] fix: `to_sorbet_type` should not return branded types --- lib/hanzoai/internal/type/enum.rb | 9 ++++++--- lib/hanzoai/internal/type/union.rb | 7 +++++-- lib/hanzoai/models.rb | 8 ++++---- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index 1462f859..d85b83f4 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -91,11 +91,14 @@ def coerce(value, state:) # # @return [Object] def to_sorbet_type - case values + types = values.map { Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(_1) }.uniq + case types in [] T.noreturn - in [value, *_] - T.all(Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(value), self) + in [type] + type + else + T.any(*types) end end diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 96553ead..29ed7851 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -195,11 +195,14 @@ def dump(value, state:) # # @return [Object] def to_sorbet_type - case (v = variants) + types = variants.map { Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(_1) }.uniq + case types in [] T.noreturn + in [type] + type else - T.any(*v.map { Hanzoai::Internal::Util::SorbetRuntimeSupport.to_sorbet_type(_1) }) + T.any(*types) end end diff --git a/lib/hanzoai/models.rb b/lib/hanzoai/models.rb index e4c02a9e..499cd3a5 100644 --- a/lib/hanzoai/models.rb +++ b/lib/hanzoai/models.rb @@ -11,16 +11,16 @@ module Hanzoai mod.constants.each do |name| case mod.const_get(name) in true | false - mod.define_sorbet_constant!(:TaggedBoolean) { T.type_alias { T.all(T::Boolean, mod) } } + mod.define_sorbet_constant!(:TaggedBoolean) { T.type_alias { T::Boolean } } mod.define_sorbet_constant!(:OrBoolean) { T.type_alias { T::Boolean } } in Integer - mod.define_sorbet_constant!(:TaggedInteger) { T.type_alias { T.all(Integer, mod) } } + mod.define_sorbet_constant!(:TaggedInteger) { T.type_alias { Integer } } mod.define_sorbet_constant!(:OrInteger) { T.type_alias { Integer } } in Float - mod.define_sorbet_constant!(:TaggedFloat) { T.type_alias { T.all(Float, mod) } } + mod.define_sorbet_constant!(:TaggedFloat) { T.type_alias { Float } } mod.define_sorbet_constant!(:OrFloat) { T.type_alias { Float } } in Symbol - mod.define_sorbet_constant!(:TaggedSymbol) { T.type_alias { T.all(Symbol, mod) } } + mod.define_sorbet_constant!(:TaggedSymbol) { T.type_alias { Symbol } } mod.define_sorbet_constant!(:OrSymbol) { T.type_alias { T.any(Symbol, String) } } else end From 176266c83378b9f1e815ea6a7b4f2079d87aa2ab Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 17 Jul 2025 11:30:44 +0000 Subject: [PATCH 089/139] feat(api): api update --- .github/workflows/ci.yml | 6 ++ .github/workflows/publish-gem.yml | 2 +- .stats.yml | 4 +- bin/check-release-environment | 2 +- lib/hanzoai/errors.rb | 22 ++++ lib/hanzoai/internal/transport/base_client.rb | 12 ++- lib/hanzoai/internal/type/array_of.rb | 7 +- lib/hanzoai/internal/type/base_model.rb | 102 +++++++++++++----- lib/hanzoai/internal/type/boolean.rb | 8 +- lib/hanzoai/internal/type/converter.rb | 76 +++++++------ lib/hanzoai/internal/type/enum.rb | 12 ++- lib/hanzoai/internal/type/file_input.rb | 7 +- lib/hanzoai/internal/type/hash_of.rb | 7 +- lib/hanzoai/internal/type/union.rb | 19 ++-- lib/hanzoai/internal/type/unknown.rb | 8 +- lib/hanzoai/internal/util.rb | 17 ++- rbi/hanzoai/client.rbi | 2 +- rbi/hanzoai/errors.rbi | 16 +++ rbi/hanzoai/internal/type/boolean.rbi | 2 + rbi/hanzoai/internal/type/converter.rbi | 30 +++--- rbi/hanzoai/internal/type/union.rbi | 5 + rbi/hanzoai/internal/type/unknown.rbi | 2 + rbi/hanzoai/internal/util.rbi | 2 + sig/hanzoai/errors.rbs | 9 ++ sig/hanzoai/internal/type/converter.rbs | 8 +- test/hanzoai/internal/type/base_model_test.rb | 69 ++++++++---- 26 files changed, 330 insertions(+), 126 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 244687d4..5a7d24db 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,12 +7,17 @@ on: - 'integrated/**' - 'stl-preview-head/**' - 'stl-preview-base/**' + pull_request: + branches-ignore: + - 'stl-preview-head/**' + - 'stl-preview-base/**' jobs: lint: timeout-minutes: 10 name: lint runs-on: ${{ github.repository == 'stainless-sdks/hanzo-ai-ruby' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} + if: github.event_name == 'push' || github.event.pull_request.head.repo.fork steps: - uses: actions/checkout@v4 @@ -29,6 +34,7 @@ jobs: timeout-minutes: 10 name: test runs-on: ${{ github.repository == 'stainless-sdks/hanzo-ai-ruby' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} + if: github.event_name == 'push' || github.event.pull_request.head.repo.fork steps: - uses: actions/checkout@v4 - name: Set up Ruby diff --git a/.github/workflows/publish-gem.yml b/.github/workflows/publish-gem.yml index c566b7c1..ba9bed42 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -1,6 +1,6 @@ # This workflow is triggered when a GitHub release is created. # It can also be run manually to re-publish to rubygems.org in case it failed for some reason. -# You can run this workflow by navigating to https://www.github.com/hanzoai/python-sdk/actions/workflows/publish-gem.yml +# You can run this workflow by navigating to https://www.github.com/hanzoai/ruby-sdk/actions/workflows/publish-gem.yml name: Publish Gem on: workflow_dispatch: diff --git a/.stats.yml b/.stats.yml index bb9fef09..affe3eef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 188 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-ec4be99f95dc46e9442eb60f233b2bff271d6f5bf57d7c61a52bc4804f55bbd1.yml -openapi_spec_hash: 87bc62c36bb6028ffd1f3e54a2809099 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-2d6e1036fb1eea7e95cafc281141ead9ef77796e43711b17edccaab67c5e791a.yml +openapi_spec_hash: 12501774d0127be4ec1812d613a58e97 config_hash: 830747463ff4d018b5633ce511e88558 diff --git a/bin/check-release-environment b/bin/check-release-environment index aa8fb376..c05436e8 100644 --- a/bin/check-release-environment +++ b/bin/check-release-environment @@ -3,7 +3,7 @@ errors=() if [ -z "${GEM_HOST_API_KEY}" ]; then - errors+=("The HANZO_GEM_HOST_API_KEY secret has not been set. Please set it in either this repository's secrets or your organization secrets") + errors+=("The GEM_HOST_API_KEY secret has not been set. Please set it in either this repository's secrets or your organization secrets") fi lenErrors=${#errors[@]} diff --git a/lib/hanzoai/errors.rb b/lib/hanzoai/errors.rb index d2270347..65266cf7 100644 --- a/lib/hanzoai/errors.rb +++ b/lib/hanzoai/errors.rb @@ -9,6 +9,28 @@ class Error < StandardError end class ConversionError < Hanzoai::Errors::Error + # @return [StandardError, nil] + def cause = @cause.nil? ? super : @cause + + # @api private + # + # @param on [Class] + # @param method [Symbol] + # @param target [Object] + # @param value [Object] + # @param cause [StandardError, nil] + def initialize(on:, method:, target:, value:, cause: nil) + cls = on.name.split("::").last + + message = [ + "Failed to parse #{cls}.#{method} from #{value.class} to #{target.inspect}.", + "To get the unparsed API response, use #{cls}[#{method.inspect}].", + cause && "Cause: #{cause.message}" + ].filter(&:itself).join(" ") + + @cause = cause + super(message) + end end class APIError < Hanzoai::Errors::Error diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 49dd34af..e45ada41 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -471,6 +471,7 @@ def request(req) self.class.validate!(req) model = req.fetch(:model) { Hanzoai::Internal::Type::Unknown } opts = req[:options].to_h + unwrap = req[:unwrap] Hanzoai::RequestOptions.validate!(opts) request = build_request(req.except(:options), opts) url = request.fetch(:url) @@ -487,11 +488,18 @@ def request(req) decoded = Hanzoai::Internal::Util.decode_content(response, stream: stream) case req in {stream: Class => st} - st.new(model: model, url: url, status: status, response: response, stream: decoded) + st.new( + model: model, + url: url, + status: status, + response: response, + unwrap: unwrap, + stream: decoded + ) in {page: Class => page} page.new(client: self, req: req, headers: response, page_data: decoded) else - unwrapped = Hanzoai::Internal::Util.dig(decoded, req[:unwrap]) + unwrapped = Hanzoai::Internal::Util.dig(decoded, unwrap) Hanzoai::Internal::Type::Converter.coerce(model, unwrapped) end end diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index 556e4a8d..22bdb879 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -62,10 +62,14 @@ def hash = [self.class, item_type].hash # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Array, Object] @@ -74,6 +78,7 @@ def coerce(value, state:) unless value.is_a?(Array) exactness[:no] += 1 + state[:error] = TypeError.new("#{value.class} can't be coerced into #{Array}") return value end diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index d8bcec9d..584a6ef6 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -60,7 +60,7 @@ def fields [Hanzoai::Internal::Type::Converter.type_info(type_info), type_info] end - setter = "#{name_sym}=" + setter = :"#{name_sym}=" api_name = info.fetch(:api_name, name_sym) nilable = info.fetch(:nil?, false) const = if required && !nilable @@ -84,30 +84,61 @@ def fields type_fn: type_fn } - define_method(setter) { @data.store(name_sym, _1) } + define_method(setter) do |value| + target = type_fn.call + state = Hanzoai::Internal::Type::Converter.new_coerce_state(translate_names: false) + coerced = Hanzoai::Internal::Type::Converter.coerce(target, value, state: state) + status = @coerced.store(name_sym, state.fetch(:error) || true) + stored = + case [target, status] + in [Hanzoai::Internal::Type::Converter | Symbol, true] + coerced + else + value + end + @data.store(name_sym, stored) + end + # rubocop:disable Style/CaseEquality + # rubocop:disable Metrics/BlockLength define_method(name_sym) do target = type_fn.call - value = @data.fetch(name_sym) { const == Hanzoai::Internal::OMIT ? nil : const } - state = {strictness: :strong, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} - if (nilable || !required) && value.nil? - nil - else - Hanzoai::Internal::Type::Converter.coerce( - target, - value, - state: state + + case @coerced[name_sym] + in true | false if Hanzoai::Internal::Type::Converter === target + @data.fetch(name_sym) + in ::StandardError => e + raise Hanzoai::Errors::ConversionError.new( + on: self.class, + method: __method__, + target: target, + value: @data.fetch(name_sym), + cause: e ) + else + Kernel.then do + value = @data.fetch(name_sym) { const == Hanzoai::Internal::OMIT ? nil : const } + state = Hanzoai::Internal::Type::Converter.new_coerce_state(translate_names: false) + if (nilable || !required) && value.nil? + nil + else + Hanzoai::Internal::Type::Converter.coerce( + target, value, state: state + ) + end + rescue StandardError => e + raise Hanzoai::Errors::ConversionError.new( + on: self.class, + method: __method__, + target: target, + value: value, + cause: e + ) + end end - rescue StandardError => e - cls = self.class.name.split("::").last - message = [ - "Failed to parse #{cls}.#{__method__} from #{value.class} to #{target.inspect}.", - "To get the unparsed API response, use #{cls}[#{__method__.inspect}].", - "Cause: #{e.message}" - ].join(" ") - raise Hanzoai::Errors::ConversionError.new(message) end + # rubocop:enable Metrics/BlockLength + # rubocop:enable Style/CaseEquality end # @api private @@ -207,23 +238,28 @@ class << self # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [self, Object] def coerce(value, state:) exactness = state.fetch(:exactness) - if value.is_a?(self.class) + if value.is_a?(self) exactness[:yes] += 1 return value end unless (val = Hanzoai::Internal::Util.coerce_hash(value)).is_a?(Hash) exactness[:no] += 1 + state[:error] = TypeError.new("#{value.class} can't be coerced into #{Hash}") return value end exactness[:yes] += 1 @@ -231,13 +267,15 @@ def coerce(value, state:) keys = val.keys.to_set instance = new data = instance.to_h + status = instance.instance_variable_get(:@coerced) # rubocop:disable Metrics/BlockLength fields.each do |name, field| mode, required, target = field.fetch_values(:mode, :required, :type) api_name, nilable, const = field.fetch_values(:api_name, :nilable, :const) + src_name = state.fetch(:translate_names) ? api_name : name - unless val.key?(api_name) + unless val.key?(src_name) if required && mode != :dump && const == Hanzoai::Internal::OMIT exactness[nilable ? :maybe : :no] += 1 else @@ -246,9 +284,10 @@ def coerce(value, state:) next end - item = val.fetch(api_name) - keys.delete(api_name) + item = val.fetch(src_name) + keys.delete(src_name) + state[:error] = nil converted = if item.nil? && (nilable || !required) exactness[nilable ? :yes : :maybe] += 1 @@ -262,6 +301,8 @@ def coerce(value, state:) item end end + + status.store(name, state.fetch(:error) || true) data.store(name, converted) end # rubocop:enable Metrics/BlockLength @@ -437,7 +478,18 @@ def to_yaml(*a) = Hanzoai::Internal::Type::Converter.dump(self.class, self).to_y # Create a new instance of a model. # # @param data [Hash{Symbol=>Object}, self] - def initialize(data = {}) = (@data = Hanzoai::Internal::Util.coerce_hash!(data).to_h) + def initialize(data = {}) + @data = {} + @coerced = {} + Hanzoai::Internal::Util.coerce_hash!(data).each do + if self.class.known_fields.key?(_1) + public_send(:"#{_1}=", _2) + else + @data.store(_1, _2) + @coerced.store(_1, false) + end + end + end class << self # @api private diff --git a/lib/hanzoai/internal/type/boolean.rb b/lib/hanzoai/internal/type/boolean.rb index 07fceda0..c18c83c4 100644 --- a/lib/hanzoai/internal/type/boolean.rb +++ b/lib/hanzoai/internal/type/boolean.rb @@ -31,14 +31,20 @@ def self.==(other) = other.is_a?(Class) && other <= Hanzoai::Internal::Type::Boo class << self # @api private # + # Coerce value to Boolean if possible, otherwise return the original value. + # # @param value [Boolean, Object] # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Boolean, Object] diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index 87cc0a40..6a5750c6 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -15,10 +15,14 @@ module Converter # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Object] @@ -94,6 +98,21 @@ def type_info(spec) end end + # @api private + # + # @param translate_names [Boolean] + # + # @return [Hash{Symbol=>Object}] + def new_coerce_state(translate_names: true) + { + translate_names: translate_names, + strictness: true, + exactness: {yes: 0, no: 0, maybe: 0}, + error: nil, + branched: 0 + } + end + # @api private # # Based on `target`, transform `value` into `target`, to the extent possible: @@ -110,14 +129,11 @@ def type_info(spec) # # @param value [Object] # - # @param state [Hash{Symbol=>Object}] The `strictness` is one of `true`, `false`, or `:strong`. This informs the - # coercion strategy when we have to decide between multiple possible conversion - # targets: + # @param state [Hash{Symbol=>Object}] The `strictness` is one of `true`, `false`. This informs the coercion strategy + # when we have to decide between multiple possible conversion targets: # # - `true`: the conversion must be exact, with minimum coercion. # - `false`: the conversion can be approximate, with some coercion. - # - `:strong`: the conversion must be exact, with no coercion, and raise an error - # if not possible. # # The `exactness` is `Hash` with keys being one of `yes`, `no`, or `maybe`. For # any given conversion attempt, the exactness will be updated based on how closely @@ -130,21 +146,20 @@ def type_info(spec) # # See implementation below for more details. # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Object] - def coerce( - target, - value, - state: {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} - ) - # rubocop:disable Lint/SuppressedException + def coerce(target, value, state: Hanzoai::Internal::Type::Converter.new_coerce_state) # rubocop:disable Metrics/BlockNesting - strictness, exactness = state.fetch_values(:strictness, :exactness) + exactness = state.fetch(:exactness) case target in Hanzoai::Internal::Type::Converter @@ -160,29 +175,26 @@ def coerce( exactness[value.nil? ? :yes : :maybe] += 1 return nil in -> { _1 <= Integer } - if value.is_a?(Integer) + case value + in Integer exactness[:yes] += 1 return value - elsif strictness == :strong && Integer(value, exception: false) != value - message = "no implicit conversion of #{value.class} into #{target.inspect}" - raise value.is_a?(Numeric) ? ArgumentError.new(message) : TypeError.new(message) else Kernel.then do return Integer(value).tap { exactness[:maybe] += 1 } - rescue ArgumentError, TypeError + rescue ArgumentError, TypeError => e + state[:error] = e end end in -> { _1 <= Float } if value.is_a?(Numeric) exactness[:yes] += 1 return Float(value) - elsif strictness == :strong - message = "no implicit conversion of #{value.class} into #{target.inspect}" - raise TypeError.new(message) else Kernel.then do return Float(value).tap { exactness[:maybe] += 1 } - rescue ArgumentError, TypeError + rescue ArgumentError, TypeError => e + state[:error] = e end end in -> { _1 <= String } @@ -194,16 +206,13 @@ def coerce( exactness[:yes] += 1 return value.string else - if strictness == :strong - message = "no implicit conversion of #{value.class} into #{target.inspect}" - raise TypeError.new(message) - end + state[:error] = TypeError.new("#{value.class} can't be coerced into #{String}") end in -> { _1 <= Date || _1 <= Time } Kernel.then do return target.parse(value).tap { exactness[:yes] += 1 } rescue ArgumentError, TypeError => e - raise e if strictness == :strong + state[:error] = e end in -> { _1 <= StringIO } if value.is_a?(String) exactness[:yes] += 1 @@ -221,10 +230,8 @@ def coerce( return value end else - if strictness == :strong - message = "cannot convert non-matching #{value.class} into #{target.inspect}" - raise ArgumentError.new(message) - end + message = "cannot convert non-matching #{value.class} into #{target.inspect}" + state[:error] = ArgumentError.new(message) end else end @@ -232,7 +239,6 @@ def coerce( exactness[:no] += 1 value # rubocop:enable Metrics/BlockNesting - # rubocop:enable Lint/SuppressedException end # @api private @@ -277,8 +283,10 @@ def inspect(target, depth:) define_sorbet_constant!(:CoerceState) do T.type_alias do { - strictness: T.any(T::Boolean, Symbol), + translate_names: T::Boolean, + strictness: T::Boolean, exactness: {yes: Integer, no: Integer, maybe: Integer}, + error: T::Class[StandardError], branched: Integer } end diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index d85b83f4..a81422a9 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -56,10 +56,14 @@ def hash = values.to_set.hash # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Symbol, Object] @@ -70,8 +74,12 @@ def coerce(value, state:) if values.include?(val) exactness[:yes] += 1 val + elsif values.first&.class == val.class + exactness[:maybe] += 1 + value else - exactness[values.first&.class == val.class ? :maybe : :no] += 1 + exactness[:no] += 1 + state[:error] = TypeError.new("#{value.class} can't be coerced into #{self}") value end end diff --git a/lib/hanzoai/internal/type/file_input.rb b/lib/hanzoai/internal/type/file_input.rb index 1cf873a6..f65de1b8 100644 --- a/lib/hanzoai/internal/type/file_input.rb +++ b/lib/hanzoai/internal/type/file_input.rb @@ -45,10 +45,14 @@ class << self # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [StringIO, Object] @@ -62,6 +66,7 @@ def coerce(value, state:) exactness[:yes] += 1 value else + state[:error] = TypeError.new("#{value.class} can't be coerced into #{StringIO}") exactness[:no] += 1 value end diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index 26658f4e..bfd71971 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -77,10 +77,14 @@ def hash = [self.class, item_type].hash # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Hash{Symbol=>Object}, Object] @@ -89,6 +93,7 @@ def coerce(value, state:) unless value.is_a?(Hash) exactness[:no] += 1 + state[:error] = TypeError.new("#{value.class} can't be coerced into #{Hash}") return value end diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 29ed7851..948d1a1d 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -115,14 +115,23 @@ def hash = variants.hash # @api private # + # Tries to efficiently coerce the given value to one of the known variants. + # + # If the value cannot match any of the known variants, the coercion is considered + # non-viable and returns the original value. + # # @param value [Object] # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Object] @@ -133,7 +142,6 @@ def coerce(value, state:) strictness = state.fetch(:strictness) exactness = state.fetch(:exactness) - state[:strictness] = strictness == :strong ? true : strictness alternatives = [] known_variants.each do |_, variant_fn| @@ -152,13 +160,10 @@ def coerce(value, state:) end end - case alternatives.sort_by(&:first) + case alternatives.sort_by!(&:first) in [] exactness[:no] += 1 - if strictness == :strong - message = "no possible conversion of #{value.class} into a variant of #{target.inspect}" - raise ArgumentError.new(message) - end + state[:error] = ArgumentError.new("no matching variant for #{value.inspect}") value in [[_, exact, coerced], *] exact.each { exactness[_1] += _2 } diff --git a/lib/hanzoai/internal/type/unknown.rb b/lib/hanzoai/internal/type/unknown.rb index a245c940..bfc2c357 100644 --- a/lib/hanzoai/internal/type/unknown.rb +++ b/lib/hanzoai/internal/type/unknown.rb @@ -33,14 +33,20 @@ def self.==(other) = other.is_a?(Class) && other <= Hanzoai::Internal::Type::Unk class << self # @api private # + # No coercion needed for Unknown type. + # # @param value [Object] # # @param state [Hash{Symbol=>Object}] . # - # @option state [Boolean, :strong] :strictness + # @option state [Boolean] :translate_names + # + # @option state [Boolean] :strictness # # @option state [Hash{Symbol=>Object}] :exactness # + # @option state [Class] :error + # # @option state [Integer] :branched # # @return [Object] diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index ed39c83d..fcd0e2ca 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -497,7 +497,7 @@ class << self # @param closing [Array] # @param content_type [String, nil] private def write_multipart_content(y, val:, closing:, content_type: nil) - content_type ||= "application/octet-stream" + content_line = "Content-Type: %s\r\n\r\n" case val in Hanzoai::FilePart @@ -508,24 +508,21 @@ class << self content_type: val.content_type ) in Pathname - y << "Content-Type: #{content_type}\r\n\r\n" + y << format(content_line, content_type || "application/octet-stream") io = val.open(binmode: true) closing << io.method(:close) IO.copy_stream(io, y) in IO - y << "Content-Type: #{content_type}\r\n\r\n" + y << format(content_line, content_type || "application/octet-stream") IO.copy_stream(val, y) in StringIO - y << "Content-Type: #{content_type}\r\n\r\n" + y << format(content_line, content_type || "application/octet-stream") y << val.string - in String - y << "Content-Type: #{content_type}\r\n\r\n" - y << val.to_s in -> { primitive?(_1) } - y << "Content-Type: text/plain\r\n\r\n" + y << format(content_line, content_type || "text/plain") y << val.to_s else - y << "Content-Type: application/json\r\n\r\n" + y << format(content_line, content_type || "application/json") y << JSON.generate(val) end y << "\r\n" @@ -563,6 +560,8 @@ class << self # @api private # + # https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.1.md#special-considerations-for-multipart-content + # # @param body [Object] # # @return [Array(String, Enumerable)] diff --git a/rbi/hanzoai/client.rbi b/rbi/hanzoai/client.rbi index d02b76fb..0ec049c6 100644 --- a/rbi/hanzoai/client.rbi +++ b/rbi/hanzoai/client.rbi @@ -185,7 +185,7 @@ module Hanzoai sig do params( api_key: T.nilable(String), - environment: NilClass, + environment: T.nilable(T.any(Symbol, String)), base_url: T.nilable(String), max_retries: Integer, timeout: Float, diff --git a/rbi/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi index 23d28fb0..0eeafefb 100644 --- a/rbi/hanzoai/errors.rbi +++ b/rbi/hanzoai/errors.rbi @@ -8,6 +8,22 @@ module Hanzoai end class ConversionError < Hanzoai::Errors::Error + sig { returns(T.nilable(StandardError)) } + def cause + end + + # @api private + sig do + params( + on: T::Class[StandardError], + method: Symbol, + target: T.anything, + value: T.anything, + cause: T.nilable(StandardError) + ).returns(T.attached_class) + end + def self.new(on:, method:, target:, value:, cause: nil) + end end class APIError < Hanzoai::Errors::Error diff --git a/rbi/hanzoai/internal/type/boolean.rbi b/rbi/hanzoai/internal/type/boolean.rbi index 639fc87b..515a312d 100644 --- a/rbi/hanzoai/internal/type/boolean.rbi +++ b/rbi/hanzoai/internal/type/boolean.rbi @@ -22,6 +22,8 @@ module Hanzoai class << self # @api private + # + # Coerce value to Boolean if possible, otherwise return the original value. sig do override .params( diff --git a/rbi/hanzoai/internal/type/converter.rbi b/rbi/hanzoai/internal/type/converter.rbi index 2b7149f2..c300f644 100644 --- a/rbi/hanzoai/internal/type/converter.rbi +++ b/rbi/hanzoai/internal/type/converter.rbi @@ -15,12 +15,14 @@ module Hanzoai CoerceState = T.type_alias do { - strictness: T.any(T::Boolean, Symbol), + translate_names: T::Boolean, + strictness: T::Boolean, exactness: { yes: Integer, no: Integer, maybe: Integer }, + error: T::Class[StandardError], branched: Integer } end @@ -88,6 +90,15 @@ module Hanzoai def self.type_info(spec) end + # @api private + sig do + params(translate_names: T::Boolean).returns( + Hanzoai::Internal::Type::Converter::CoerceState + ) + end + def self.new_coerce_state(translate_names: true) + end + # @api private # # Based on `target`, transform `value` into `target`, to the extent possible: @@ -109,14 +120,11 @@ module Hanzoai def self.coerce( target, value, - # The `strictness` is one of `true`, `false`, or `:strong`. This informs the - # coercion strategy when we have to decide between multiple possible conversion - # targets: + # The `strictness` is one of `true`, `false`. This informs the coercion strategy + # when we have to decide between multiple possible conversion targets: # # - `true`: the conversion must be exact, with minimum coercion. # - `false`: the conversion can be approximate, with some coercion. - # - `:strong`: the conversion must be exact, with no coercion, and raise an error - # if not possible. # # The `exactness` is `Hash` with keys being one of `yes`, `no`, or `maybe`. For # any given conversion attempt, the exactness will be updated based on how closely @@ -128,15 +136,7 @@ module Hanzoai # - `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 - } + state: Hanzoai::Internal::Type::Converter.new_coerce_state ) end diff --git a/rbi/hanzoai/internal/type/union.rbi b/rbi/hanzoai/internal/type/union.rbi index e89962ba..d02bc0d9 100644 --- a/rbi/hanzoai/internal/type/union.rbi +++ b/rbi/hanzoai/internal/type/union.rbi @@ -78,6 +78,11 @@ module Hanzoai end # @api private + # + # Tries to efficiently coerce the given value to one of the known variants. + # + # If the value cannot match any of the known variants, the coercion is considered + # non-viable and returns the original value. sig do override .params( diff --git a/rbi/hanzoai/internal/type/unknown.rbi b/rbi/hanzoai/internal/type/unknown.rbi index ed2c0d0a..e319544c 100644 --- a/rbi/hanzoai/internal/type/unknown.rbi +++ b/rbi/hanzoai/internal/type/unknown.rbi @@ -22,6 +22,8 @@ module Hanzoai class << self # @api private + # + # No coercion needed for Unknown type. sig do override .params( diff --git a/rbi/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi index d549b1b3..fb532dd1 100644 --- a/rbi/hanzoai/internal/util.rbi +++ b/rbi/hanzoai/internal/util.rbi @@ -332,6 +332,8 @@ module Hanzoai end # @api private + # + # https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.1.md#special-considerations-for-multipart-content sig do params(body: T.anything).returns([String, T::Enumerable[String]]) end diff --git a/sig/hanzoai/errors.rbs b/sig/hanzoai/errors.rbs index 4c149b00..04b2c02f 100644 --- a/sig/hanzoai/errors.rbs +++ b/sig/hanzoai/errors.rbs @@ -5,6 +5,15 @@ module Hanzoai end class ConversionError < Hanzoai::Errors::Error + def cause: -> StandardError? + + def initialize: ( + on: Class, + method: Symbol, + target: top, + value: top, + ?cause: StandardError? + ) -> void end class APIError < Hanzoai::Errors::Error diff --git a/sig/hanzoai/internal/type/converter.rbs b/sig/hanzoai/internal/type/converter.rbs index 034007b2..b26cb9ff 100644 --- a/sig/hanzoai/internal/type/converter.rbs +++ b/sig/hanzoai/internal/type/converter.rbs @@ -8,8 +8,10 @@ module Hanzoai type coerce_state = { - strictness: bool | :strong, + translate_names: bool, + strictness: bool, exactness: { yes: Integer, no: Integer, maybe: Integer }, + error: Class, branched: Integer } @@ -37,6 +39,10 @@ module Hanzoai | Hanzoai::Internal::Type::Converter::input spec ) -> (^-> top) + def self.new_coerce_state: ( + ?translate_names: bool + ) -> Hanzoai::Internal::Type::Converter::coerce_state + def self.coerce: ( Hanzoai::Internal::Type::Converter::input target, top value, diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 6d3193c9..9497f7c3 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -66,7 +66,7 @@ def test_coerce cases.each do |lhs, rhs| target, input = lhs exactness, expect = rhs - state = {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} + state = Hanzoai::Internal::Type::Converter.new_coerce_state assert_pattern do Hanzoai::Internal::Type::Converter.coerce(target, input, state: state) => ^expect state.fetch(:exactness).filter { _2.nonzero? }.to_h => ^exactness @@ -108,18 +108,19 @@ def test_dump def test_coerce_errors cases = { - [Integer, "one"] => TypeError, - [Float, "one"] => TypeError, + [Integer, "one"] => ArgumentError, + [Float, "one"] => ArgumentError, [String, Time] => TypeError, [Date, "one"] => ArgumentError, [Time, "one"] => ArgumentError } - cases.each do - target, input = _1 - state = {strictness: :strong, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} - assert_raises(_2) do - Hanzoai::Internal::Type::Converter.coerce(target, input, state: state) + cases.each do |testcase, expect| + target, input = testcase + state = Hanzoai::Internal::Type::Converter.new_coerce_state + Hanzoai::Internal::Type::Converter.coerce(target, input, state: state) + assert_pattern do + state => {error: ^expect} end end end @@ -217,7 +218,7 @@ def test_coerce cases.each do |lhs, rhs| target, input = lhs exactness, expect = rhs - state = {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} + state = Hanzoai::Internal::Type::Converter.new_coerce_state assert_pattern do Hanzoai::Internal::Type::Converter.coerce(target, input, state: state) => ^expect state.fetch(:exactness).filter { _2.nonzero? }.to_h => ^exactness @@ -291,7 +292,7 @@ def test_coerce cases.each do |lhs, rhs| target, input = lhs exactness, expect = rhs - state = {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} + state = Hanzoai::Internal::Type::Converter.new_coerce_state assert_pattern do Hanzoai::Internal::Type::Converter.coerce(target, input, state: state) => ^expect state.fetch(:exactness).filter { _2.nonzero? }.to_h => ^exactness @@ -340,6 +341,7 @@ class M5 < Hanzoai::Internal::Type::BaseModel class M6 < M1 required :a, Hanzoai::Internal::Type::ArrayOf[M6] + optional :b, M6 end def test_coerce @@ -365,13 +367,14 @@ def test_coerce [M5, {d: "d"}] => [{yes: 3}, {d: :d}], [M5, {d: nil}] => [{yes: 2, no: 1}, {d: nil}], - [M6, {a: [{a: []}]}] => [{yes: 4}, -> { _1 in {a: [M6]} }] + [M6, {a: [{a: []}]}] => [{yes: 6}, -> { _1 in {a: [M6]} }], + [M6, {b: {a: []}}] => [{yes: 4, no: 1}, -> { _1 in {b: M6} }] } cases.each do |lhs, rhs| target, input = lhs exactness, expect = rhs - state = {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} + state = Hanzoai::Internal::Type::Converter.new_coerce_state assert_pattern do coerced = Hanzoai::Internal::Type::Converter.coerce(target, input, state: state) assert_equal(coerced, coerced) @@ -410,20 +413,26 @@ def test_dump def test_accessors cases = { - M2.new({a: "1990-09-19", b: "1"}) => {a: Time.new(1990, 9, 19), b: TypeError}, - M2.new(a: "one", b: "one") => {a: ArgumentError, b: TypeError}, - M2.new(a: nil, b: 2.0) => {a: TypeError}, - M2.new(a: nil, b: 2.2) => {a: TypeError, b: ArgumentError}, + M2.new({a: "1990-09-19", b: "1"}) => [{a: "1990-09-19", b: "1"}, {a: Time.new(1990, 9, 19), b: 1}], + M2.new(a: "one", b: "one") => [{a: "one", b: "one"}, {a: ArgumentError, b: ArgumentError}], + M2.new(a: nil, b: 2.0) => [{a: nil, b: 2.0}, {a: TypeError}], + M2.new(a: nil, b: 2.2) => [{a: nil, b: 2.2}, {a: TypeError, b: 2}], - M3.new => {d: :d}, - M3.new(d: 1) => {d: ArgumentError}, + M3.new => [{}, {d: :d}], + M3.new(d: 1) => [{d: 1}, {d: ArgumentError}], - M5.new => {c: :c, d: :d} + M5.new => [{}, {c: :c, d: :d}] } cases.each do target = _1 - _2.each do |accessor, expect| + data, attributes = _2 + + assert_pattern do + target.to_h => ^data + end + + attributes.each do |accessor, expect| case expect in Class if expect <= StandardError tap do @@ -438,6 +447,24 @@ def test_accessors end end end + + def test_inplace_modification + m1 = M6.new(a: []) + m1.a << M6.new(a: []) + + m2 = M6.new(b: M6.new(a: [])) + m2.b.a << M6.new(a: []) + + m3 = M6.new(a: []) + m4 = M6.new(b: m3) + m3.a << M6.new(a: []) + + assert_pattern do + m1 => {a: [{a: []}]} + m2 => {b: {a: [{a: []}]}} + m4 => {b: {a: [{a: []}]}} + end + end end class Hanzoai::Test::UnionTest < Minitest::Test @@ -555,7 +582,7 @@ def test_coerce cases.each do |lhs, rhs| target, input = lhs exactness, branched, expect = rhs - state = {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} + state = Hanzoai::Internal::Type::Converter.new_coerce_state assert_pattern do coerced = Hanzoai::Internal::Type::Converter.coerce(target, input, state: state) assert_equal(coerced, coerced) From b07254b62e65b67865a87fae166ced12563095af Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 6 Sep 2025 13:32:11 +0000 Subject: [PATCH 090/139] chore: configure new SDK language --- .rubocop.yml | 5 +- .stats.yml | 2 +- CONTRIBUTING.md | 2 +- Gemfile.lock | 88 +++++++++++-------- lib/hanzoai/internal/transport/base_client.rb | 2 +- .../transport/pooled_net_requester.rb | 10 +-- lib/hanzoai/internal/type/array_of.rb | 1 + lib/hanzoai/internal/type/base_model.rb | 13 +-- lib/hanzoai/internal/type/converter.rb | 27 ++++++ lib/hanzoai/internal/type/hash_of.rb | 1 + lib/hanzoai/internal/type/union.rb | 16 ++-- lib/hanzoai/internal/util.rb | 2 +- .../config/pass_through_endpoint_response.rb | 5 +- rbi/hanzoai/errors.rbi | 4 +- .../internal/transport/base_client.rbi | 2 +- rbi/hanzoai/internal/type/converter.rbi | 54 ++++++++++++ rbi/hanzoai/internal/type/union.rbi | 11 ++- scripts/mock | 4 +- scripts/test | 2 +- .../internal/transport/base_client.rbs | 2 +- sig/hanzoai/internal/type/converter.rbs | 17 ++++ sig/hanzoai/internal/type/union.rbs | 4 +- .../internal/sorbet_runtime_support_test.rb | 2 + test/hanzoai/internal/type/base_model_test.rb | 38 ++++++++ test/hanzoai/internal/util_test.rb | 12 +-- test/hanzoai/resources/active_test.rb | 2 +- test/hanzoai/resources/add_test.rb | 2 +- test/hanzoai/resources/anthropic_test.rb | 10 +-- test/hanzoai/resources/assemblyai_test.rb | 10 +-- test/hanzoai/resources/assistants_test.rb | 6 +- test/hanzoai/resources/audio/speech_test.rb | 2 +- .../resources/audio/transcriptions_test.rb | 2 +- test/hanzoai/resources/azure_test.rb | 10 +-- test/hanzoai/resources/batches/cancel_test.rb | 2 +- test/hanzoai/resources/batches_test.rb | 14 +-- test/hanzoai/resources/bedrock_test.rb | 10 +-- test/hanzoai/resources/budget_test.rb | 12 +-- test/hanzoai/resources/cache/redis_test.rb | 2 +- test/hanzoai/resources/cache_test.rb | 6 +- .../resources/chat/completions_test.rb | 2 +- test/hanzoai/resources/cohere_test.rb | 10 +-- test/hanzoai/resources/completions_test.rb | 2 +- .../config/pass_through_endpoint_test.rb | 8 +- test/hanzoai/resources/credentials_test.rb | 6 +- test/hanzoai/resources/customer_test.rb | 14 +-- test/hanzoai/resources/delete_test.rb | 2 +- test/hanzoai/resources/embeddings_test.rb | 2 +- test/hanzoai/resources/engines/chat_test.rb | 2 +- test/hanzoai/resources/engines_test.rb | 4 +- test/hanzoai/resources/eu_assemblyai_test.rb | 10 +-- test/hanzoai/resources/files/content_test.rb | 2 +- test/hanzoai/resources/files_test.rb | 8 +- .../resources/fine_tuning/jobs/cancel_test.rb | 2 +- .../resources/fine_tuning/jobs_test.rb | 6 +- test/hanzoai/resources/gemini_test.rb | 10 +-- test/hanzoai/resources/global/spend_test.rb | 6 +- test/hanzoai/resources/guardrails_test.rb | 2 +- test/hanzoai/resources/health_test.rb | 10 +-- .../resources/images/generations_test.rb | 2 +- test/hanzoai/resources/key_test.rb | 18 ++-- test/hanzoai/resources/langfuse_test.rb | 10 +-- test/hanzoai/resources/model/info_test.rb | 2 +- test/hanzoai/resources/model/update_test.rb | 4 +- test/hanzoai/resources/model_group_test.rb | 2 +- test/hanzoai/resources/model_test.rb | 4 +- test/hanzoai/resources/models_test.rb | 2 +- test/hanzoai/resources/moderations_test.rb | 2 +- .../resources/openai/deployments/chat_test.rb | 2 +- .../resources/openai/deployments_test.rb | 4 +- test/hanzoai/resources/openai_test.rb | 10 +-- .../resources/organization/info_test.rb | 4 +- test/hanzoai/resources/organization_test.rb | 14 +-- test/hanzoai/resources/provider_test.rb | 2 +- test/hanzoai/resources/rerank_test.rb | 6 +- .../resources/responses/input_items_test.rb | 2 +- test/hanzoai/resources/responses_test.rb | 6 +- test/hanzoai/resources/routes_test.rb | 2 +- test/hanzoai/resources/settings_test.rb | 2 +- test/hanzoai/resources/spend_test.rb | 6 +- test/hanzoai/resources/team/callback_test.rb | 4 +- test/hanzoai/resources/team/model_test.rb | 4 +- test/hanzoai/resources/team_test.rb | 24 ++--- test/hanzoai/resources/test_test.rb | 2 +- .../resources/threads/messages_test.rb | 4 +- test/hanzoai/resources/threads/runs_test.rb | 2 +- test/hanzoai/resources/threads_test.rb | 4 +- test/hanzoai/resources/user_test.rb | 10 +-- test/hanzoai/resources/utils_test.rb | 6 +- test/hanzoai/resources/vertex_ai_test.rb | 10 +-- 89 files changed, 422 insertions(+), 278 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 2bb8d354..d23b4346 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,3 +1,4 @@ +# yaml-language-server: $schema=https://www.rubyschema.org/rubocop.json --- # Explicitly disable pending cops for now. This is the default behaviour but # this avoids a large warning every time we run it. @@ -8,7 +9,7 @@ AllCops: - "bin/*" NewCops: enable SuggestExtensions: false - TargetRubyVersion: 3.2.0 + TargetRubyVersion: 3.2 # Whether MFA is required or not should be left to the token configuration. Gemspec/RequireMFA: @@ -149,7 +150,7 @@ Naming/ClassAndModuleCamelCase: Naming/MethodParameterName: Enabled: false -Naming/PredicateName: +Naming/PredicatePrefix: Exclude: - "**/*.rbi" diff --git a/.stats.yml b/.stats.yml index affe3eef..7c3c5481 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 188 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-2d6e1036fb1eea7e95cafc281141ead9ef77796e43711b17edccaab67c5e791a.yml openapi_spec_hash: 12501774d0127be4ec1812d613a58e97 -config_hash: 830747463ff4d018b5633ce511e88558 +config_hash: 5b61cc8c6c31c071a08578ad825b421d diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e0bb7c0c..8c65bdc0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -78,7 +78,7 @@ $ bundle exec rake test ## Linting and formatting -This repository uses [rubocop](https://github.com/rubocop/rubocop) for linting and formatting of `*.rb` and `*.rbi` files. [syntax_tree](https://github.com/ruby-syntax-tree/syntax_tree) is used for formatting `*.rbs` files. +This repository uses [rubocop](https://github.com/rubocop/rubocop) for linting and formatting of `*.rb` files; And [syntax_tree](https://github.com/ruby-syntax-tree/syntax_tree) is used for formatting of both `*.rbi` and `*.rbs` files. There are two separate type checkers supported by this library: [sorbet](https://github.com/sorbet/sorbet) and [steep](https://github.com/soutaro/steep) are used for verifying `*.rbi` and `*.rbs` files respectively. diff --git a/Gemfile.lock b/Gemfile.lock index 1b5ec86a..8b7aa7ba 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -17,7 +17,7 @@ PATH GEM remote: https://rubygems.org/ specs: - activesupport (8.0.2) + activesupport (8.0.2.1) base64 benchmark (>= 0.3) bigdecimal @@ -33,45 +33,50 @@ GEM addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) ast (2.4.3) - async (2.24.0) + async (2.27.3) console (~> 1.29) fiber-annotation - io-event (~> 1.9) + io-event (~> 1.11) metrics (~> 0.12) traces (~> 0.15) - base64 (0.2.0) - benchmark (0.4.0) - bigdecimal (3.1.9) + base64 (0.3.0) + benchmark (0.4.1) + bigdecimal (3.2.2) concurrent-ruby (1.3.5) connection_pool (2.5.3) - console (1.30.2) + console (1.33.0) fiber-annotation fiber-local (~> 1.1) json crack (1.0.0) bigdecimal rexml - csv (3.3.4) - drb (2.2.1) + csv (3.3.5) + drb (2.2.3) erubi (1.13.1) + ffi (1.17.2-aarch64-linux-gnu) + ffi (1.17.2-aarch64-linux-musl) + ffi (1.17.2-arm64-darwin) + ffi (1.17.2-x86_64-darwin) ffi (1.17.2-x86_64-linux-gnu) + ffi (1.17.2-x86_64-linux-musl) 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) + hashdiff (1.2.0) i18n (1.14.7) concurrent-ruby (~> 1.0) - io-event (1.10.0) - json (2.11.3) - language_server-protocol (3.17.0.4) + io-event (1.11.2) + json (2.13.2) + language_server-protocol (3.17.0.5) 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) + metrics (0.13.0) minitest (5.25.5) minitest-focus (1.4.0) minitest (>= 4, < 6) @@ -84,7 +89,7 @@ GEM mutex_m (0.3.0) netrc (0.11.0) parallel (1.27.0) - parser (3.3.8.0) + parser (3.3.9.0) ast (~> 2.4.1) racc prettier_print (1.2.1) @@ -92,20 +97,19 @@ GEM public_suffix (6.0.2) racc (1.8.1) rainbow (3.1.1) - rake (13.2.1) + rake (13.3.0) rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rbi (0.3.2) + rbi (0.3.6) prism (~> 1.0) rbs (>= 3.4.4) - sorbet-runtime (>= 0.5.9204) - rbs (3.9.2) + rbs (3.9.4) logger redcarpet (3.6.1) - regexp_parser (2.10.0) + regexp_parser (2.11.2) rexml (3.4.1) - rubocop (1.75.5) + rubocop (1.79.2) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -113,25 +117,28 @@ GEM 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) + rubocop-ast (>= 1.46.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.44.1) + rubocop-ast (1.46.0) 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) + sorbet (0.5.12424) + sorbet-static (= 0.5.12424) + sorbet-runtime (0.5.12424) + sorbet-static (0.5.12424-aarch64-linux) + sorbet-static (0.5.12424-universal-darwin) + sorbet-static (0.5.12424-x86_64-linux) + sorbet-static-and-runtime (0.5.12424) + sorbet (= 0.5.12424) + sorbet-runtime (= 0.5.12424) + spoom (1.6.3) erubi (>= 1.10.0) prism (>= 0.28.0) - rbi (>= 0.2.3) + rbi (>= 0.3.3) + rexml (>= 3.2.6) sorbet-static-and-runtime (>= 0.5.10187) thor (>= 0.19.2) steep (1.10.0) @@ -152,7 +159,7 @@ GEM terminal-table (>= 2, < 5) uri (>= 0.12.0) strscan (3.1.5) - syntax_tree (6.2.0) + syntax_tree (6.3.0) prettier_print (>= 1.2.0) tapioca (0.16.11) benchmark @@ -166,11 +173,11 @@ GEM yard-sorbet terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) - thor (1.3.2) - traces (0.15.2) + thor (1.4.0) + traces (0.17.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (3.1.4) + unicode-display_width (3.1.5) unicode-emoji (~> 4.0, >= 4.0.4) unicode-emoji (4.0.4) uri (1.0.3) @@ -185,7 +192,14 @@ GEM yard PLATFORMS - x86_64-linux + aarch64-linux + aarch64-linux-gnu + aarch64-linux-musl + arm64-darwin + universal-darwin + x86_64-darwin + x86_64-linux-gnu + x86_64-linux-musl DEPENDENCIES async diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index e45ada41..71a1aa9b 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -365,7 +365,7 @@ def initialize( # # @raise [Hanzoai::Errors::APIError] # @return [Array(Integer, Net::HTTPResponse, Enumerable)] - private def send_request(request, redirect_count:, retry_count:, send_retry_header:) + def send_request(request, redirect_count:, retry_count:, send_retry_header:) url, headers, max_retries, timeout = request.fetch_values(:url, :headers, :max_retries, :timeout) input = {**request.except(:timeout), deadline: Hanzoai::Internal::Util.monotonic_secs + timeout} diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index be08d0db..3c0e4493 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -193,15 +193,7 @@ def initialize(size: self.class::DEFAULT_MAX_CONNECTIONS) 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 + T.type_alias { {method: Symbol, url: URI::Generic, headers: T::Hash[String, String], body: T.anything, deadline: Float} } end end end diff --git a/lib/hanzoai/internal/type/array_of.rb b/lib/hanzoai/internal/type/array_of.rb index 22bdb879..94606c0f 100644 --- a/lib/hanzoai/internal/type/array_of.rb +++ b/lib/hanzoai/internal/type/array_of.rb @@ -148,6 +148,7 @@ def to_sorbet_type # @option spec [Boolean] :"nil?" def initialize(type_info, spec = {}) @item_type_fn = Hanzoai::Internal::Type::Converter.type_info(type_info || spec) + @meta = Hanzoai::Internal::Type::Converter.meta_info(type_info, spec) @nilable = spec.fetch(:nil?, false) end diff --git a/lib/hanzoai/internal/type/base_model.rb b/lib/hanzoai/internal/type/base_model.rb index 584a6ef6..06e4181a 100644 --- a/lib/hanzoai/internal/type/base_model.rb +++ b/lib/hanzoai/internal/type/base_model.rb @@ -52,6 +52,7 @@ def fields # # @option spec [Boolean] :"nil?" private def add_field(name_sym, required:, type_info:, spec:) + meta = Hanzoai::Internal::Type::Converter.meta_info(type_info, spec) type_fn, info = case type_info in Proc | Hanzoai::Internal::Type::Converter | Class @@ -63,14 +64,7 @@ def fields setter = :"#{name_sym}=" api_name = info.fetch(:api_name, name_sym) nilable = info.fetch(:nil?, false) - const = if required && !nilable - info.fetch( - :const, - Hanzoai::Internal::OMIT - ) - else - Hanzoai::Internal::OMIT - end + const = required && !nilable ? info.fetch(:const, Hanzoai::Internal::OMIT) : Hanzoai::Internal::OMIT [name_sym, setter].each { undef_method(_1) } if known_fields.key?(name_sym) @@ -81,7 +75,8 @@ def fields required: required, nilable: nilable, const: const, - type_fn: type_fn + type_fn: type_fn, + meta: meta } define_method(setter) do |value| diff --git a/lib/hanzoai/internal/type/converter.rb b/lib/hanzoai/internal/type/converter.rb index 6a5750c6..826a9171 100644 --- a/lib/hanzoai/internal/type/converter.rb +++ b/lib/hanzoai/internal/type/converter.rb @@ -98,6 +98,33 @@ def type_info(spec) end end + # @api private + # + # @param type_info [Hash{Symbol=>Object}, Proc, Hanzoai::Internal::Type::Converter, Class] . + # + # @option type_info [NilClass, TrueClass, FalseClass, Integer, Float, Symbol] :const + # + # @option type_info [Proc] :enum + # + # @option type_info [Proc] :union + # + # @option type_info [Boolean] :"nil?" + # + # @param spec [Hash{Symbol=>Object}, Proc, Hanzoai::Internal::Type::Converter, Class] . + # + # @option spec [NilClass, TrueClass, FalseClass, Integer, Float, Symbol] :const + # + # @option spec [Proc] :enum + # + # @option spec [Proc] :union + # + # @option spec [Boolean] :"nil?" + # + # @return [Hash{Symbol=>Object}] + def meta_info(type_info, spec) + [spec, type_info].grep(Hash).first.to_h.except(:const, :enum, :union, :nil?) + end + # @api private # # @param translate_names [Boolean] diff --git a/lib/hanzoai/internal/type/hash_of.rb b/lib/hanzoai/internal/type/hash_of.rb index bfd71971..ef06360c 100644 --- a/lib/hanzoai/internal/type/hash_of.rb +++ b/lib/hanzoai/internal/type/hash_of.rb @@ -168,6 +168,7 @@ def to_sorbet_type # @option spec [Boolean] :"nil?" def initialize(type_info, spec = {}) @item_type_fn = Hanzoai::Internal::Type::Converter.type_info(type_info || spec) + @meta = Hanzoai::Internal::Type::Converter.meta_info(type_info, spec) @nilable = spec.fetch(:nil?, false) end diff --git a/lib/hanzoai/internal/type/union.rb b/lib/hanzoai/internal/type/union.rb index 948d1a1d..678c9768 100644 --- a/lib/hanzoai/internal/type/union.rb +++ b/lib/hanzoai/internal/type/union.rb @@ -12,20 +12,20 @@ module Union # # All of the specified variant info for this union. # - # @return [Array] + # @return [ArrayObject})>] private def known_variants = (@known_variants ||= []) # @api private # - # @return [Array] + # @return [ArrayObject})>] protected def derefed_variants - known_variants.map { |key, variant_fn| [key, variant_fn.call] } + known_variants.map { |key, variant_fn, meta| [key, variant_fn.call, meta] } end # All of the specified variants for this union. # # @return [Array] - def variants = derefed_variants.map(&:last) + def variants = derefed_variants.map { _2 } # @api private # @@ -51,12 +51,13 @@ def variants = derefed_variants.map(&:last) # # @option spec [Boolean] :"nil?" private def variant(key, spec = nil) + meta = Hanzoai::Internal::Type::Converter.meta_info(nil, spec) variant_info = case key in Symbol - [key, Hanzoai::Internal::Type::Converter.type_info(spec)] + [key, Hanzoai::Internal::Type::Converter.type_info(spec), meta] in Proc | Hanzoai::Internal::Type::Converter | Class | Hash - [nil, Hanzoai::Internal::Type::Converter.type_info(key)] + [nil, Hanzoai::Internal::Type::Converter.type_info(key), meta] end known_variants << variant_info @@ -79,7 +80,8 @@ def variants = derefed_variants.map(&:last) return nil if key == Hanzoai::Internal::OMIT key = key.to_sym if key.is_a?(String) - known_variants.find { |k,| k == key }&.last&.call + _, found = known_variants.find { |k,| k == key } + found&.call else nil end diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index fcd0e2ca..7aa4a70e 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -244,7 +244,7 @@ class << self # # @return [String] def uri_origin(uri) - "#{uri.scheme}://#{uri.host}#{uri.port == uri.default_port ? '' : ":#{uri.port}"}" + "#{uri.scheme}://#{uri.host}#{":#{uri.port}" unless uri.port == uri.default_port}" end # @api private diff --git a/lib/hanzoai/models/config/pass_through_endpoint_response.rb b/lib/hanzoai/models/config/pass_through_endpoint_response.rb index 7facd513..ea222b51 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_response.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_response.rb @@ -8,10 +8,7 @@ class PassThroughEndpointResponse < Hanzoai::Internal::Type::BaseModel # @!attribute endpoints # # @return [Array] - required :endpoints, - -> { - Hanzoai::Internal::Type::ArrayOf[Hanzoai::Config::PassThroughGenericEndpoint] - } + required :endpoints, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Config::PassThroughGenericEndpoint] } # @!method initialize(endpoints:) # @param endpoints [Array] diff --git a/rbi/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi index 0eeafefb..f1212e2a 100644 --- a/rbi/hanzoai/errors.rbi +++ b/rbi/hanzoai/errors.rbi @@ -59,10 +59,10 @@ module Hanzoai end class APIConnectionError < Hanzoai::Errors::APIError - sig { void } + sig { returns(NilClass) } attr_accessor :status - sig { void } + sig { returns(NilClass) } attr_accessor :body # @api private diff --git a/rbi/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi index 6d72fe6d..2462fbcd 100644 --- a/rbi/hanzoai/internal/transport/base_client.rbi +++ b/rbi/hanzoai/internal/transport/base_client.rbi @@ -213,7 +213,7 @@ module Hanzoai send_retry_header: T::Boolean ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) end - private def send_request( + def send_request( request, redirect_count:, retry_count:, diff --git a/rbi/hanzoai/internal/type/converter.rbi b/rbi/hanzoai/internal/type/converter.rbi index c300f644..80e742b2 100644 --- a/rbi/hanzoai/internal/type/converter.rbi +++ b/rbi/hanzoai/internal/type/converter.rbi @@ -90,6 +90,60 @@ module Hanzoai def self.type_info(spec) end + # @api private + sig do + params( + type_info: + T.any( + { + const: + T.nilable( + T.any(NilClass, T::Boolean, Integer, Float, Symbol) + ), + enum: + T.nilable( + T.proc.returns( + Hanzoai::Internal::Type::Converter::Input + ) + ), + union: + T.nilable( + T.proc.returns( + Hanzoai::Internal::Type::Converter::Input + ) + ) + }, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ), + spec: + T.any( + { + const: + T.nilable( + T.any(NilClass, T::Boolean, Integer, Float, Symbol) + ), + enum: + T.nilable( + T.proc.returns( + Hanzoai::Internal::Type::Converter::Input + ) + ), + union: + T.nilable( + T.proc.returns( + Hanzoai::Internal::Type::Converter::Input + ) + ) + }, + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::Type::Converter::Input + ) + ).returns(Hanzoai::Internal::AnyHash) + end + def self.meta_info(type_info, spec) + end + # @api private sig do params(translate_names: T::Boolean).returns( diff --git a/rbi/hanzoai/internal/type/union.rbi b/rbi/hanzoai/internal/type/union.rbi index d02bc0d9..b79d27f1 100644 --- a/rbi/hanzoai/internal/type/union.rbi +++ b/rbi/hanzoai/internal/type/union.rbi @@ -16,7 +16,8 @@ module Hanzoai T::Array[ [ T.nilable(Symbol), - T.proc.returns(Hanzoai::Internal::Type::Converter::Input) + T.proc.returns(Hanzoai::Internal::Type::Converter::Input), + Hanzoai::Internal::AnyHash ] ] ) @@ -25,7 +26,13 @@ module Hanzoai end # @api private - sig { returns(T::Array[[T.nilable(Symbol), T.anything]]) } + sig do + returns( + T::Array[ + [T.nilable(Symbol), T.anything, Hanzoai::Internal::AnyHash] + ] + ) + end protected def derefed_variants end diff --git a/scripts/mock b/scripts/mock index d2814ae6..0b28f6ea 100755 --- a/scripts/mock +++ b/scripts/mock @@ -21,7 +21,7 @@ echo "==> Starting mock server with URL ${URL}" # Run prism mock on the given spec if [ "$1" == "--daemon" ]; then - npm exec --package=@stainless-api/prism-cli@5.8.5 -- prism mock "$URL" &> .prism.log & + npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock "$URL" &> .prism.log & # Wait for server to come online echo -n "Waiting for server" @@ -37,5 +37,5 @@ if [ "$1" == "--daemon" ]; then echo else - npm exec --package=@stainless-api/prism-cli@5.8.5 -- prism mock "$URL" + npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock "$URL" fi diff --git a/scripts/test b/scripts/test index 8e5d35cd..e0dc1374 100755 --- a/scripts/test +++ b/scripts/test @@ -43,7 +43,7 @@ elif ! prism_is_running ; then echo -e "To run the server, pass in the path or url of your OpenAPI" echo -e "spec to the prism command:" echo - echo -e " \$ ${YELLOW}npm exec --package=@stoplight/prism-cli@~5.3.2 -- prism mock path/to/your.openapi.yml${NC}" + echo -e " \$ ${YELLOW}npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock path/to/your.openapi.yml${NC}" echo exit 1 diff --git a/sig/hanzoai/internal/transport/base_client.rbs b/sig/hanzoai/internal/transport/base_client.rbs index 3400db8a..6ab8bdc4 100644 --- a/sig/hanzoai/internal/transport/base_client.rbs +++ b/sig/hanzoai/internal/transport/base_client.rbs @@ -99,7 +99,7 @@ module Hanzoai retry_count: Integer ) -> Float - private def send_request: ( + def send_request: ( Hanzoai::Internal::Transport::BaseClient::request_input request, redirect_count: Integer, retry_count: Integer, diff --git a/sig/hanzoai/internal/type/converter.rbs b/sig/hanzoai/internal/type/converter.rbs index b26cb9ff..a945d6b5 100644 --- a/sig/hanzoai/internal/type/converter.rbs +++ b/sig/hanzoai/internal/type/converter.rbs @@ -39,6 +39,23 @@ module Hanzoai | Hanzoai::Internal::Type::Converter::input spec ) -> (^-> top) + def self.meta_info: ( + { + const: (nil | bool | Integer | Float | Symbol)?, + enum: ^-> Hanzoai::Internal::Type::Converter::input?, + union: ^-> Hanzoai::Internal::Type::Converter::input? + } + | ^-> Hanzoai::Internal::Type::Converter::input + | Hanzoai::Internal::Type::Converter::input type_info, + { + const: (nil | bool | Integer | Float | Symbol)?, + enum: ^-> Hanzoai::Internal::Type::Converter::input?, + union: ^-> Hanzoai::Internal::Type::Converter::input? + } + | ^-> Hanzoai::Internal::Type::Converter::input + | Hanzoai::Internal::Type::Converter::input spec + ) -> ::Hash[Symbol, top] + def self.new_coerce_state: ( ?translate_names: bool ) -> Hanzoai::Internal::Type::Converter::coerce_state diff --git a/sig/hanzoai/internal/type/union.rbs b/sig/hanzoai/internal/type/union.rbs index f71f1b77..af39ceaf 100644 --- a/sig/hanzoai/internal/type/union.rbs +++ b/sig/hanzoai/internal/type/union.rbs @@ -5,9 +5,9 @@ module Hanzoai include Hanzoai::Internal::Type::Converter include Hanzoai::Internal::Util::SorbetRuntimeSupport - private def self.known_variants: -> ::Array[[Symbol?, (^-> Hanzoai::Internal::Type::Converter::input)]] + private def self.known_variants: -> ::Array[[Symbol?, (^-> Hanzoai::Internal::Type::Converter::input), ::Hash[Symbol, top]]] - def self.derefed_variants: -> ::Array[[Symbol?, top]] + def self.derefed_variants: -> ::Array[[Symbol?, top, ::Hash[Symbol, top]]] def self.variants: -> ::Array[top] diff --git a/test/hanzoai/internal/sorbet_runtime_support_test.rb b/test/hanzoai/internal/sorbet_runtime_support_test.rb index 04b2e319..6b6ff576 100644 --- a/test/hanzoai/internal/sorbet_runtime_support_test.rb +++ b/test/hanzoai/internal/sorbet_runtime_support_test.rb @@ -3,6 +3,8 @@ require_relative "../test_helper" class Hanzoai::Test::SorbetRuntimeSupportTest < Minitest::Test + extend Minitest::Serial + i_suck_and_my_tests_are_order_dependent! module E diff --git a/test/hanzoai/internal/type/base_model_test.rb b/test/hanzoai/internal/type/base_model_test.rb index 9497f7c3..2624ef6f 100644 --- a/test/hanzoai/internal/type/base_model_test.rb +++ b/test/hanzoai/internal/type/base_model_test.rb @@ -157,6 +157,7 @@ def test_dump_retry class Hanzoai::Test::EnumModelTest < Minitest::Test class E0 include Hanzoai::Internal::Type::Enum + attr_reader :values def initialize(*values) = (@values = values) @@ -476,6 +477,7 @@ def initialize(*variants) = variants.each { variant(_1) } module U1 extend Hanzoai::Internal::Type::Union + variant const: :a variant const: 2 end @@ -492,6 +494,7 @@ class M2 < Hanzoai::Internal::Type::BaseModel module U2 extend Hanzoai::Internal::Type::Union + discriminator :type variant :a, M1 @@ -500,6 +503,7 @@ module U2 module U3 extend Hanzoai::Internal::Type::Union + discriminator :type variant :a, M1 @@ -508,6 +512,7 @@ module U3 module U4 extend Hanzoai::Internal::Type::Union + discriminator :type variant String @@ -601,6 +606,7 @@ def test_coerce class Hanzoai::Test::BaseModelQoLTest < Minitest::Test class E0 include Hanzoai::Internal::Type::Enum + attr_reader :values def initialize(*values) = (@values = values) @@ -687,3 +693,35 @@ def test_equality end end end + +class Hanzoai::Test::MetaInfoTest < Minitest::Test + A1 = Hanzoai::Internal::Type::ArrayOf[Integer, nil?: true, doc: "dog"] + H1 = Hanzoai::Internal::Type::HashOf[-> { String }, nil?: true, doc: "dawg"] + + class M1 < Hanzoai::Internal::Type::BaseModel + required :a, Integer, doc: "dog" + optional :b, -> { String }, nil?: true, doc: "dawg" + end + + module U1 + extend Hanzoai::Internal::Type::Union + + variant -> { Integer }, const: 2, doc: "dog" + variant -> { String }, doc: "dawg" + end + + def test_meta_retrieval + m1 = A1.instance_variable_get(:@meta) + m2 = H1.instance_variable_get(:@meta) + assert_equal({doc: "dog"}, m1) + assert_equal({doc: "dawg"}, m2) + + ma, mb = M1.fields.fetch_values(:a, :b) + assert_equal({doc: "dog"}, ma.fetch(:meta)) + assert_equal({doc: "dawg"}, mb.fetch(:meta)) + + ua, ub = U1.send(:known_variants).map(&:last) + assert_equal({doc: "dog"}, ua) + assert_equal({doc: "dawg"}, ub) + end +end diff --git a/test/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index fa416d72..97a4ddf5 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -242,11 +242,7 @@ def test_hash_encode {strio: StringIO.new("a")} => {"strio" => "a"}, {strio: Hanzoai::FilePart.new("a")} => {"strio" => "a"}, {pathname: Pathname(__FILE__)} => {"pathname" => -> { _1.read in /^class Hanzoai/ }}, - {pathname: Hanzoai::FilePart.new(Pathname(__FILE__))} => { - "pathname" => -> { - _1.read in /^class Hanzoai/ - } - } + {pathname: Hanzoai::FilePart.new(Pathname(__FILE__))} => {"pathname" => -> { _1.read in /^class Hanzoai/ }} } cases.each do |body, testcase| encoded = Hanzoai::Internal::Util.encode_content(headers, body) @@ -324,9 +320,9 @@ def test_rewind_chain end def test_external_iteration - it = [1, 2, 3].to_enum - first = it.next - fused = Hanzoai::Internal::Util.fused_enum(it, external: true) + iter = [1, 2, 3].to_enum + first = iter.next + fused = Hanzoai::Internal::Util.fused_enum(iter, external: true) assert_equal(1, first) assert_equal([2, 3], fused.to_a) diff --git a/test/hanzoai/resources/active_test.rb b/test/hanzoai/resources/active_test.rb index f56e7683..3aa03a54 100644 --- a/test/hanzoai/resources/active_test.rb +++ b/test/hanzoai/resources/active_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ActiveTest < Hanzoai::Test::ResourceTest def test_list_callbacks - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.active.list_callbacks diff --git a/test/hanzoai/resources/add_test.rb b/test/hanzoai/resources/add_test.rb index e9235be0..77677745 100644 --- a/test/hanzoai/resources/add_test.rb +++ b/test/hanzoai/resources/add_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::AddTest < Hanzoai::Test::ResourceTest def test_add_allowed_ip_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.add.add_allowed_ip(ip: "ip") diff --git a/test/hanzoai/resources/anthropic_test.rb b/test/hanzoai/resources/anthropic_test.rb index 335c8d6f..04d12373 100644 --- a/test/hanzoai/resources/anthropic_test.rb +++ b/test/hanzoai/resources/anthropic_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::AnthropicTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.anthropic.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.anthropic.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.anthropic.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.anthropic.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_modify - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.anthropic.modify("endpoint") diff --git a/test/hanzoai/resources/assemblyai_test.rb b/test/hanzoai/resources/assemblyai_test.rb index e2b73324..8e867254 100644 --- a/test/hanzoai/resources/assemblyai_test.rb +++ b/test/hanzoai/resources/assemblyai_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::AssemblyaiTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assemblyai.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assemblyai.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assemblyai.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assemblyai.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assemblyai.patch("endpoint") diff --git a/test/hanzoai/resources/assistants_test.rb b/test/hanzoai/resources/assistants_test.rb index 8f0afd4a..66719b23 100644 --- a/test/hanzoai/resources/assistants_test.rb +++ b/test/hanzoai/resources/assistants_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::AssistantsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assistants.create @@ -14,7 +14,7 @@ def test_create end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assistants.list @@ -24,7 +24,7 @@ def test_list end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.assistants.delete("assistant_id") diff --git a/test/hanzoai/resources/audio/speech_test.rb b/test/hanzoai/resources/audio/speech_test.rb index 12cb2ab8..df08b507 100644 --- a/test/hanzoai/resources/audio/speech_test.rb +++ b/test/hanzoai/resources/audio/speech_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Audio::SpeechTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.audio.speech.create diff --git a/test/hanzoai/resources/audio/transcriptions_test.rb b/test/hanzoai/resources/audio/transcriptions_test.rb index f02a2fe7..96f471c4 100644 --- a/test/hanzoai/resources/audio/transcriptions_test.rb +++ b/test/hanzoai/resources/audio/transcriptions_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Audio::TranscriptionsTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.audio.transcriptions.create(file: Pathname(__FILE__)) diff --git a/test/hanzoai/resources/azure_test.rb b/test/hanzoai/resources/azure_test.rb index 64678725..a8d09068 100644 --- a/test/hanzoai/resources/azure_test.rb +++ b/test/hanzoai/resources/azure_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::AzureTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.azure.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.azure.update("endpoint") @@ -24,7 +24,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.azure.delete("endpoint") @@ -34,7 +34,7 @@ def test_delete end def test_call - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.azure.call("endpoint") @@ -44,7 +44,7 @@ def test_call end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.azure.patch("endpoint") diff --git a/test/hanzoai/resources/batches/cancel_test.rb b/test/hanzoai/resources/batches/cancel_test.rb index 1d8756ba..00aec4e0 100644 --- a/test/hanzoai/resources/batches/cancel_test.rb +++ b/test/hanzoai/resources/batches/cancel_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Batches::CancelTest < Hanzoai::Test::ResourceTest def test_cancel - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.cancel.cancel("batch_id") diff --git a/test/hanzoai/resources/batches_test.rb b/test/hanzoai/resources/batches_test.rb index 793835c6..701b99de 100644 --- a/test/hanzoai/resources/batches_test.rb +++ b/test/hanzoai/resources/batches_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::BatchesTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.create @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.retrieve("batch_id") @@ -24,7 +24,7 @@ def test_retrieve end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.list @@ -34,7 +34,7 @@ def test_list end def test_cancel_with_provider_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.cancel_with_provider("batch_id", provider: "provider") @@ -44,7 +44,7 @@ def test_cancel_with_provider_required_params end def test_create_with_provider - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.create_with_provider("provider") @@ -54,7 +54,7 @@ def test_create_with_provider end def test_list_with_provider - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.list_with_provider("provider") @@ -64,7 +64,7 @@ def test_list_with_provider end def test_retrieve_with_provider_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.batches.retrieve_with_provider("batch_id", provider: "provider") diff --git a/test/hanzoai/resources/bedrock_test.rb b/test/hanzoai/resources/bedrock_test.rb index 8ed847f7..f501d52b 100644 --- a/test/hanzoai/resources/bedrock_test.rb +++ b/test/hanzoai/resources/bedrock_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::BedrockTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.bedrock.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.bedrock.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.bedrock.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.bedrock.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.bedrock.patch("endpoint") diff --git a/test/hanzoai/resources/budget_test.rb b/test/hanzoai/resources/budget_test.rb index 30e36cbf..e5239c21 100644 --- a/test/hanzoai/resources/budget_test.rb +++ b/test/hanzoai/resources/budget_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::BudgetTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.budget.create @@ -14,7 +14,7 @@ def test_create end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.budget.update @@ -24,7 +24,7 @@ def test_update end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.budget.list @@ -34,7 +34,7 @@ def test_list end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.budget.delete(id: "id") @@ -44,7 +44,7 @@ def test_delete_required_params end def test_info_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.budget.info(budgets: ["string"]) @@ -54,7 +54,7 @@ def test_info_required_params end def test_settings_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.budget.settings(budget_id: "budget_id") diff --git a/test/hanzoai/resources/cache/redis_test.rb b/test/hanzoai/resources/cache/redis_test.rb index 0123e7fc..f43a51ff 100644 --- a/test/hanzoai/resources/cache/redis_test.rb +++ b/test/hanzoai/resources/cache/redis_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Cache::RedisTest < Hanzoai::Test::ResourceTest def test_retrieve_info - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cache.redis.retrieve_info diff --git a/test/hanzoai/resources/cache_test.rb b/test/hanzoai/resources/cache_test.rb index 28c88b5a..d64fe865 100644 --- a/test/hanzoai/resources/cache_test.rb +++ b/test/hanzoai/resources/cache_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::CacheTest < Hanzoai::Test::ResourceTest def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cache.delete @@ -14,7 +14,7 @@ def test_delete end def test_flush_all - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cache.flush_all @@ -24,7 +24,7 @@ def test_flush_all end def test_ping - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cache.ping diff --git a/test/hanzoai/resources/chat/completions_test.rb b/test/hanzoai/resources/chat/completions_test.rb index d22fe545..ad91d79a 100644 --- a/test/hanzoai/resources/chat/completions_test.rb +++ b/test/hanzoai/resources/chat/completions_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Chat::CompletionsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.chat.completions.create diff --git a/test/hanzoai/resources/cohere_test.rb b/test/hanzoai/resources/cohere_test.rb index aa8d27b9..2e239c8a 100644 --- a/test/hanzoai/resources/cohere_test.rb +++ b/test/hanzoai/resources/cohere_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::CohereTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cohere.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cohere.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cohere.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cohere.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_modify - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.cohere.modify("endpoint") diff --git a/test/hanzoai/resources/completions_test.rb b/test/hanzoai/resources/completions_test.rb index c32feb18..b20e355d 100644 --- a/test/hanzoai/resources/completions_test.rb +++ b/test/hanzoai/resources/completions_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::CompletionsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.completions.create diff --git a/test/hanzoai/resources/config/pass_through_endpoint_test.rb b/test/hanzoai/resources/config/pass_through_endpoint_test.rb index bd135c99..dbc7052e 100644 --- a/test/hanzoai/resources/config/pass_through_endpoint_test.rb +++ b/test/hanzoai/resources/config/pass_through_endpoint_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Config::PassThroughEndpointTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.config.pass_through_endpoint.create(headers: {}, path: "path", target: "target") @@ -14,7 +14,7 @@ def test_create_required_params end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.config.pass_through_endpoint.update("endpoint_id") @@ -24,7 +24,7 @@ def test_update end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.config.pass_through_endpoint.list @@ -40,7 +40,7 @@ def test_list end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.config.pass_through_endpoint.delete(endpoint_id: "endpoint_id") diff --git a/test/hanzoai/resources/credentials_test.rb b/test/hanzoai/resources/credentials_test.rb index 65a2c80d..ce5c627e 100644 --- a/test/hanzoai/resources/credentials_test.rb +++ b/test/hanzoai/resources/credentials_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::CredentialsTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.credentials.create(credential_info: {}, credential_name: "credential_name") @@ -14,7 +14,7 @@ def test_create_required_params end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.credentials.list @@ -24,7 +24,7 @@ def test_list end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.credentials.delete("credential_name") diff --git a/test/hanzoai/resources/customer_test.rb b/test/hanzoai/resources/customer_test.rb index 50e50a51..bedcdbaa 100644 --- a/test/hanzoai/resources/customer_test.rb +++ b/test/hanzoai/resources/customer_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::CustomerTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.customer.create(user_id: "user_id") @@ -14,7 +14,7 @@ def test_create_required_params end def test_update_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.customer.update(user_id: "user_id") @@ -24,7 +24,7 @@ def test_update_required_params end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.customer.list @@ -34,7 +34,7 @@ def test_list end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.customer.delete(user_ids: ["string"]) @@ -44,7 +44,7 @@ def test_delete_required_params end def test_block_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.customer.block(user_ids: ["string"]) @@ -54,7 +54,7 @@ def test_block_required_params end def test_retrieve_info_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.customer.retrieve_info(end_user_id: "end_user_id") @@ -76,7 +76,7 @@ def test_retrieve_info_required_params end def test_unblock_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.customer.unblock(user_ids: ["string"]) diff --git a/test/hanzoai/resources/delete_test.rb b/test/hanzoai/resources/delete_test.rb index 4339627b..6905680f 100644 --- a/test/hanzoai/resources/delete_test.rb +++ b/test/hanzoai/resources/delete_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::DeleteTest < Hanzoai::Test::ResourceTest def test_create_allowed_ip_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.delete.create_allowed_ip(ip: "ip") diff --git a/test/hanzoai/resources/embeddings_test.rb b/test/hanzoai/resources/embeddings_test.rb index 91c7dedb..a36560b8 100644 --- a/test/hanzoai/resources/embeddings_test.rb +++ b/test/hanzoai/resources/embeddings_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::EmbeddingsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.embeddings.create diff --git a/test/hanzoai/resources/engines/chat_test.rb b/test/hanzoai/resources/engines/chat_test.rb index 1e6ca61f..09cc8a52 100644 --- a/test/hanzoai/resources/engines/chat_test.rb +++ b/test/hanzoai/resources/engines/chat_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Engines::ChatTest < Hanzoai::Test::ResourceTest def test_complete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.engines.chat.complete("model") diff --git a/test/hanzoai/resources/engines_test.rb b/test/hanzoai/resources/engines_test.rb index ab9db013..521f51db 100644 --- a/test/hanzoai/resources/engines_test.rb +++ b/test/hanzoai/resources/engines_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::EnginesTest < Hanzoai::Test::ResourceTest def test_complete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.engines.complete("model") @@ -14,7 +14,7 @@ def test_complete end def test_embed - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.engines.embed("model") diff --git a/test/hanzoai/resources/eu_assemblyai_test.rb b/test/hanzoai/resources/eu_assemblyai_test.rb index ae75dff7..03143125 100644 --- a/test/hanzoai/resources/eu_assemblyai_test.rb +++ b/test/hanzoai/resources/eu_assemblyai_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::EuAssemblyaiTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.eu_assemblyai.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.eu_assemblyai.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.eu_assemblyai.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.eu_assemblyai.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.eu_assemblyai.patch("endpoint") diff --git a/test/hanzoai/resources/files/content_test.rb b/test/hanzoai/resources/files/content_test.rb index e331c4ef..304a19ac 100644 --- a/test/hanzoai/resources/files/content_test.rb +++ b/test/hanzoai/resources/files/content_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Files::ContentTest < Hanzoai::Test::ResourceTest def test_retrieve_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.files.content.retrieve("file_id", provider: "provider") diff --git a/test/hanzoai/resources/files_test.rb b/test/hanzoai/resources/files_test.rb index b80b0cd5..004c8ddd 100644 --- a/test/hanzoai/resources/files_test.rb +++ b/test/hanzoai/resources/files_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::FilesTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.files.create("provider", file: Pathname(__FILE__), purpose: "purpose") @@ -14,7 +14,7 @@ def test_create_required_params end def test_retrieve_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.files.retrieve("file_id", provider: "provider") @@ -24,7 +24,7 @@ def test_retrieve_required_params end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.files.list("provider") @@ -34,7 +34,7 @@ def test_list end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.files.delete("file_id", provider: "provider") diff --git a/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb b/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb index daeba7fe..10267a3e 100644 --- a/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb +++ b/test/hanzoai/resources/fine_tuning/jobs/cancel_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::FineTuning::Jobs::CancelTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.fine_tuning.jobs.cancel.create("fine_tuning_job_id") diff --git a/test/hanzoai/resources/fine_tuning/jobs_test.rb b/test/hanzoai/resources/fine_tuning/jobs_test.rb index cd344fb6..689a47ce 100644 --- a/test/hanzoai/resources/fine_tuning/jobs_test.rb +++ b/test/hanzoai/resources/fine_tuning/jobs_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::FineTuning::JobsTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.fine_tuning.jobs.create( @@ -19,7 +19,7 @@ def test_create_required_params end def test_retrieve_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.fine_tuning.jobs.retrieve("fine_tuning_job_id", custom_llm_provider: :openai) @@ -29,7 +29,7 @@ def test_retrieve_required_params end def test_list_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.fine_tuning.jobs.list(custom_llm_provider: :openai) diff --git a/test/hanzoai/resources/gemini_test.rb b/test/hanzoai/resources/gemini_test.rb index 67b3c283..bcb77bf3 100644 --- a/test/hanzoai/resources/gemini_test.rb +++ b/test/hanzoai/resources/gemini_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::GeminiTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.gemini.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.gemini.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.gemini.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.gemini.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.gemini.patch("endpoint") diff --git a/test/hanzoai/resources/global/spend_test.rb b/test/hanzoai/resources/global/spend_test.rb index 408d517f..05de6f7e 100644 --- a/test/hanzoai/resources/global/spend_test.rb +++ b/test/hanzoai/resources/global/spend_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Global::SpendTest < Hanzoai::Test::ResourceTest def test_list_tags - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.global.spend.list_tags @@ -14,7 +14,7 @@ def test_list_tags end def test_reset - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.global.spend.reset @@ -24,7 +24,7 @@ def test_reset end def test_retrieve_report - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.global.spend.retrieve_report diff --git a/test/hanzoai/resources/guardrails_test.rb b/test/hanzoai/resources/guardrails_test.rb index a76c5d13..ec326c7e 100644 --- a/test/hanzoai/resources/guardrails_test.rb +++ b/test/hanzoai/resources/guardrails_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::GuardrailsTest < Hanzoai::Test::ResourceTest def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.guardrails.list diff --git a/test/hanzoai/resources/health_test.rb b/test/hanzoai/resources/health_test.rb index cb22da95..087d533d 100644 --- a/test/hanzoai/resources/health_test.rb +++ b/test/hanzoai/resources/health_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::HealthTest < Hanzoai::Test::ResourceTest def test_check_all - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.health.check_all @@ -14,7 +14,7 @@ def test_check_all end def test_check_liveliness - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.health.check_liveliness @@ -24,7 +24,7 @@ def test_check_liveliness end def test_check_liveness - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.health.check_liveness @@ -34,7 +34,7 @@ def test_check_liveness end def test_check_readiness - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.health.check_readiness @@ -44,7 +44,7 @@ def test_check_readiness end def test_check_services_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.health.check_services(service: :slack_budget_alerts) diff --git a/test/hanzoai/resources/images/generations_test.rb b/test/hanzoai/resources/images/generations_test.rb index 37f4c1de..53e5dff7 100644 --- a/test/hanzoai/resources/images/generations_test.rb +++ b/test/hanzoai/resources/images/generations_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Images::GenerationsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.images.generations.create diff --git a/test/hanzoai/resources/key_test.rb b/test/hanzoai/resources/key_test.rb index 32482f29..ab89c66e 100644 --- a/test/hanzoai/resources/key_test.rb +++ b/test/hanzoai/resources/key_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::KeyTest < Hanzoai::Test::ResourceTest def test_update_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.update(key: "key") @@ -14,7 +14,7 @@ def test_update_required_params end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.list @@ -33,7 +33,7 @@ def test_list end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.delete @@ -43,7 +43,7 @@ def test_delete end def test_block_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.block(key: "key") @@ -87,7 +87,7 @@ def test_block_required_params end def test_check_health - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.check_health @@ -104,7 +104,7 @@ def test_check_health end def test_generate - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.generate @@ -151,7 +151,7 @@ def test_generate end def test_regenerate_by_key - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.regenerate_by_key("key") @@ -198,7 +198,7 @@ def test_regenerate_by_key end def test_retrieve_info - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.retrieve_info @@ -208,7 +208,7 @@ def test_retrieve_info end def test_unblock_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.key.unblock(key: "key") diff --git a/test/hanzoai/resources/langfuse_test.rb b/test/hanzoai/resources/langfuse_test.rb index 825d31bb..b409e693 100644 --- a/test/hanzoai/resources/langfuse_test.rb +++ b/test/hanzoai/resources/langfuse_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::LangfuseTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.langfuse.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.langfuse.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.langfuse.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.langfuse.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.langfuse.patch("endpoint") diff --git a/test/hanzoai/resources/model/info_test.rb b/test/hanzoai/resources/model/info_test.rb index 4fade692..9e7d1b24 100644 --- a/test/hanzoai/resources/model/info_test.rb +++ b/test/hanzoai/resources/model/info_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Model::InfoTest < Hanzoai::Test::ResourceTest def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.model.info.list diff --git a/test/hanzoai/resources/model/update_test.rb b/test/hanzoai/resources/model/update_test.rb index fc4b5a87..ebdfacb5 100644 --- a/test/hanzoai/resources/model/update_test.rb +++ b/test/hanzoai/resources/model/update_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Model::UpdateTest < Hanzoai::Test::ResourceTest def test_full - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.model.update.full @@ -14,7 +14,7 @@ def test_full end def test_partial - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.model.update.partial("model_id") diff --git a/test/hanzoai/resources/model_group_test.rb b/test/hanzoai/resources/model_group_test.rb index 116a33de..e5be7c03 100644 --- a/test/hanzoai/resources/model_group_test.rb +++ b/test/hanzoai/resources/model_group_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ModelGroupTest < Hanzoai::Test::ResourceTest def test_retrieve_info - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.model_group.retrieve_info diff --git a/test/hanzoai/resources/model_test.rb b/test/hanzoai/resources/model_test.rb index 436c96ab..2ab8b419 100644 --- a/test/hanzoai/resources/model_test.rb +++ b/test/hanzoai/resources/model_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ModelTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.model.create(llm_params: {model: "model"}, model_info: {id: "id"}, model_name: "model_name") @@ -15,7 +15,7 @@ def test_create_required_params end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.model.delete(id: "id") diff --git a/test/hanzoai/resources/models_test.rb b/test/hanzoai/resources/models_test.rb index d7d96e6a..98ee26ee 100644 --- a/test/hanzoai/resources/models_test.rb +++ b/test/hanzoai/resources/models_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ModelsTest < Hanzoai::Test::ResourceTest def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.models.list diff --git a/test/hanzoai/resources/moderations_test.rb b/test/hanzoai/resources/moderations_test.rb index 475fcf5d..0cbd793d 100644 --- a/test/hanzoai/resources/moderations_test.rb +++ b/test/hanzoai/resources/moderations_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ModerationsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.moderations.create diff --git a/test/hanzoai/resources/openai/deployments/chat_test.rb b/test/hanzoai/resources/openai/deployments/chat_test.rb index 736cf185..df8022bb 100644 --- a/test/hanzoai/resources/openai/deployments/chat_test.rb +++ b/test/hanzoai/resources/openai/deployments/chat_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::OpenAI::Deployments::ChatTest < Hanzoai::Test::ResourceTest def test_complete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.deployments.chat.complete("model") diff --git a/test/hanzoai/resources/openai/deployments_test.rb b/test/hanzoai/resources/openai/deployments_test.rb index 41d63100..958d4c05 100644 --- a/test/hanzoai/resources/openai/deployments_test.rb +++ b/test/hanzoai/resources/openai/deployments_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::OpenAI::DeploymentsTest < Hanzoai::Test::ResourceTest def test_complete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.deployments.complete("model") @@ -14,7 +14,7 @@ def test_complete end def test_embed - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.deployments.embed("model") diff --git a/test/hanzoai/resources/openai_test.rb b/test/hanzoai/resources/openai_test.rb index a1121c57..20f0b34f 100644 --- a/test/hanzoai/resources/openai_test.rb +++ b/test/hanzoai/resources/openai_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::OpenAITest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.openai.patch("endpoint") diff --git a/test/hanzoai/resources/organization/info_test.rb b/test/hanzoai/resources/organization/info_test.rb index 7130bd00..7bccf5c4 100644 --- a/test/hanzoai/resources/organization/info_test.rb +++ b/test/hanzoai/resources/organization/info_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Organization::InfoTest < Hanzoai::Test::ResourceTest def test_retrieve_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.info.retrieve(organization_id: "organization_id") @@ -32,7 +32,7 @@ def test_retrieve_required_params end def test_deprecated_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.info.deprecated(organizations: ["string"]) diff --git a/test/hanzoai/resources/organization_test.rb b/test/hanzoai/resources/organization_test.rb index a5ca3b80..8c2f4581 100644 --- a/test/hanzoai/resources/organization_test.rb +++ b/test/hanzoai/resources/organization_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::OrganizationTest < Hanzoai::Test::ResourceTest def test_create_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.create(organization_alias: "organization_alias") @@ -29,7 +29,7 @@ def test_create_required_params end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.update @@ -57,7 +57,7 @@ def test_update end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.list @@ -67,7 +67,7 @@ def test_list end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.delete(organization_ids: ["string"]) @@ -77,7 +77,7 @@ def test_delete_required_params end def test_add_member_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.add_member(member: [{role: :org_admin}], organization_id: "organization_id") @@ -96,7 +96,7 @@ def test_add_member_required_params end def test_delete_member_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.delete_member(organization_id: "organization_id") @@ -106,7 +106,7 @@ def test_delete_member_required_params end def test_update_member_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.organization.update_member(organization_id: "organization_id") diff --git a/test/hanzoai/resources/provider_test.rb b/test/hanzoai/resources/provider_test.rb index e6434a82..9a75c1d4 100644 --- a/test/hanzoai/resources/provider_test.rb +++ b/test/hanzoai/resources/provider_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ProviderTest < Hanzoai::Test::ResourceTest def test_list_budgets - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.provider.list_budgets diff --git a/test/hanzoai/resources/rerank_test.rb b/test/hanzoai/resources/rerank_test.rb index a60c56ff..0db76aac 100644 --- a/test/hanzoai/resources/rerank_test.rb +++ b/test/hanzoai/resources/rerank_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::RerankTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.rerank.create @@ -14,7 +14,7 @@ def test_create end def test_create_v1 - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.rerank.create_v1 @@ -24,7 +24,7 @@ def test_create_v1 end def test_create_v2 - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.rerank.create_v2 diff --git a/test/hanzoai/resources/responses/input_items_test.rb b/test/hanzoai/resources/responses/input_items_test.rb index 4f9119b1..c9bcc687 100644 --- a/test/hanzoai/resources/responses/input_items_test.rb +++ b/test/hanzoai/resources/responses/input_items_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Responses::InputItemsTest < Hanzoai::Test::ResourceTest def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.responses.input_items.list("response_id") diff --git a/test/hanzoai/resources/responses_test.rb b/test/hanzoai/resources/responses_test.rb index 79ff2aeb..c045625c 100644 --- a/test/hanzoai/resources/responses_test.rb +++ b/test/hanzoai/resources/responses_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ResponsesTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.responses.create @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.responses.retrieve("response_id") @@ -24,7 +24,7 @@ def test_retrieve end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.responses.delete("response_id") diff --git a/test/hanzoai/resources/routes_test.rb b/test/hanzoai/resources/routes_test.rb index 5517fa81..c9c5037f 100644 --- a/test/hanzoai/resources/routes_test.rb +++ b/test/hanzoai/resources/routes_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::RoutesTest < Hanzoai::Test::ResourceTest def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.routes.list diff --git a/test/hanzoai/resources/settings_test.rb b/test/hanzoai/resources/settings_test.rb index 0a868830..196b6811 100644 --- a/test/hanzoai/resources/settings_test.rb +++ b/test/hanzoai/resources/settings_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::SettingsTest < Hanzoai::Test::ResourceTest def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.settings.retrieve diff --git a/test/hanzoai/resources/spend_test.rb b/test/hanzoai/resources/spend_test.rb index eef16e86..2b74f28c 100644 --- a/test/hanzoai/resources/spend_test.rb +++ b/test/hanzoai/resources/spend_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::SpendTest < Hanzoai::Test::ResourceTest def test_calculate_spend - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.spend.calculate_spend @@ -14,7 +14,7 @@ def test_calculate_spend end def test_list_logs - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.spend.list_logs @@ -24,7 +24,7 @@ def test_list_logs end def test_list_tags - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.spend.list_tags diff --git a/test/hanzoai/resources/team/callback_test.rb b/test/hanzoai/resources/team/callback_test.rb index e321770a..0d739b03 100644 --- a/test/hanzoai/resources/team/callback_test.rb +++ b/test/hanzoai/resources/team/callback_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Team::CallbackTest < Hanzoai::Test::ResourceTest def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.callback.retrieve("team_id") @@ -14,7 +14,7 @@ def test_retrieve end def test_add_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.callback.add("team_id", callback_name: "callback_name", callback_vars: {foo: "string"}) diff --git a/test/hanzoai/resources/team/model_test.rb b/test/hanzoai/resources/team/model_test.rb index b45a6b4c..c095709b 100644 --- a/test/hanzoai/resources/team/model_test.rb +++ b/test/hanzoai/resources/team/model_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Team::ModelTest < Hanzoai::Test::ResourceTest def test_add_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.model.add(models: ["string"], team_id: "team_id") @@ -14,7 +14,7 @@ def test_add_required_params end def test_remove_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.model.remove(models: ["string"], team_id: "team_id") diff --git a/test/hanzoai/resources/team_test.rb b/test/hanzoai/resources/team_test.rb index 2b791a14..b55f7da5 100644 --- a/test/hanzoai/resources/team_test.rb +++ b/test/hanzoai/resources/team_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::TeamTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.create @@ -38,7 +38,7 @@ def test_create end def test_update_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.update(team_id: "team_id") @@ -48,7 +48,7 @@ def test_update_required_params end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.list @@ -58,7 +58,7 @@ def test_list end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.delete(team_ids: ["string"]) @@ -68,7 +68,7 @@ def test_delete_required_params end def test_add_member_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.add_member(member: [{role: :admin}], team_id: "team_id") @@ -104,7 +104,7 @@ def test_add_member_required_params end def test_block_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.block(team_id: "team_id") @@ -114,7 +114,7 @@ def test_block_required_params end def test_disable_logging - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.disable_logging("team_id") @@ -124,7 +124,7 @@ def test_disable_logging end def test_list_available - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.list_available @@ -134,7 +134,7 @@ def test_list_available end def test_remove_member_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.remove_member(team_id: "team_id") @@ -144,7 +144,7 @@ def test_remove_member_required_params end def test_retrieve_info - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.retrieve_info @@ -154,7 +154,7 @@ def test_retrieve_info end def test_unblock_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.unblock(team_id: "team_id") @@ -164,7 +164,7 @@ def test_unblock_required_params end def test_update_member_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.team.update_member(team_id: "team_id") diff --git a/test/hanzoai/resources/test_test.rb b/test/hanzoai/resources/test_test.rb index f827decc..bfeb9bda 100644 --- a/test/hanzoai/resources/test_test.rb +++ b/test/hanzoai/resources/test_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::TestTest < Hanzoai::Test::ResourceTest def test_ping - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.test_.ping diff --git a/test/hanzoai/resources/threads/messages_test.rb b/test/hanzoai/resources/threads/messages_test.rb index 7c4634bd..c82f7056 100644 --- a/test/hanzoai/resources/threads/messages_test.rb +++ b/test/hanzoai/resources/threads/messages_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Threads::MessagesTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.threads.messages.create("thread_id") @@ -14,7 +14,7 @@ def test_create end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.threads.messages.list("thread_id") diff --git a/test/hanzoai/resources/threads/runs_test.rb b/test/hanzoai/resources/threads/runs_test.rb index 1bfbf5fe..e0ddc5ad 100644 --- a/test/hanzoai/resources/threads/runs_test.rb +++ b/test/hanzoai/resources/threads/runs_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::Threads::RunsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.threads.runs.create("thread_id") diff --git a/test/hanzoai/resources/threads_test.rb b/test/hanzoai/resources/threads_test.rb index a3af7f67..6f4ba8d4 100644 --- a/test/hanzoai/resources/threads_test.rb +++ b/test/hanzoai/resources/threads_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::ThreadsTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.threads.create @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.threads.retrieve("thread_id") diff --git a/test/hanzoai/resources/user_test.rb b/test/hanzoai/resources/user_test.rb index ce74feff..eced472a 100644 --- a/test/hanzoai/resources/user_test.rb +++ b/test/hanzoai/resources/user_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::UserTest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.user.create @@ -55,7 +55,7 @@ def test_create end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.user.update @@ -65,7 +65,7 @@ def test_update end def test_list - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.user.list @@ -75,7 +75,7 @@ def test_list end def test_delete_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.user.delete(user_ids: ["string"]) @@ -85,7 +85,7 @@ def test_delete_required_params end def test_retrieve_info - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.user.retrieve_info diff --git a/test/hanzoai/resources/utils_test.rb b/test/hanzoai/resources/utils_test.rb index 54aee497..03de686f 100644 --- a/test/hanzoai/resources/utils_test.rb +++ b/test/hanzoai/resources/utils_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::UtilsTest < Hanzoai::Test::ResourceTest def test_get_supported_openai_params_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.utils.get_supported_openai_params(model: "model") @@ -14,7 +14,7 @@ def test_get_supported_openai_params_required_params end def test_token_counter_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.utils.token_counter(model: "model") @@ -33,7 +33,7 @@ def test_token_counter_required_params end def test_transform_request_required_params - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.utils.transform_request(call_type: :embedding, request_body: {}) diff --git a/test/hanzoai/resources/vertex_ai_test.rb b/test/hanzoai/resources/vertex_ai_test.rb index f5d73602..baa750c9 100644 --- a/test/hanzoai/resources/vertex_ai_test.rb +++ b/test/hanzoai/resources/vertex_ai_test.rb @@ -4,7 +4,7 @@ class Hanzoai::Test::Resources::VertexAITest < Hanzoai::Test::ResourceTest def test_create - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.vertex_ai.create("endpoint") @@ -14,7 +14,7 @@ def test_create end def test_retrieve - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.vertex_ai.retrieve("endpoint") @@ -24,7 +24,7 @@ def test_retrieve end def test_update - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.vertex_ai.update("endpoint") @@ -34,7 +34,7 @@ def test_update end def test_delete - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.vertex_ai.delete("endpoint") @@ -44,7 +44,7 @@ def test_delete end def test_patch - skip("skipped: tests are disabled for the time being") + skip("Prism tests are disabled") response = @hanzo.vertex_ai.patch("endpoint") From 2d51a26d2260c0f6eb5432d74b7eb9bffcdab00e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 6 Sep 2025 13:32:54 +0000 Subject: [PATCH 091/139] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index 7c3c5481..c1c3aba6 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 188 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-2d6e1036fb1eea7e95cafc281141ead9ef77796e43711b17edccaab67c5e791a.yml openapi_spec_hash: 12501774d0127be4ec1812d613a58e97 -config_hash: 5b61cc8c6c31c071a08578ad825b421d +config_hash: e927bafd76a1eace11894efc3517d245 From 2fa1408b9b8096c2b848718faaa8e1209e5251ae Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 17 Sep 2025 01:31:30 +0000 Subject: [PATCH 092/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index c1c3aba6..310f6103 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 188 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-2d6e1036fb1eea7e95cafc281141ead9ef77796e43711b17edccaab67c5e791a.yml -openapi_spec_hash: 12501774d0127be4ec1812d613a58e97 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-10a8fe872c67396add3ebc3a10252df5bcd6d0f4e9a255d923875a806b2f1609.yml +openapi_spec_hash: 495ad4b04c4dd929e9566b6a099ff931 config_hash: e927bafd76a1eace11894efc3517d245 From bc2f723cdf0a9dad9e3f1aa3bc50284f3611dbbb Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 8 Oct 2025 03:43:46 +0000 Subject: [PATCH 093/139] chore(internal): codegen related update --- Rakefile | 28 +++++--- lib/hanzoai/errors.rb | 36 ++++++---- lib/hanzoai/file_part.rb | 17 +++-- lib/hanzoai/internal/transport/base_client.rb | 18 +++-- .../transport/pooled_net_requester.rb | 17 ++--- lib/hanzoai/internal/type/base_page.rb | 2 +- lib/hanzoai/internal/type/file_input.rb | 11 ++-- lib/hanzoai/internal/util.rb | 5 +- rbi/hanzoai/errors.rbi | 31 ++++++++- rbi/hanzoai/file_part.rbi | 2 +- .../internal/transport/base_client.rbi | 9 ++- rbi/hanzoai/internal/type/base_page.rbi | 2 +- rbi/hanzoai/internal/util.rbi | 2 +- scripts/bootstrap | 14 +++- scripts/fast-format | 18 +++++ sig/hanzoai/errors.rbs | 7 ++ sig/hanzoai/file_part.rbs | 2 +- test/hanzoai/internal/util_test.rb | 66 ++++++++++++++++--- 18 files changed, 214 insertions(+), 73 deletions(-) create mode 100755 scripts/fast-format diff --git a/Rakefile b/Rakefile index 95f3f90e..3e6ceb29 100644 --- a/Rakefile +++ b/Rakefile @@ -12,6 +12,8 @@ tapioca = "sorbet/tapioca" examples = "examples" ignore_file = ".ignore" +FILES_ENV = "FORMAT_FILE" + CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/ doc/], *FileList["*.gem"], ignore_file) CLOBBER.push(*%w[sorbet/rbi/annotations/ sorbet/rbi/gems/], tapioca) @@ -38,6 +40,14 @@ end xargs = %w[xargs --no-run-if-empty --null --max-procs=0 --max-args=300 --] ruby_opt = {"RUBYOPT" => [ENV["RUBYOPT"], "--encoding=UTF-8"].compact.join(" ")} +filtered = ->(ext, dirs) do + if ENV.key?(FILES_ENV) + %w[sed -E -n -e] << "/\\.#{ext}$/p" << "--" << ENV.fetch(FILES_ENV) + else + (%w[find] + dirs + %w[-type f -and -name]) << "*.#{ext}" << "-print0" + end +end + desc("Lint `*.rb(i)`") multitask(:"lint:rubocop") do find = %w[find ./lib ./test ./rbi ./examples -type f -and ( -name *.rb -or -name *.rbi ) -print0] @@ -52,24 +62,26 @@ multitask(:"lint:rubocop") do sh("#{find.shelljoin} | #{lint.shelljoin}") end +norm_lines = %w[tr -- \n \0].shelljoin + 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 ./examples -type f -and -name *.rb -print0] + files = filtered["rb", %w[./lib ./test ./examples]] fmt = xargs + %w[rubocop --fail-level F --autocorrect --format simple --] - sh("#{find.shelljoin} | #{fmt.shelljoin}") + sh("#{files.shelljoin} | #{norm_lines} | #{fmt.shelljoin}") end desc("Format `*.rbi`") multitask(:"format:rbi") do - find = %w[find ./rbi -type f -and -name *.rbi -print0] + files = filtered["rbi", %w[./rbi]] fmt = xargs + %w[stree write --] - sh(ruby_opt, "#{find.shelljoin} | #{fmt.shelljoin}") + sh(ruby_opt, "#{files.shelljoin} | #{norm_lines} | #{fmt.shelljoin}") end desc("Format `*.rbs`") multitask(:"format:rbs") do - find = %w[find ./sig -type f -name *.rbs -print0] + files = filtered["rbs", %w[./sig]] inplace = /darwin|bsd/ =~ RUBY_PLATFORM ? ["-i", ""] : %w[-i] uuid = SecureRandom.uuid @@ -98,13 +110,13 @@ multitask(:"format:rbs") do success = false # transform class aliases to type aliases, which syntax tree has no trouble with - sh("#{find.shelljoin} | #{pre.shelljoin}") + sh("#{files.shelljoin} | #{norm_lines} | #{pre.shelljoin}") # run syntax tree to format `*.rbs` files - sh(ruby_opt, "#{find.shelljoin} | #{fmt.shelljoin}") do + sh(ruby_opt, "#{files.shelljoin} | #{norm_lines} | #{fmt.shelljoin}") do success = _1 end # transform type aliases back to class aliases - sh("#{find.shelljoin} | #{pst.shelljoin}") + sh("#{files.shelljoin} | #{norm_lines} | #{pst.shelljoin}") # always run post-processing to remove comment marker fail unless success diff --git a/lib/hanzoai/errors.rb b/lib/hanzoai/errors.rb index 65266cf7..6a52d2ad 100644 --- a/lib/hanzoai/errors.rb +++ b/lib/hanzoai/errors.rb @@ -40,6 +40,9 @@ class APIError < Hanzoai::Errors::Error # @return [Integer, nil] attr_accessor :status + # @return [Hash{String=>String}, nil] + attr_accessor :headers + # @return [Object, nil] attr_accessor :body @@ -47,13 +50,15 @@ class APIError < Hanzoai::Errors::Error # # @param url [URI::Generic] # @param status [Integer, nil] + # @param headers [Hash{String=>String}, nil] # @param body [Object, nil] # @param request [nil] # @param response [nil] # @param message [String, nil] - def initialize(url:, status: nil, body: nil, request: nil, response: nil, message: nil) + def initialize(url:, status: nil, headers: nil, body: nil, request: nil, response: nil, message: nil) @url = url @status = status + @headers = headers @body = body @request = request @response = response @@ -74,6 +79,7 @@ class APIConnectionError < Hanzoai::Errors::APIError # # @param url [URI::Generic] # @param status [nil] + # @param headers [Hash{String=>String}, nil] # @param body [nil] # @param request [nil] # @param response [nil] @@ -81,6 +87,7 @@ class APIConnectionError < Hanzoai::Errors::APIError def initialize( url:, status: nil, + headers: nil, body: nil, request: nil, response: nil, @@ -95,6 +102,7 @@ class APITimeoutError < Hanzoai::Errors::APIConnectionError # # @param url [URI::Generic] # @param status [nil] + # @param headers [Hash{String=>String}, nil] # @param body [nil] # @param request [nil] # @param response [nil] @@ -102,6 +110,7 @@ class APITimeoutError < Hanzoai::Errors::APIConnectionError def initialize( url:, status: nil, + headers: nil, body: nil, request: nil, response: nil, @@ -116,21 +125,24 @@ class APIStatusError < Hanzoai::Errors::APIError # # @param url [URI::Generic] # @param status [Integer] + # @param headers [Hash{String=>String}, nil] # @param body [Object, nil] # @param request [nil] # @param response [nil] # @param message [String, nil] # # @return [self] - def self.for(url:, status:, body:, request:, response:, message: nil) - kwargs = { - url: url, - status: status, - body: body, - request: request, - response: response, - message: message - } + def self.for(url:, status:, headers:, body:, request:, response:, message: nil) + kwargs = + { + url: url, + status: status, + headers: headers, + body: body, + request: request, + response: response, + message: message + } case status in 400 @@ -162,15 +174,17 @@ def self.for(url:, status:, body:, request:, response:, message: nil) # # @param url [URI::Generic] # @param status [Integer] + # @param headers [Hash{String=>String}, nil] # @param body [Object, nil] # @param request [nil] # @param response [nil] # @param message [String, nil] - def initialize(url:, status:, body:, request:, response:, message: nil) + def initialize(url:, status:, headers:, body:, request:, response:, message: nil) message ||= {url: url.to_s, status: status, body: body} super( url: url, status: status, + headers: headers, body: body, request: request, response: response, diff --git a/lib/hanzoai/file_part.rb b/lib/hanzoai/file_part.rb index ebd4d91d..2cb3c903 100644 --- a/lib/hanzoai/file_part.rb +++ b/lib/hanzoai/file_part.rb @@ -38,18 +38,21 @@ def to_json(*a) = read.to_json(*a) def to_yaml(*a) = read.to_yaml(*a) # @param content [Pathname, StringIO, IO, String] - # @param filename [String, nil] + # @param filename [Pathname, String, nil] # @param content_type [String, nil] def initialize(content, filename: nil, content_type: nil) - @content = content + @content_type = content_type @filename = - case content - in Pathname - filename.nil? ? content.basename.to_path : ::File.basename(filename) + case [filename, (@content = content)] + in [String | Pathname, _] + ::File.basename(filename) + in [nil, Pathname] + content.basename.to_path + in [nil, IO] + content.to_path else - filename.nil? ? nil : ::File.basename(filename) + filename end - @content_type = content_type end end end diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 71a1aa9b..8531e4bf 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -47,7 +47,7 @@ def validate!(req) # @api private # # @param status [Integer] - # @param headers [Hash{String=>String}, Net::HTTPHeader] + # @param headers [Hash{String=>String}] # # @return [Boolean] def should_retry?(status, headers:) @@ -85,7 +85,7 @@ def should_retry?(status, headers:) # # @param status [Integer] # - # @param response_headers [Hash{String=>String}, Net::HTTPHeader] + # @param response_headers [Hash{String=>String}] # # @return [Hash{Symbol=>Object}] def follow_redirect(request, status:, response_headers:) @@ -378,6 +378,7 @@ def send_request(request, redirect_count:, retry_count:, send_retry_header:) rescue Hanzoai::Errors::APIConnectionError => e status = e end + headers = Hanzoai::Internal::Util.normalized_headers(response&.each_header&.to_h) case status in ..299 @@ -390,7 +391,7 @@ def send_request(request, redirect_count:, retry_count:, send_retry_header:) in 300..399 self.class.reap_connection!(status, stream: stream) - request = self.class.follow_redirect(request, status: status, response_headers: response) + request = self.class.follow_redirect(request, status: status, response_headers: headers) send_request( request, redirect_count: redirect_count + 1, @@ -399,9 +400,9 @@ def send_request(request, redirect_count:, retry_count:, send_retry_header:) ) in Hanzoai::Errors::APIConnectionError if retry_count >= max_retries raise status - in (400..) if retry_count >= max_retries || !self.class.should_retry?(status, headers: response) + in (400..) if retry_count >= max_retries || !self.class.should_retry?(status, headers: headers) decoded = Kernel.then do - Hanzoai::Internal::Util.decode_content(response, stream: stream, suppress_error: true) + Hanzoai::Internal::Util.decode_content(headers, stream: stream, suppress_error: true) ensure self.class.reap_connection!(status, stream: stream) end @@ -409,6 +410,7 @@ def send_request(request, redirect_count:, retry_count:, send_retry_header:) raise Hanzoai::Errors::APIStatusError.for( url: url, status: status, + headers: headers, body: decoded, request: nil, response: response @@ -485,19 +487,21 @@ def request(req) send_retry_header: send_retry_header ) - decoded = Hanzoai::Internal::Util.decode_content(response, stream: stream) + headers = Hanzoai::Internal::Util.normalized_headers(response.each_header.to_h) + decoded = Hanzoai::Internal::Util.decode_content(headers, stream: stream) case req in {stream: Class => st} st.new( model: model, url: url, status: status, + headers: headers, response: response, unwrap: unwrap, stream: decoded ) in {page: Class => page} - page.new(client: self, req: req, headers: response, page_data: decoded) + page.new(client: self, req: req, headers: headers, page_data: decoded) else unwrapped = Hanzoai::Internal::Util.dig(decoded, unwrap) Hanzoai::Internal::Type::Converter.coerce(model, unwrapped) diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 3c0e4493..36d05df2 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -134,9 +134,9 @@ def execute(request) # rubocop:disable Metrics/BlockLength enum = Enumerator.new do |y| - with_pool(url, deadline: deadline) do |conn| - next if finished + next if finished + with_pool(url, deadline: deadline) do |conn| req, closing = self.class.build_request(request) do self.class.calibrate_socket_timeout(conn, deadline) end @@ -149,7 +149,7 @@ def execute(request) self.class.calibrate_socket_timeout(conn, deadline) conn.request(req) do |rsp| - y << [conn, req, rsp] + y << [req, rsp] break if finished rsp.read_body do |bytes| @@ -160,6 +160,8 @@ def execute(request) end eof = true end + ensure + conn.finish if !eof && conn&.started? end rescue Timeout::Error raise Hanzoai::Errors::APITimeoutError.new(url: url, request: req) @@ -168,16 +170,11 @@ def execute(request) end # rubocop:enable Metrics/BlockLength - conn, _, response = enum.next + _, response = enum.next body = Hanzoai::Internal::Util.fused_enum(enum, external: true) do finished = true - tap do - enum.next - rescue StopIteration - nil - end + loop { enum.next } ensure - conn.finish if !eof && conn&.started? closing&.call end [Integer(response.code), response, body] diff --git a/lib/hanzoai/internal/type/base_page.rb b/lib/hanzoai/internal/type/base_page.rb index 73e6c236..ae749b59 100644 --- a/lib/hanzoai/internal/type/base_page.rb +++ b/lib/hanzoai/internal/type/base_page.rb @@ -39,7 +39,7 @@ def to_enum = super(:auto_paging_each) # # @param client [Hanzoai::Internal::Transport::BaseClient] # @param req [Hash{Symbol=>Object}] - # @param headers [Hash{String=>String}, Net::HTTPHeader] + # @param headers [Hash{String=>String}] # @param page_data [Object] def initialize(client:, req:, headers:, page_data:) @client = client diff --git a/lib/hanzoai/internal/type/file_input.rb b/lib/hanzoai/internal/type/file_input.rb index f65de1b8..12b8c082 100644 --- a/lib/hanzoai/internal/type/file_input.rb +++ b/lib/hanzoai/internal/type/file_input.rb @@ -82,17 +82,20 @@ def coerce(value, state:) # # @return [Pathname, StringIO, IO, String, Object] def dump(value, state:) - # rubocop:disable Lint/DuplicateBranch case value + in StringIO | String + # https://datatracker.ietf.org/doc/html/rfc7578#section-4.2 + # while not required, a filename is recommended, and in practice many servers do expect this + Hanzoai::FilePart.new(value, filename: "upload") in IO state[:can_retry] = false + value.to_path.nil? ? Hanzoai::FilePart.new(value, filename: "upload") : value in Hanzoai::FilePart if value.content.is_a?(IO) state[:can_retry] = false + value else + value end - # rubocop:enable Lint/DuplicateBranch - - value end # @api private diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 7aa4a70e..3f618cb9 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -566,7 +566,8 @@ class << self # # @return [Array(String, Enumerable)] private def encode_multipart_streaming(body) - boundary = SecureRandom.urlsafe_base64(60) + # RFC 1521 Section 7.2.1 says we should have 70 char maximum for boundary length + boundary = SecureRandom.urlsafe_base64(46) closing = [] strio = writable_enum do |y| @@ -647,7 +648,7 @@ def force_charset!(content_type, text:) # # Assumes each chunk in stream has `Encoding::BINARY`. # - # @param headers [Hash{String=>String}, Net::HTTPHeader] + # @param headers [Hash{String=>String}] # @param stream [Enumerable] # @param suppress_error [Boolean] # diff --git a/rbi/hanzoai/errors.rbi b/rbi/hanzoai/errors.rbi index f1212e2a..ca64c612 100644 --- a/rbi/hanzoai/errors.rbi +++ b/rbi/hanzoai/errors.rbi @@ -33,6 +33,9 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :status + sig { returns(T.nilable(T::Hash[String, String])) } + attr_accessor :headers + sig { returns(T.nilable(T.anything)) } attr_accessor :body @@ -41,6 +44,7 @@ module Hanzoai params( url: URI::Generic, status: T.nilable(Integer), + headers: T.nilable(T::Hash[String, String]), body: T.nilable(Object), request: NilClass, response: NilClass, @@ -50,6 +54,7 @@ module Hanzoai def self.new( url:, status: nil, + headers: nil, body: nil, request: nil, response: nil, @@ -70,6 +75,7 @@ module Hanzoai params( url: URI::Generic, status: NilClass, + headers: T.nilable(T::Hash[String, String]), body: NilClass, request: NilClass, response: NilClass, @@ -79,6 +85,7 @@ module Hanzoai def self.new( url:, status: nil, + headers: nil, body: nil, request: nil, response: nil, @@ -93,6 +100,7 @@ module Hanzoai params( url: URI::Generic, status: NilClass, + headers: T.nilable(T::Hash[String, String]), body: NilClass, request: NilClass, response: NilClass, @@ -102,6 +110,7 @@ module Hanzoai def self.new( url:, status: nil, + headers: nil, body: nil, request: nil, response: nil, @@ -116,13 +125,22 @@ module Hanzoai params( url: URI::Generic, status: Integer, + headers: T.nilable(T::Hash[String, String]), body: T.nilable(Object), request: NilClass, response: NilClass, message: T.nilable(String) ).returns(T.attached_class) end - def self.for(url:, status:, body:, request:, response:, message: nil) + def self.for( + url:, + status:, + headers:, + body:, + request:, + response:, + message: nil + ) end sig { returns(Integer) } @@ -133,13 +151,22 @@ module Hanzoai params( url: URI::Generic, status: Integer, + headers: T.nilable(T::Hash[String, String]), body: T.nilable(Object), request: NilClass, response: NilClass, message: T.nilable(String) ).returns(T.attached_class) end - def self.new(url:, status:, body:, request:, response:, message: nil) + def self.new( + url:, + status:, + headers:, + body:, + request:, + response:, + message: nil + ) end end diff --git a/rbi/hanzoai/file_part.rbi b/rbi/hanzoai/file_part.rbi index 80286d1a..755a5da3 100644 --- a/rbi/hanzoai/file_part.rbi +++ b/rbi/hanzoai/file_part.rbi @@ -27,7 +27,7 @@ module Hanzoai sig do params( content: T.any(Pathname, StringIO, IO, String), - filename: T.nilable(String), + filename: T.nilable(T.any(Pathname, String)), content_type: T.nilable(String) ).returns(T.attached_class) end diff --git a/rbi/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi index 2462fbcd..29348c25 100644 --- a/rbi/hanzoai/internal/transport/base_client.rbi +++ b/rbi/hanzoai/internal/transport/base_client.rbi @@ -84,10 +84,9 @@ module Hanzoai # @api private sig do - params( - status: Integer, - headers: T.any(T::Hash[String, String], Net::HTTPHeader) - ).returns(T::Boolean) + params(status: Integer, headers: T::Hash[String, String]).returns( + T::Boolean + ) end def should_retry?(status, headers:) end @@ -97,7 +96,7 @@ module Hanzoai params( request: Hanzoai::Internal::Transport::BaseClient::RequestInput, status: Integer, - response_headers: T.any(T::Hash[String, String], Net::HTTPHeader) + response_headers: T::Hash[String, String] ).returns(Hanzoai::Internal::Transport::BaseClient::RequestInput) end def follow_redirect(request, status:, response_headers:) diff --git a/rbi/hanzoai/internal/type/base_page.rbi b/rbi/hanzoai/internal/type/base_page.rbi index 73fb0a85..bc03cff1 100644 --- a/rbi/hanzoai/internal/type/base_page.rbi +++ b/rbi/hanzoai/internal/type/base_page.rbi @@ -30,7 +30,7 @@ module Hanzoai params( client: Hanzoai::Internal::Transport::BaseClient, req: Hanzoai::Internal::Transport::BaseClient::RequestComponents, - headers: T.any(T::Hash[String, String], Net::HTTPHeader), + headers: T::Hash[String, String], page_data: T.anything ).void end diff --git a/rbi/hanzoai/internal/util.rbi b/rbi/hanzoai/internal/util.rbi index fb532dd1..b8f13ef9 100644 --- a/rbi/hanzoai/internal/util.rbi +++ b/rbi/hanzoai/internal/util.rbi @@ -361,7 +361,7 @@ module Hanzoai # Assumes each chunk in stream has `Encoding::BINARY`. sig do params( - headers: T.any(T::Hash[String, String], Net::HTTPHeader), + headers: T::Hash[String, String], stream: T::Enumerable[String], suppress_error: T::Boolean ).returns(T.anything) diff --git a/scripts/bootstrap b/scripts/bootstrap index cc31aa85..34878642 100755 --- a/scripts/bootstrap +++ b/scripts/bootstrap @@ -4,10 +4,18 @@ set -e cd -- "$(dirname -- "$0")/.." -if [ -f "Brewfile" ] && [ "$(uname -s)" = "Darwin" ] && [ "$SKIP_BREW" != "1" ]; then +if [ -f "Brewfile" ] && [ "$(uname -s)" = "Darwin" ] && [ "$SKIP_BREW" != "1" ] && [ -t 0 ]; then brew bundle check >/dev/null 2>&1 || { - echo "==> Installing Homebrew dependencies…" - brew bundle + echo -n "==> Install Homebrew dependencies? (y/N): " + read -r response + case "$response" in + [yY][eE][sS]|[yY]) + brew bundle + ;; + *) + ;; + esac + echo } fi diff --git a/scripts/fast-format b/scripts/fast-format new file mode 100755 index 00000000..6d5973fb --- /dev/null +++ b/scripts/fast-format @@ -0,0 +1,18 @@ +#!/usr/bin/env bash + +set -euo pipefail + +echo "Script started with $# arguments" +echo "Arguments: $*" +echo "Script location: $(dirname "$0")" + +cd -- "$(dirname "$0")/.." +echo "Changed to directory: $PWD" + +if [ $# -eq 0 ]; then + echo "Usage: $0 [additional-formatter-args...]" + echo "The file should contain one file path per line" + exit 1 +fi + +exec -- bundle exec rake format FORMAT_FILE="$1" diff --git a/sig/hanzoai/errors.rbs b/sig/hanzoai/errors.rbs index 04b2c02f..d6d247f8 100644 --- a/sig/hanzoai/errors.rbs +++ b/sig/hanzoai/errors.rbs @@ -21,11 +21,14 @@ module Hanzoai attr_accessor status: Integer? + attr_accessor headers: ::Hash[String, String]? + attr_accessor body: top? def initialize: ( url: URI::Generic, ?status: Integer?, + ?headers: ::Hash[String, String]?, ?body: Object?, ?request: nil, ?response: nil, @@ -37,6 +40,7 @@ module Hanzoai def initialize: ( url: URI::Generic, ?status: nil, + ?headers: ::Hash[String, String]?, ?body: nil, ?request: nil, ?response: nil, @@ -48,6 +52,7 @@ module Hanzoai def initialize: ( url: URI::Generic, ?status: nil, + ?headers: ::Hash[String, String]?, ?body: nil, ?request: nil, ?response: nil, @@ -59,6 +64,7 @@ module Hanzoai def self.for: ( url: URI::Generic, status: Integer, + headers: ::Hash[String, String]?, body: Object?, request: nil, response: nil, @@ -68,6 +74,7 @@ module Hanzoai def initialize: ( url: URI::Generic, status: Integer, + headers: ::Hash[String, String]?, body: Object?, request: nil, response: nil, diff --git a/sig/hanzoai/file_part.rbs b/sig/hanzoai/file_part.rbs index 27a592a4..7445c805 100644 --- a/sig/hanzoai/file_part.rbs +++ b/sig/hanzoai/file_part.rbs @@ -14,7 +14,7 @@ module Hanzoai def initialize: ( Pathname | StringIO | IO | String content, - ?filename: String?, + ?filename: (Pathname | String)?, ?content_type: String? ) -> void end diff --git a/test/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index 97a4ddf5..105ddfda 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -213,22 +213,38 @@ def env_table end end + def test_encoding_length + headers, = Hanzoai::Internal::Util.encode_content( + {"content-type" => "multipart/form-data"}, + Pathname(__FILE__) + ) + assert_pattern do + headers.fetch("content-type") => /boundary=(.+)$/ + end + field, = Regexp.last_match.captures + assert(field.length < 70 - 6) + end + def test_file_encode file = Pathname(__FILE__) + fileinput = Hanzoai::Internal::Type::Converter.dump(Hanzoai::Internal::Type::FileInput, "abc") headers = {"content-type" => "multipart/form-data"} cases = { - "abc" => "abc", - StringIO.new("abc") => "abc", - Hanzoai::FilePart.new("abc") => "abc", - Hanzoai::FilePart.new(StringIO.new("abc")) => "abc", - file => /^class Hanzoai/, - Hanzoai::FilePart.new(file) => /^class Hanzoai/ + "abc" => ["", "abc"], + StringIO.new("abc") => ["", "abc"], + fileinput => %w[upload abc], + Hanzoai::FilePart.new(StringIO.new("abc")) => ["", "abc"], + file => [file.basename.to_path, /^class Hanzoai/], + Hanzoai::FilePart.new(file, filename: "d o g") => ["d%20o%20g", /^class Hanzoai/] } - cases.each do |body, val| + cases.each do |body, testcase| + filename, val = testcase encoded = Hanzoai::Internal::Util.encode_content(headers, body) cgi = FakeCGI.new(*encoded) + io = cgi[""] assert_pattern do - cgi[""].read => ^val + io.original_filename => ^filename + io.read => ^val end end end @@ -249,7 +265,14 @@ def test_hash_encode cgi = FakeCGI.new(*encoded) testcase.each do |key, val| assert_pattern do - cgi[key] => ^val + parsed = + case (p = cgi[key]) + in StringIO + p.read + else + p + end + parsed => ^val end end end @@ -287,6 +310,31 @@ def test_copy_write end class Hanzoai::Test::UtilFusedEnumTest < Minitest::Test + def test_rewind_closing + touched = false + once = 0 + steps = 0 + enum = Enumerator.new do |y| + next if touched + + 10.times do + steps = _1 + y << _1 + end + ensure + once = once.succ + end + + fused = Hanzoai::Internal::Util.fused_enum(enum, external: true) do + touched = true + loop { enum.next } + end + Hanzoai::Internal::Util.close_fused!(fused) + + assert_equal(1, once) + assert_equal(0, steps) + end + def test_closing arr = [1, 2, 3] once = 0 From 9a89eacfe7097d8539f70408d78f8174362c4444 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 9 Oct 2025 03:55:32 +0000 Subject: [PATCH 094/139] chore(internal): codegen related update --- .rubocop.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.rubocop.yml b/.rubocop.yml index d23b4346..8ce345cc 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -121,6 +121,10 @@ Metrics/BlockLength: Metrics/ClassLength: Enabled: false +Metrics/CollectionLiteralLength: + Exclude: + - "test/**/*" + Metrics/CyclomaticComplexity: Enabled: false From f64394b3180be99ee256770c57ed25064791e9de Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 15 Oct 2025 02:15:13 +0000 Subject: [PATCH 095/139] fix: should not reuse buffers for `IO.copy_stream` interop --- lib/hanzoai/internal/util.rb | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 3f618cb9..203bd2f0 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -473,10 +473,9 @@ class << self # @return [Enumerable] def writable_enum(&blk) Enumerator.new do |y| - buf = String.new y.define_singleton_method(:write) do - self << buf.replace(_1) - buf.bytesize + self << _1.dup + _1.bytesize end blk.call(y) From 48633de21e5c11fbe72bc0061a465dfe497888d2 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 16 Oct 2025 02:26:57 +0000 Subject: [PATCH 096/139] chore(internal): codegen related update --- lib/hanzoai/internal/util.rb | 5 +++-- test/hanzoai/internal/util_test.rb | 8 ++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 203bd2f0..7d8f6d6c 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -346,8 +346,9 @@ def join_parsed_uri(lhs, rhs) base_path, base_query = lhs.fetch_values(:path, :query) slashed = base_path.end_with?("/") ? base_path : "#{base_path}/" - parsed_path, parsed_query = parse_uri(rhs.fetch(:path)).fetch_values(:path, :query) - override = URI::Generic.build(**rhs.slice(:scheme, :host, :port), path: parsed_path) + merged = {**parse_uri(rhs.fetch(:path)), **rhs.except(:path, :query)} + parsed_path, parsed_query = merged.fetch_values(:path, :query) + override = URI::Generic.build(**merged.slice(:scheme, :host, :port), path: parsed_path) joined = URI.join(URI::Generic.build(lhs.except(:path, :query)), slashed, override) query = deep_merge( diff --git a/test/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index 105ddfda..022ec4cc 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -124,6 +124,14 @@ def test_joining path: "/c", query: {"d" => ["e"]} } + ], + [ + "h://a.b/c?d=e", + "h://nope", + { + path: "h://a.b/c", + query: {"d" => ["e"]} + } ] ] From feddfcaf3ca1e6b95cd3b92c9b0d66ede392c5ae Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 24 Oct 2025 03:34:03 +0000 Subject: [PATCH 097/139] chore(internal): codegen related update --- .../transport/pooled_net_requester.rb | 54 ++++++++++--------- test/hanzoai/internal/util_test.rb | 23 ++++++++ 2 files changed, 53 insertions(+), 24 deletions(-) diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 36d05df2..3aeaa3b7 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -128,40 +128,48 @@ def execute(request) url, deadline = request.fetch_values(:url, :deadline) req = nil - eof = false finished = false - closing = nil # rubocop:disable Metrics/BlockLength enum = Enumerator.new do |y| next if finished with_pool(url, deadline: deadline) do |conn| - req, closing = self.class.build_request(request) do - self.class.calibrate_socket_timeout(conn, deadline) - end - - self.class.calibrate_socket_timeout(conn, deadline) - unless conn.started? - conn.keep_alive_timeout = self.class::KEEP_ALIVE_TIMEOUT - conn.start - end + eof = false + closing = nil + ::Thread.handle_interrupt(Object => :never) do + ::Thread.handle_interrupt(Object => :immediate) do + req, closing = self.class.build_request(request) do + self.class.calibrate_socket_timeout(conn, deadline) + end - self.class.calibrate_socket_timeout(conn, deadline) - conn.request(req) do |rsp| - y << [req, rsp] - break if finished - - rsp.read_body do |bytes| - y << bytes.force_encoding(Encoding::BINARY) - break if finished + self.class.calibrate_socket_timeout(conn, deadline) + unless conn.started? + conn.keep_alive_timeout = self.class::KEEP_ALIVE_TIMEOUT + conn.start + end self.class.calibrate_socket_timeout(conn, deadline) + conn.request(req) do |rsp| + y << [req, rsp] + break if finished + + rsp.read_body do |bytes| + y << bytes.force_encoding(Encoding::BINARY) + break if finished + + self.class.calibrate_socket_timeout(conn, deadline) + end + eof = true + end + end + ensure + begin + conn.finish if !eof && conn&.started? + ensure + closing&.call end - eof = true end - ensure - conn.finish if !eof && conn&.started? end rescue Timeout::Error raise Hanzoai::Errors::APITimeoutError.new(url: url, request: req) @@ -174,8 +182,6 @@ def execute(request) body = Hanzoai::Internal::Util.fused_enum(enum, external: true) do finished = true loop { enum.next } - ensure - closing&.call end [Integer(response.code), response, body] end diff --git a/test/hanzoai/internal/util_test.rb b/test/hanzoai/internal/util_test.rb index 022ec4cc..84cb5b5e 100644 --- a/test/hanzoai/internal/util_test.rb +++ b/test/hanzoai/internal/util_test.rb @@ -343,6 +343,29 @@ def test_rewind_closing assert_equal(0, steps) end + def test_thread_interrupts + once = 0 + que = Queue.new + enum = Enumerator.new do |y| + 10.times { y << _1 } + ensure + once = once.succ + end + + fused_1 = Hanzoai::Internal::Util.fused_enum(enum, external: true) { loop { enum.next } } + fused_2 = Hanzoai::Internal::Util.chain_fused(fused_1) { fused_1.each(&_1) } + fused_3 = Hanzoai::Internal::Util.chain_fused(fused_2) { fused_2.each(&_1) } + + th = ::Thread.new do + que << "🐶" + fused_3.each { sleep(10) } + end + + assert_equal("🐶", que.pop) + th.kill.join + assert_equal(1, once) + end + def test_closing arr = [1, 2, 3] once = 0 From de5221c35a213e070cd7dbe85275942cf73a5a5c Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 06:27:41 +0000 Subject: [PATCH 098/139] chore(internal): codegen related update --- Gemfile | 3 +- Gemfile.lock | 82 +++++++++---------- lib/hanzoai/internal/transport/base_client.rb | 8 +- .../internal/transport/base_client.rbi | 5 ++ rbi/hanzoai/internal/type/base_model.rbi | 12 ++- .../internal/transport/base_client.rbs | 2 + 6 files changed, 64 insertions(+), 48 deletions(-) diff --git a/Gemfile b/Gemfile index 0d76364b..1be178cb 100644 --- a/Gemfile +++ b/Gemfile @@ -11,8 +11,7 @@ group :development do gem "sorbet" gem "steep" gem "syntax_tree" - # TODO: using a fork for now, the prettier below has a bug - gem "syntax_tree-rbs", github: "stainless-api/syntax_tree-rbs", branch: "main" + gem "syntax_tree-rbs", github: "ruby-syntax-tree/syntax_tree-rbs", branch: "main" gem "tapioca" end diff --git a/Gemfile.lock b/Gemfile.lock index 8b7aa7ba..40a0d62a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,6 +1,6 @@ GIT - remote: https://github.com/stainless-api/syntax_tree-rbs.git - revision: c30b50219918be7cfe3ef803a00b59d1e77fcada + remote: https://github.com/ruby-syntax-tree/syntax_tree-rbs.git + revision: f94bc3060682ffbd126e4d5086ffedc89073d626 branch: main specs: syntax_tree-rbs (1.0.0) @@ -17,14 +17,14 @@ PATH GEM remote: https://rubygems.org/ specs: - activesupport (8.0.2.1) + activesupport (8.1.1) base64 - benchmark (>= 0.3) bigdecimal concurrent-ruby (~> 1.0, >= 1.3.1) connection_pool (>= 2.2.5) drb i18n (>= 1.6, < 2) + json logger (>= 1.4.2) minitest (>= 5.1) securerandom (>= 0.3) @@ -33,22 +33,22 @@ GEM addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) ast (2.4.3) - async (2.27.3) + async (2.34.0) console (~> 1.29) fiber-annotation io-event (~> 1.11) metrics (~> 0.12) - traces (~> 0.15) + traces (~> 0.18) base64 (0.3.0) - benchmark (0.4.1) - bigdecimal (3.2.2) + benchmark (0.5.0) + bigdecimal (3.3.1) concurrent-ruby (1.3.5) - connection_pool (2.5.3) - console (1.33.0) + connection_pool (2.5.4) + console (1.34.2) fiber-annotation fiber-local (~> 1.1) json - crack (1.0.0) + crack (1.0.1) bigdecimal rexml csv (3.3.5) @@ -64,20 +64,20 @@ GEM fiber-local (1.1.0) fiber-storage fiber-storage (1.0.1) - fileutils (1.7.3) - hashdiff (1.2.0) + fileutils (1.8.0) + hashdiff (1.2.1) i18n (1.14.7) concurrent-ruby (~> 1.0) io-event (1.11.2) - json (2.13.2) + json (2.15.2) language_server-protocol (3.17.0.5) 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.13.0) - minitest (5.25.5) + metrics (0.15.0) + minitest (5.26.0) minitest-focus (1.4.0) minitest (>= 4, < 6) minitest-hooks (1.5.2) @@ -89,27 +89,27 @@ GEM mutex_m (0.3.0) netrc (0.11.0) parallel (1.27.0) - parser (3.3.9.0) + parser (3.3.10.0) ast (~> 2.4.1) racc prettier_print (1.2.1) - prism (1.4.0) + prism (1.6.0) public_suffix (6.0.2) racc (1.8.1) rainbow (3.1.1) - rake (13.3.0) + rake (13.3.1) rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rbi (0.3.6) + rbi (0.3.7) prism (~> 1.0) rbs (>= 3.4.4) - rbs (3.9.4) + rbs (3.9.5) logger redcarpet (3.6.1) - regexp_parser (2.11.2) - rexml (3.4.1) - rubocop (1.79.2) + regexp_parser (2.11.3) + rexml (3.4.4) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -117,23 +117,23 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.46.0, < 2.0) + rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.46.0) + rubocop-ast (1.47.1) parser (>= 3.3.7.2) prism (~> 1.4) ruby-progressbar (1.13.0) securerandom (0.4.1) - sorbet (0.5.12424) - sorbet-static (= 0.5.12424) - sorbet-runtime (0.5.12424) - sorbet-static (0.5.12424-aarch64-linux) - sorbet-static (0.5.12424-universal-darwin) - sorbet-static (0.5.12424-x86_64-linux) - sorbet-static-and-runtime (0.5.12424) - sorbet (= 0.5.12424) - sorbet-runtime (= 0.5.12424) + sorbet (0.6.12690) + sorbet-static (= 0.6.12690) + sorbet-runtime (0.6.12690) + sorbet-static (0.6.12690-aarch64-linux) + sorbet-static (0.6.12690-universal-darwin) + sorbet-static (0.6.12690-x86_64-linux) + sorbet-static-and-runtime (0.6.12690) + sorbet (= 0.6.12690) + sorbet-runtime (= 0.6.12690) spoom (1.6.3) erubi (>= 1.10.0) prism (>= 0.28.0) @@ -174,14 +174,14 @@ GEM terminal-table (4.0.0) unicode-display_width (>= 1.1.1, < 4) thor (1.4.0) - traces (0.17.0) + traces (0.18.2) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (3.1.5) - unicode-emoji (~> 4.0, >= 4.0.4) - unicode-emoji (4.0.4) - uri (1.0.3) - webmock (3.25.1) + unicode-display_width (3.2.0) + unicode-emoji (~> 4.1) + unicode-emoji (4.1.0) + uri (1.1.0) + webmock (3.26.1) addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) diff --git a/lib/hanzoai/internal/transport/base_client.rb b/lib/hanzoai/internal/transport/base_client.rb index 8531e4bf..a7fb3180 100644 --- a/lib/hanzoai/internal/transport/base_client.rb +++ b/lib/hanzoai/internal/transport/base_client.rb @@ -201,7 +201,8 @@ def initialize( self.class::PLATFORM_HEADERS, { "accept" => "application/json", - "content-type" => "application/json" + "content-type" => "application/json", + "user-agent" => user_agent }, headers ) @@ -219,6 +220,11 @@ def initialize( # @return [Hash{String=>String}] private def auth_headers = {} + # @api private + # + # @return [String] + private def user_agent = "#{self.class.name}/Ruby #{Hanzoai::VERSION}" + # @api private # # @return [String] diff --git a/rbi/hanzoai/internal/transport/base_client.rbi b/rbi/hanzoai/internal/transport/base_client.rbi index 29348c25..18ab6fa2 100644 --- a/rbi/hanzoai/internal/transport/base_client.rbi +++ b/rbi/hanzoai/internal/transport/base_client.rbi @@ -176,6 +176,11 @@ module Hanzoai private def auth_headers end + # @api private + sig { returns(String) } + private def user_agent + end + # @api private sig { returns(String) } private def generate_idempotency_key diff --git a/rbi/hanzoai/internal/type/base_model.rbi b/rbi/hanzoai/internal/type/base_model.rbi index 75cfb43f..1c121537 100644 --- a/rbi/hanzoai/internal/type/base_model.rbi +++ b/rbi/hanzoai/internal/type/base_model.rbi @@ -31,7 +31,7 @@ module Hanzoai # # Assumes superclass fields are totally defined before fields are accessed / # defined on subclasses. - sig { params(child: T.self_type).void } + sig { params(child: Hanzoai::Internal::Type::BaseModel).void } def inherited(child) end @@ -274,9 +274,13 @@ module Hanzoai # Create a new instance of a model. sig do - params(data: T.any(T::Hash[Symbol, T.anything], T.self_type)).returns( - T.attached_class - ) + params( + data: + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Internal::Type::BaseModel + ) + ).returns(T.attached_class) end def self.new(data = {}) end diff --git a/sig/hanzoai/internal/transport/base_client.rbs b/sig/hanzoai/internal/transport/base_client.rbs index 6ab8bdc4..2096e9d3 100644 --- a/sig/hanzoai/internal/transport/base_client.rbs +++ b/sig/hanzoai/internal/transport/base_client.rbs @@ -87,6 +87,8 @@ module Hanzoai private def auth_headers: -> ::Hash[String, String] + private def user_agent: -> String + private def generate_idempotency_key: -> String private def build_request: ( From 7e47a6558a0562747cf6ac531d0e7fda52d4ba63 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 5 Nov 2025 05:57:50 +0000 Subject: [PATCH 099/139] chore(internal): codegen related update --- lib/hanzoai.rb | 1 + lib/hanzoai/internal/transport/pooled_net_requester.rb | 8 ++++++-- manifest.yaml | 1 + rbi/hanzoai/internal/transport/pooled_net_requester.rbi | 8 ++++++-- sig/hanzoai/internal/transport/pooled_net_requester.rbs | 5 ++++- 5 files changed, 18 insertions(+), 5 deletions(-) diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index 054e8d74..83b39d70 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -9,6 +9,7 @@ require "etc" require "json" require "net/http" +require "openssl" require "pathname" require "rbconfig" require "securerandom" diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 3aeaa3b7..26d51c07 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -16,10 +16,11 @@ class PooledNetRequester class << self # @api private # + # @param cert_store [OpenSSL::X509::Store] # @param url [URI::Generic] # # @return [Net::HTTP] - def connect(url) + def connect(cert_store:, url:) port = case [url.port, url.scheme] in [Integer, _] @@ -33,6 +34,8 @@ def connect(url) Net::HTTP.new(url.host, port).tap do _1.use_ssl = %w[https wss].include?(url.scheme) _1.max_retries = 0 + + (_1.cert_store = cert_store) if _1.use_ssl? end end @@ -102,7 +105,7 @@ def build_request(request, &blk) pool = @mutex.synchronize do @pools[origin] ||= ConnectionPool.new(size: @size) do - self.class.connect(url) + self.class.connect(cert_store: @cert_store, url: url) end end @@ -192,6 +195,7 @@ def execute(request) def initialize(size: self.class::DEFAULT_MAX_CONNECTIONS) @mutex = Mutex.new @size = size + @cert_store = OpenSSL::X509::Store.new.tap(&:set_default_paths) @pools = {} end diff --git a/manifest.yaml b/manifest.yaml index 556686f5..7853f4ab 100644 --- a/manifest.yaml +++ b/manifest.yaml @@ -6,6 +6,7 @@ dependencies: - etc - json - net/http + - openssl - pathname - rbconfig - securerandom diff --git a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi index 192b6da5..0803ceec 100644 --- a/rbi/hanzoai/internal/transport/pooled_net_requester.rbi +++ b/rbi/hanzoai/internal/transport/pooled_net_requester.rbi @@ -26,8 +26,12 @@ module Hanzoai class << self # @api private - sig { params(url: URI::Generic).returns(Net::HTTP) } - def connect(url) + sig do + params(cert_store: OpenSSL::X509::Store, url: URI::Generic).returns( + Net::HTTP + ) + end + def connect(cert_store:, url:) end # @api private diff --git a/sig/hanzoai/internal/transport/pooled_net_requester.rbs b/sig/hanzoai/internal/transport/pooled_net_requester.rbs index 99dced99..3566ed94 100644 --- a/sig/hanzoai/internal/transport/pooled_net_requester.rbs +++ b/sig/hanzoai/internal/transport/pooled_net_requester.rbs @@ -17,7 +17,10 @@ module Hanzoai DEFAULT_MAX_CONNECTIONS: Integer - def self.connect: (URI::Generic url) -> top + def self.connect: ( + cert_store: OpenSSL::X509::Store, + url: URI::Generic + ) -> top def self.calibrate_socket_timeout: (top conn, Float deadline) -> void From 188ec125e31c94787b22b68aadac4fac4f8cfc2f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 02:29:40 +0000 Subject: [PATCH 100/139] feat(api): api update --- .github/workflows/ci.yml | 4 +- .github/workflows/publish-gem.yml | 2 +- .github/workflows/release-doctor.yml | 2 +- .stats.yml | 6 +- Gemfile.lock | 2 + LICENSE | 2 +- README.md | 9 + hanzoai.gemspec | 1 + lib/hanzoai.rb | 14 +- lib/hanzoai/client.rb | 2 +- .../transport/pooled_net_requester.rb | 22 +- lib/hanzoai/internal/type/enum.rb | 25 + lib/hanzoai/internal/util.rb | 9 +- lib/hanzoai/models.rb | 14 +- lib/hanzoai/models/batch_list_params.rb | 8 +- .../models/batch_list_with_provider_params.rb | 8 +- lib/hanzoai/models/budget_new.rb | 10 +- lib/hanzoai/models/budget_table.rb | 61 + lib/hanzoai/models/cache_ping_response.rb | 16 +- .../models/chat/completion_create_params.rb | 1277 +++++++- .../pass_through_endpoint_list_params.rb | 8 +- .../pass_through_endpoint_update_params.rb | 2 +- .../config/pass_through_generic_endpoint.rb | 109 +- ...figurable_clientside_params_custom_auth.rb | 15 - .../models/credential_create_params.rb | 14 +- lib/hanzoai/models/credential_item.rb | 12 +- lib/hanzoai/models/customer_create_params.rb | 17 +- lib/hanzoai/models/customer_list_response.rb | 117 +- .../models/customer_retrieve_info_response.rb | 123 - lib/hanzoai/models/embedding_create_params.rb | 98 +- lib/hanzoai/models/engine_embed_params.rb | 96 +- .../models/engines/chat_complete_params.rb | 1279 +++++++- lib/hanzoai/models/file_create_params.rb | 20 +- lib/hanzoai/models/file_list_params.rb | 8 +- .../models/fine_tuning/job_create_params.rb | 129 +- .../models/fine_tuning/job_list_params.rb | 27 +- .../models/fine_tuning/job_retrieve_params.rb | 10 +- .../lite_llm_fine_tuning_job_create.rb | 142 + lib/hanzoai/models/generate_key_response.rb | 376 ++- .../models/global/spend_list_tags_response.rb | 22 +- .../global/spend_retrieve_report_response.rb | 22 +- lib/hanzoai/models/guardrail_list_response.rb | 256 +- lib/hanzoai/models/health_check_all_params.rb | 10 +- .../models/health_check_services_params.rb | 12 + .../models/images/generation_create_params.rb | 8 +- .../models/key/regenerate_key_request.rb | 394 ++- lib/hanzoai/models/key_block_params.rb | 13 +- lib/hanzoai/models/key_block_response.rb | 191 +- lib/hanzoai/models/key_delete_params.rb | 13 +- lib/hanzoai/models/key_generate_params.rb | 357 ++- lib/hanzoai/models/key_list_params.rb | 50 +- lib/hanzoai/models/key_list_response.rb | 677 ++++- .../models/key_regenerate_by_key_params.rb | 13 +- lib/hanzoai/models/key_unblock_params.rb | 13 +- lib/hanzoai/models/key_update_params.rb | 327 +- lib/hanzoai/models/lite_llm_end_user_table.rb | 74 + lib/hanzoai/models/member.rb | 19 +- lib/hanzoai/models/model/info_list_params.rb | 8 +- lib/hanzoai/models/model/update_deployment.rb | 996 ++++++- lib/hanzoai/models/model_create_params.rb | 996 ++++++- lib/hanzoai/models/model_list_params.rb | 26 +- .../models/openai/deployment_embed_params.rb | 98 +- .../deployments/chat_complete_params.rb | 1285 +++++++- lib/hanzoai/models/org_member.rb | 12 +- .../organization/info_retrieve_response.rb | 436 --- .../organization_add_member_response.rb | 337 +-- .../models/organization_create_params.rb | 76 +- .../models/organization_create_response.rb | 303 +- .../models/organization_delete_response.rb | 430 +-- .../models/organization_list_params.rb | 22 +- .../models/organization_list_response.rb | 431 +-- .../models/organization_membership_table.rb | 76 + .../models/organization_table_with_members.rb | 606 ++++ .../organization_update_member_params.rb | 32 +- .../organization_update_member_response.rb | 127 - .../models/organization_update_params.rb | 44 +- .../models/organization_update_response.rb | 432 --- .../models/spend_calculate_spend_params.rb | 8 +- lib/hanzoai/models/spend_list_logs_params.rb | 11 +- .../models/spend_list_logs_response.rb | 22 +- .../models/spend_list_tags_response.rb | 22 +- .../models/team/callback_add_params.rb | 13 +- lib/hanzoai/models/team_add_member_params.rb | 19 +- .../models/team_add_member_response.rb | 450 +-- lib/hanzoai/models/team_create_params.rb | 225 +- lib/hanzoai/models/team_create_response.rb | 132 +- lib/hanzoai/models/team_delete_params.rb | 13 +- .../models/team_update_member_params.rb | 23 +- .../models/team_update_member_response.rb | 14 +- lib/hanzoai/models/team_update_params.rb | 191 +- lib/hanzoai/models/user_create_params.rb | 169 +- lib/hanzoai/models/user_create_response.rb | 378 ++- lib/hanzoai/models/user_delete_params.rb | 13 +- lib/hanzoai/models/user_list_params.rb | 46 - lib/hanzoai/models/user_list_response.rb | 8 - lib/hanzoai/models/user_roles.rb | 31 + lib/hanzoai/models/user_update_params.rb | 106 +- .../models/util_token_counter_params.rb | 24 +- .../models/util_token_counter_response.rb | 28 +- .../models/util_transform_request_params.rb | 65 +- .../models/util_transform_request_response.rb | 16 +- lib/hanzoai/resources/active.rb | 22 +- lib/hanzoai/resources/anthropic.rb | 10 +- lib/hanzoai/resources/azure.rb | 15 + lib/hanzoai/resources/batches.rb | 6 +- lib/hanzoai/resources/bedrock.rb | 15 +- lib/hanzoai/resources/budget.rb | 12 +- lib/hanzoai/resources/cache.rb | 4 +- lib/hanzoai/resources/chat/completions.rb | 36 +- lib/hanzoai/resources/cohere.rb | 10 +- .../resources/config/pass_through_endpoint.rb | 53 +- lib/hanzoai/resources/credentials.rb | 7 +- lib/hanzoai/resources/customer.rb | 25 +- lib/hanzoai/resources/embeddings.rb | 20 +- lib/hanzoai/resources/engines.rb | 25 +- lib/hanzoai/resources/engines/chat.rb | 41 +- lib/hanzoai/resources/files.rb | 10 +- lib/hanzoai/resources/fine_tuning/jobs.rb | 27 +- .../resources/fine_tuning/jobs/cancel.rb | 2 +- lib/hanzoai/resources/gemini.rb | 10 +- lib/hanzoai/resources/global/spend.rb | 10 +- lib/hanzoai/resources/guardrails.rb | 2 +- lib/hanzoai/resources/health.rb | 6 +- lib/hanzoai/resources/images/generations.rb | 7 +- lib/hanzoai/resources/key.rb | 420 ++- lib/hanzoai/resources/langfuse.rb | 20 +- lib/hanzoai/resources/model.rb | 4 +- lib/hanzoai/resources/model/info.rb | 14 +- lib/hanzoai/resources/model/update.rb | 8 +- lib/hanzoai/resources/model_group.rb | 6 +- lib/hanzoai/resources/models.rb | 13 +- lib/hanzoai/resources/moderations.rb | 4 +- lib/hanzoai/resources/openai/deployments.rb | 25 +- .../resources/openai/deployments/chat.rb | 41 +- lib/hanzoai/resources/organization.rb | 93 +- lib/hanzoai/resources/organization/info.rb | 4 +- lib/hanzoai/resources/provider.rb | 2 +- lib/hanzoai/resources/responses.rb | 27 + .../resources/responses/input_items.rb | 9 +- lib/hanzoai/resources/settings.rb | 22 +- lib/hanzoai/resources/spend.rb | 29 +- lib/hanzoai/resources/team.rb | 272 +- lib/hanzoai/resources/team/callback.rb | 14 +- lib/hanzoai/resources/user.rb | 151 +- lib/hanzoai/resources/utils.rb | 29 +- lib/hanzoai/resources/vertex_ai.rb | 20 +- manifest.yaml | 1 + rbi/hanzoai/models.rbi | 15 +- rbi/hanzoai/models/batch_list_params.rbi | 13 +- .../batch_list_with_provider_params.rbi | 12 +- rbi/hanzoai/models/budget_new.rbi | 8 + rbi/hanzoai/models/budget_table.rbi | 76 + rbi/hanzoai/models/cache_ping_response.rbi | 14 +- .../models/chat/completion_create_params.rbi | 2606 +++++++++++++++- .../pass_through_endpoint_list_params.rbi | 7 +- .../pass_through_endpoint_update_params.rbi | 2 +- .../config/pass_through_generic_endpoint.rbi | 185 +- ...igurable_clientside_params_custom_auth.rbi | 26 - .../models/credential_create_params.rbi | 12 +- rbi/hanzoai/models/credential_item.rbi | 12 +- rbi/hanzoai/models/customer_create_params.rbi | 14 + rbi/hanzoai/models/customer_list_response.rbi | 214 +- .../customer_retrieve_info_response.rbi | 217 -- .../models/embedding_create_params.rbi | 127 +- rbi/hanzoai/models/engine_embed_params.rbi | 131 +- .../models/engines/chat_complete_params.rbi | 2615 +++++++++++++++- rbi/hanzoai/models/file_create_params.rbi | 24 + rbi/hanzoai/models/file_list_params.rbi | 7 +- .../models/fine_tuning/job_create_params.rbi | 260 +- .../models/fine_tuning/job_list_params.rbi | 32 +- .../fine_tuning/job_retrieve_params.rbi | 14 +- .../lite_llm_fine_tuning_job_create.rbi | 284 ++ rbi/hanzoai/models/generate_key_response.rbi | 543 +++- .../global/spend_list_tags_response.rbi | 20 +- .../global/spend_retrieve_report_response.rbi | 20 +- .../models/guardrail_list_response.rbi | 354 ++- .../models/health_check_all_params.rbi | 13 +- .../models/health_check_services_params.rbi | 17 + .../images/generation_create_params.rbi | 21 +- .../models/key/regenerate_key_request.rbi | 622 +++- rbi/hanzoai/models/key_block_params.rbi | 25 +- rbi/hanzoai/models/key_block_response.rbi | 201 +- rbi/hanzoai/models/key_delete_params.rbi | 22 +- rbi/hanzoai/models/key_generate_params.rbi | 571 +++- rbi/hanzoai/models/key_list_params.rbi | 54 + rbi/hanzoai/models/key_list_response.rbi | 791 ++++- .../models/key_regenerate_by_key_params.rbi | 25 +- rbi/hanzoai/models/key_unblock_params.rbi | 25 +- rbi/hanzoai/models/key_update_params.rbi | 515 +++- .../models/lite_llm_end_user_table.rbi | 126 + rbi/hanzoai/models/member.rbi | 18 +- rbi/hanzoai/models/model/info_list_params.rbi | 8 +- .../models/model/update_deployment.rbi | 1762 ++++++++++- rbi/hanzoai/models/model_create_params.rbi | 1746 ++++++++++- rbi/hanzoai/models/model_list_params.rbi | 24 + .../models/openai/deployment_embed_params.rbi | 137 +- .../deployments/chat_complete_params.rbi | 2639 ++++++++++++++++- rbi/hanzoai/models/org_member.rbi | 12 +- .../organization/info_retrieve_response.rbi | 690 ----- .../organization_add_member_response.rbi | 462 +-- .../models/organization_create_params.rbi | 110 +- .../models/organization_create_response.rbi | 408 ++- .../models/organization_delete_response.rbi | 679 +---- .../models/organization_list_params.rbi | 36 +- .../models/organization_list_response.rbi | 678 +---- .../models/organization_membership_table.rbi | 103 + .../organization_table_with_members.rbi | 803 +++++ .../organization_update_member_params.rbi | 81 +- .../organization_update_member_response.rbi | 188 -- .../models/organization_update_params.rbi | 60 +- .../models/organization_update_response.rbi | 671 ----- .../models/spend_calculate_spend_params.rbi | 6 +- rbi/hanzoai/models/spend_list_logs_params.rbi | 13 + .../models/spend_list_logs_response.rbi | 20 +- .../models/spend_list_tags_response.rbi | 20 +- .../models/team/callback_add_params.rbi | 22 +- rbi/hanzoai/models/team_add_member_params.rbi | 12 + .../models/team_add_member_response.rbi | 592 ++-- rbi/hanzoai/models/team_create_params.rbi | 360 ++- rbi/hanzoai/models/team_create_response.rbi | 175 +- rbi/hanzoai/models/team_delete_params.rbi | 22 +- .../models/team_update_member_params.rbi | 16 + .../models/team_update_member_response.rbi | 19 +- rbi/hanzoai/models/team_update_params.rbi | 282 +- rbi/hanzoai/models/user_create_params.rbi | 269 +- rbi/hanzoai/models/user_create_response.rbi | 573 +++- rbi/hanzoai/models/user_delete_params.rbi | 22 +- rbi/hanzoai/models/user_list_params.rbi | 73 - rbi/hanzoai/models/user_list_response.rbi | 7 - rbi/hanzoai/models/user_roles.rbi | 37 + rbi/hanzoai/models/user_update_params.rbi | 134 +- .../models/util_token_counter_params.rbi | 28 +- .../models/util_token_counter_response.rbi | 38 +- .../models/util_transform_request_params.rbi | 301 +- .../util_transform_request_response.rbi | 12 +- rbi/hanzoai/resources/active.rbi | 22 +- rbi/hanzoai/resources/anthropic.rbi | 10 +- rbi/hanzoai/resources/azure.rbi | 15 + rbi/hanzoai/resources/batches.rbi | 11 +- rbi/hanzoai/resources/bedrock.rbi | 15 +- rbi/hanzoai/resources/budget.rbi | 10 + rbi/hanzoai/resources/cache.rbi | 4 +- rbi/hanzoai/resources/chat/completions.rbi | 80 +- rbi/hanzoai/resources/cohere.rbi | 10 +- .../config/pass_through_endpoint.rbi | 96 +- rbi/hanzoai/resources/credentials.rbi | 10 +- rbi/hanzoai/resources/customer.rbi | 20 +- rbi/hanzoai/resources/embeddings.rbi | 34 +- rbi/hanzoai/resources/engines.rbi | 34 +- rbi/hanzoai/resources/engines/chat.rbi | 82 +- rbi/hanzoai/resources/files.rbi | 16 +- rbi/hanzoai/resources/fine_tuning/jobs.rbi | 31 +- .../resources/fine_tuning/jobs/cancel.rbi | 2 +- rbi/hanzoai/resources/gemini.rbi | 10 +- rbi/hanzoai/resources/global/spend.rbi | 10 +- rbi/hanzoai/resources/guardrails.rbi | 2 +- rbi/hanzoai/resources/health.rbi | 5 +- rbi/hanzoai/resources/images/generations.rbi | 9 +- rbi/hanzoai/resources/key.rbi | 561 +++- rbi/hanzoai/resources/langfuse.rbi | 20 +- rbi/hanzoai/resources/model.rbi | 6 +- rbi/hanzoai/resources/model/info.rbi | 14 +- rbi/hanzoai/resources/model/update.rbi | 16 +- rbi/hanzoai/resources/model_group.rbi | 6 +- rbi/hanzoai/resources/models.rbi | 21 +- rbi/hanzoai/resources/moderations.rbi | 4 +- rbi/hanzoai/resources/openai/deployments.rbi | 36 +- .../resources/openai/deployments/chat.rbi | 84 +- rbi/hanzoai/resources/organization.rbi | 101 +- rbi/hanzoai/resources/organization/info.rbi | 2 +- rbi/hanzoai/resources/provider.rbi | 2 +- rbi/hanzoai/resources/responses.rbi | 27 + .../resources/responses/input_items.rbi | 9 +- rbi/hanzoai/resources/settings.rbi | 22 +- rbi/hanzoai/resources/spend.rbi | 29 +- rbi/hanzoai/resources/team.rbi | 324 +- rbi/hanzoai/resources/team/callback.rbi | 18 +- rbi/hanzoai/resources/user.rbi | 155 +- rbi/hanzoai/resources/utils.rbi | 28 +- rbi/hanzoai/resources/vertex_ai.rbi | 20 +- sig/hanzoai/models.rbs | 14 +- sig/hanzoai/models/batch_list_params.rbs | 11 +- .../batch_list_with_provider_params.rbs | 6 +- sig/hanzoai/models/budget_new.rbs | 5 + sig/hanzoai/models/budget_table.rbs | 55 + sig/hanzoai/models/cache_ping_response.rbs | 16 +- .../models/chat/completion_create_params.rbs | 1268 +++++++- .../pass_through_endpoint_list_params.rbs | 7 +- .../pass_through_endpoint_update_params.rbs | 2 +- .../config/pass_through_generic_endpoint.rbs | 77 +- ...igurable_clientside_params_custom_auth.rbs | 13 - .../models/credential_create_params.rbs | 16 +- sig/hanzoai/models/credential_item.rbs | 18 +- sig/hanzoai/models/customer_create_params.rbs | 10 + sig/hanzoai/models/customer_list_response.rbs | 110 +- .../customer_retrieve_info_response.rbs | 110 - .../models/embedding_create_params.rbs | 87 +- sig/hanzoai/models/engine_embed_params.rbs | 93 +- .../models/engines/chat_complete_params.rbs | 1274 +++++++- sig/hanzoai/models/file_create_params.rbs | 21 +- sig/hanzoai/models/file_list_params.rbs | 7 +- .../models/fine_tuning/job_create_params.rbs | 117 +- .../models/fine_tuning/job_list_params.rbs | 17 +- .../fine_tuning/job_retrieve_params.rbs | 8 +- .../lite_llm_fine_tuning_job_create.rbs | 120 + sig/hanzoai/models/generate_key_response.rbs | 314 +- .../global/spend_list_tags_response.rbs | 8 +- .../global/spend_retrieve_report_response.rbs | 8 +- .../models/guardrail_list_response.rbs | 181 +- .../models/health_check_all_params.rbs | 7 +- .../models/health_check_services_params.rbs | 8 + .../images/generation_create_params.rbs | 14 +- .../models/key/regenerate_key_request.rbs | 317 +- sig/hanzoai/models/key_block_params.rbs | 11 +- sig/hanzoai/models/key_block_response.rbs | 160 +- sig/hanzoai/models/key_delete_params.rbs | 10 +- sig/hanzoai/models/key_generate_params.rbs | 322 +- sig/hanzoai/models/key_list_params.rbs | 34 + sig/hanzoai/models/key_list_response.rbs | 559 +++- .../models/key_regenerate_by_key_params.rbs | 11 +- sig/hanzoai/models/key_unblock_params.rbs | 11 +- sig/hanzoai/models/key_update_params.rbs | 299 +- .../models/lite_llm_end_user_table.rbs | 63 + sig/hanzoai/models/model/info_list_params.rbs | 9 +- .../models/model/update_deployment.rbs | 927 +++++- sig/hanzoai/models/model_create_params.rbs | 924 +++++- sig/hanzoai/models/model_list_params.rbs | 25 +- .../models/openai/deployment_embed_params.rbs | 93 +- .../deployments/chat_complete_params.rbs | 1274 +++++++- .../organization/info_retrieve_response.rbs | 401 --- .../organization_add_member_response.rbs | 289 +- .../models/organization_create_params.rbs | 73 +- .../models/organization_create_response.rbs | 246 +- .../models/organization_delete_response.rbs | 398 +-- .../models/organization_list_params.rbs | 19 +- .../models/organization_list_response.rbs | 398 +-- .../models/organization_membership_table.rbs | 64 + .../organization_table_with_members.rbs | 510 ++++ .../organization_update_member_params.rbs | 31 +- .../organization_update_member_response.rbs | 111 - .../models/organization_update_params.rbs | 47 +- .../models/organization_update_response.rbs | 399 --- .../models/spend_calculate_spend_params.rbs | 12 +- sig/hanzoai/models/spend_list_logs_params.rbs | 7 + .../models/spend_list_logs_response.rbs | 8 +- .../models/spend_list_tags_response.rbs | 8 +- .../models/team/callback_add_params.rbs | 10 +- .../models/team_add_member_response.rbs | 373 +-- sig/hanzoai/models/team_create_params.rbs | 198 +- sig/hanzoai/models/team_create_response.rbs | 105 +- sig/hanzoai/models/team_delete_params.rbs | 10 +- .../models/team_update_member_params.rbs | 10 + .../models/team_update_member_response.rbs | 10 + sig/hanzoai/models/team_update_params.rbs | 166 +- sig/hanzoai/models/user_create_params.rbs | 182 +- sig/hanzoai/models/user_create_response.rbs | 314 +- sig/hanzoai/models/user_delete_params.rbs | 10 +- sig/hanzoai/models/user_list_params.rbs | 40 - sig/hanzoai/models/user_list_response.rbs | 5 - sig/hanzoai/models/user_roles.rbs | 26 + sig/hanzoai/models/user_update_params.rbs | 113 +- .../models/util_token_counter_params.rbs | 24 +- .../models/util_token_counter_response.rbs | 28 +- .../models/util_transform_request_params.rbs | 126 +- .../util_transform_request_response.rbs | 16 +- sig/hanzoai/resources/batches.rbs | 2 + sig/hanzoai/resources/budget.rbs | 2 + sig/hanzoai/resources/chat/completions.rbs | 30 +- .../config/pass_through_endpoint.rbs | 16 +- sig/hanzoai/resources/credentials.rbs | 4 +- sig/hanzoai/resources/customer.rbs | 4 +- sig/hanzoai/resources/embeddings.rbs | 14 +- sig/hanzoai/resources/engines.rbs | 18 +- sig/hanzoai/resources/engines/chat.rbs | 31 +- sig/hanzoai/resources/files.rbs | 4 + sig/hanzoai/resources/fine_tuning/jobs.rbs | 9 +- sig/hanzoai/resources/health.rbs | 1 + sig/hanzoai/resources/images/generations.rbs | 5 +- sig/hanzoai/resources/key.rbs | 95 +- sig/hanzoai/resources/model.rbs | 2 +- sig/hanzoai/resources/model/info.rbs | 2 +- sig/hanzoai/resources/model/update.rbs | 4 +- sig/hanzoai/resources/models.rbs | 4 + sig/hanzoai/resources/openai/deployments.rbs | 15 +- .../resources/openai/deployments/chat.rbs | 31 +- sig/hanzoai/resources/organization.rbs | 22 +- sig/hanzoai/resources/organization/info.rbs | 2 +- sig/hanzoai/resources/spend.rbs | 3 +- sig/hanzoai/resources/team.rbs | 44 +- sig/hanzoai/resources/team/callback.rbs | 2 +- sig/hanzoai/resources/user.rbs | 47 +- sig/hanzoai/resources/utils.rbs | 6 +- test/hanzoai/resources/cache_test.rb | 4 +- .../resources/chat/completions_test.rb | 8 +- .../config/pass_through_endpoint_test.rb | 6 +- test/hanzoai/resources/credentials_test.rb | 2 +- test/hanzoai/resources/customer_test.rb | 8 +- test/hanzoai/resources/embeddings_test.rb | 4 +- test/hanzoai/resources/engines/chat_test.rb | 9 +- test/hanzoai/resources/engines_test.rb | 4 +- .../resources/fine_tuning/jobs_test.rb | 15 +- test/hanzoai/resources/key_test.rb | 81 +- test/hanzoai/resources/model_test.rb | 2 +- .../resources/openai/deployments/chat_test.rb | 9 +- .../resources/openai/deployments_test.rb | 4 +- .../resources/organization/info_test.rb | 13 +- test/hanzoai/resources/organization_test.rb | 31 +- test/hanzoai/resources/team_test.rb | 24 +- test/hanzoai/resources/user_test.rb | 39 +- test/hanzoai/resources/utils_test.rb | 12 +- 410 files changed, 45710 insertions(+), 13115 deletions(-) create mode 100644 lib/hanzoai/models/budget_table.rb delete mode 100644 lib/hanzoai/models/configurable_clientside_params_custom_auth.rb delete mode 100644 lib/hanzoai/models/customer_retrieve_info_response.rb create mode 100644 lib/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rb create mode 100644 lib/hanzoai/models/lite_llm_end_user_table.rb delete mode 100644 lib/hanzoai/models/organization/info_retrieve_response.rb create mode 100644 lib/hanzoai/models/organization_membership_table.rb create mode 100644 lib/hanzoai/models/organization_table_with_members.rb delete mode 100644 lib/hanzoai/models/organization_update_member_response.rb delete mode 100644 lib/hanzoai/models/organization_update_response.rb delete mode 100644 lib/hanzoai/models/user_list_params.rb delete mode 100644 lib/hanzoai/models/user_list_response.rb create mode 100644 lib/hanzoai/models/user_roles.rb create mode 100644 rbi/hanzoai/models/budget_table.rbi delete mode 100644 rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi delete mode 100644 rbi/hanzoai/models/customer_retrieve_info_response.rbi create mode 100644 rbi/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbi create mode 100644 rbi/hanzoai/models/lite_llm_end_user_table.rbi delete mode 100644 rbi/hanzoai/models/organization/info_retrieve_response.rbi create mode 100644 rbi/hanzoai/models/organization_membership_table.rbi create mode 100644 rbi/hanzoai/models/organization_table_with_members.rbi delete mode 100644 rbi/hanzoai/models/organization_update_member_response.rbi delete mode 100644 rbi/hanzoai/models/organization_update_response.rbi delete mode 100644 rbi/hanzoai/models/user_list_params.rbi delete mode 100644 rbi/hanzoai/models/user_list_response.rbi create mode 100644 rbi/hanzoai/models/user_roles.rbi create mode 100644 sig/hanzoai/models/budget_table.rbs delete mode 100644 sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs delete mode 100644 sig/hanzoai/models/customer_retrieve_info_response.rbs create mode 100644 sig/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbs create mode 100644 sig/hanzoai/models/lite_llm_end_user_table.rbs delete mode 100644 sig/hanzoai/models/organization/info_retrieve_response.rbs create mode 100644 sig/hanzoai/models/organization_membership_table.rbs create mode 100644 sig/hanzoai/models/organization_table_with_members.rbs delete mode 100644 sig/hanzoai/models/organization_update_member_response.rbs delete mode 100644 sig/hanzoai/models/organization_update_response.rbs delete mode 100644 sig/hanzoai/models/user_list_params.rbs delete mode 100644 sig/hanzoai/models/user_list_response.rbs create mode 100644 sig/hanzoai/models/user_roles.rbs diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5a7d24db..841eded2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,7 +20,7 @@ jobs: if: github.event_name == 'push' || github.event.pull_request.head.repo.fork steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: @@ -36,7 +36,7 @@ jobs: runs-on: ${{ github.repository == 'stainless-sdks/hanzo-ai-ruby' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} if: github.event_name == 'push' || github.event.pull_request.head.repo.fork steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: diff --git a/.github/workflows/publish-gem.yml b/.github/workflows/publish-gem.yml index ba9bed42..5e246aed 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: diff --git a/.github/workflows/release-doctor.yml b/.github/workflows/release-doctor.yml index ab0cde1a..d67d8252 100644 --- a/.github/workflows/release-doctor.yml +++ b/.github/workflows/release-doctor.yml @@ -12,7 +12,7 @@ jobs: if: github.repository == 'hanzoai/ruby-sdk' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next') steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Check release environment run: | diff --git a/.stats.yml b/.stats.yml index 310f6103..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ -configured_endpoints: 188 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-10a8fe872c67396add3ebc3a10252df5bcd6d0f4e9a255d923875a806b2f1609.yml -openapi_spec_hash: 495ad4b04c4dd929e9566b6a099ff931 +configured_endpoints: 187 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 diff --git a/Gemfile.lock b/Gemfile.lock index 40a0d62a..425e56cd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -12,6 +12,7 @@ PATH remote: . specs: hanzoai (0.1.0.pre.alpha.4) + cgi connection_pool GEM @@ -42,6 +43,7 @@ GEM base64 (0.3.0) benchmark (0.5.0) bigdecimal (3.3.1) + cgi (0.5.1) concurrent-ruby (1.3.5) connection_pool (2.5.4) console (1.34.2) diff --git a/LICENSE b/LICENSE index 614d2f02..ff91a2c8 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2025 Hanzo + Copyright 2026 Hanzo Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/README.md b/README.md index 1554d149..b90841c7 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,15 @@ The Hanzo Ruby library provides convenient access to the Hanzo REST API from any It is generated with [Stainless](https://www.stainless.com/). +## MCP Server + +Use the Hanzo MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application. + +[![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=hanzoai-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsImhhbnpvYWktbWNwIl19) +[![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22hanzoai-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22hanzoai-mcp%22%5D%7D) + +> Note: You may need to set environment variables in your MCP client. + ## Documentation Documentation for releases of this gem can be found [on RubyDoc](https://gemdocs.org/gems/hanzoai). diff --git a/hanzoai.gemspec b/hanzoai.gemspec index bf00bfca..de4d7ed5 100644 --- a/hanzoai.gemspec +++ b/hanzoai.gemspec @@ -24,5 +24,6 @@ Gem::Specification.new do |s| ".ignore" ] s.extra_rdoc_files = ["README.md"] + s.add_dependency "cgi" s.add_dependency "connection_pool" end diff --git a/lib/hanzoai.rb b/lib/hanzoai.rb index 83b39d70..76ed95bb 100644 --- a/lib/hanzoai.rb +++ b/lib/hanzoai.rb @@ -3,6 +3,7 @@ # Standard libraries. # rubocop:disable Lint/RedundantRequireStatement require "English" +require "base64" require "cgi" require "date" require "erb" @@ -55,6 +56,7 @@ require_relative "hanzoai/models/budget_new" require_relative "hanzoai/models/config/pass_through_generic_endpoint" require_relative "hanzoai/models/block_users" +require_relative "hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create" require_relative "hanzoai/models/block_key_request" require_relative "hanzoai/models/key/regenerate_key_request" require_relative "hanzoai/models/model/update_deployment" @@ -139,6 +141,7 @@ require_relative "hanzoai/models/budget_list_response" require_relative "hanzoai/models/budget_settings_params" require_relative "hanzoai/models/budget_settings_response" +require_relative "hanzoai/models/budget_table" require_relative "hanzoai/models/budget_update_params" require_relative "hanzoai/models/budget_update_response" require_relative "hanzoai/models/cache/redi_retrieve_info_params" @@ -171,7 +174,6 @@ require_relative "hanzoai/models/config/pass_through_endpoint_response" require_relative "hanzoai/models/config/pass_through_endpoint_update_params" require_relative "hanzoai/models/config/pass_through_endpoint_update_response" -require_relative "hanzoai/models/configurable_clientside_params_custom_auth" require_relative "hanzoai/models/credential_create_params" require_relative "hanzoai/models/credential_create_response" require_relative "hanzoai/models/credential_delete_params" @@ -188,7 +190,6 @@ require_relative "hanzoai/models/customer_list_params" require_relative "hanzoai/models/customer_list_response" require_relative "hanzoai/models/customer_retrieve_info_params" -require_relative "hanzoai/models/customer_retrieve_info_response" require_relative "hanzoai/models/customer_unblock_params" require_relative "hanzoai/models/customer_unblock_response" require_relative "hanzoai/models/customer_update_params" @@ -289,6 +290,7 @@ require_relative "hanzoai/models/langfuse_retrieve_response" require_relative "hanzoai/models/langfuse_update_params" require_relative "hanzoai/models/langfuse_update_response" +require_relative "hanzoai/models/lite_llm_end_user_table" require_relative "hanzoai/models/member" require_relative "hanzoai/models/model/info_list_params" require_relative "hanzoai/models/model/info_list_response" @@ -326,7 +328,6 @@ require_relative "hanzoai/models/organization/info_deprecated_params" require_relative "hanzoai/models/organization/info_deprecated_response" require_relative "hanzoai/models/organization/info_retrieve_params" -require_relative "hanzoai/models/organization/info_retrieve_response" require_relative "hanzoai/models/organization_add_member_params" require_relative "hanzoai/models/organization_add_member_response" require_relative "hanzoai/models/organization_create_params" @@ -337,10 +338,10 @@ require_relative "hanzoai/models/organization_delete_response" require_relative "hanzoai/models/organization_list_params" require_relative "hanzoai/models/organization_list_response" +require_relative "hanzoai/models/organization_membership_table" +require_relative "hanzoai/models/organization_table_with_members" require_relative "hanzoai/models/organization_update_member_params" -require_relative "hanzoai/models/organization_update_member_response" require_relative "hanzoai/models/organization_update_params" -require_relative "hanzoai/models/organization_update_response" require_relative "hanzoai/models/org_member" require_relative "hanzoai/models/provider_list_budgets_params" require_relative "hanzoai/models/provider_list_budgets_response" @@ -416,10 +417,9 @@ require_relative "hanzoai/models/user_create_response" require_relative "hanzoai/models/user_delete_params" require_relative "hanzoai/models/user_delete_response" -require_relative "hanzoai/models/user_list_params" -require_relative "hanzoai/models/user_list_response" require_relative "hanzoai/models/user_retrieve_info_params" require_relative "hanzoai/models/user_retrieve_info_response" +require_relative "hanzoai/models/user_roles" require_relative "hanzoai/models/user_update_params" require_relative "hanzoai/models/user_update_response" require_relative "hanzoai/models/util_get_supported_openai_params_params" diff --git a/lib/hanzoai/client.rb b/lib/hanzoai/client.rb index 6855abca..e831f20b 100644 --- a/lib/hanzoai/client.rb +++ b/lib/hanzoai/client.rb @@ -190,7 +190,7 @@ def get_home(params = {}) # # @return [Hash{String=>String}] private def auth_headers - {"ocp-apim-subscription-key" => @api_key} + {"x-litellm-api-key" => @api_key} end # Creates and returns a new client for interacting with the API. diff --git a/lib/hanzoai/internal/transport/pooled_net_requester.rb b/lib/hanzoai/internal/transport/pooled_net_requester.rb index 26d51c07..3a774d18 100644 --- a/lib/hanzoai/internal/transport/pooled_net_requester.rb +++ b/lib/hanzoai/internal/transport/pooled_net_requester.rb @@ -153,17 +153,19 @@ def execute(request) end self.class.calibrate_socket_timeout(conn, deadline) - conn.request(req) do |rsp| - y << [req, rsp] - break if finished - - rsp.read_body do |bytes| - y << bytes.force_encoding(Encoding::BINARY) - break if finished - - self.class.calibrate_socket_timeout(conn, deadline) + ::Kernel.catch(:jump) do + conn.request(req) do |rsp| + y << [req, rsp] + ::Kernel.throw(:jump) if finished + + rsp.read_body do |bytes| + y << bytes.force_encoding(Encoding::BINARY) + ::Kernel.throw(:jump) if finished + + self.class.calibrate_socket_timeout(conn, deadline) + end + eof = true end - eof = true end end ensure diff --git a/lib/hanzoai/internal/type/enum.rb b/lib/hanzoai/internal/type/enum.rb index a81422a9..e5f450dc 100644 --- a/lib/hanzoai/internal/type/enum.rb +++ b/lib/hanzoai/internal/type/enum.rb @@ -15,6 +15,31 @@ module Type # # We can therefore convert string values to Symbols, but can't convert other # values safely. + # + # @example + # # `user_roles` is a `Hanzoai::UserRoles` + # case user_roles + # when Hanzoai::UserRoles::PROXY_ADMIN + # # ... + # when Hanzoai::UserRoles::PROXY_ADMIN_VIEWER + # # ... + # when Hanzoai::UserRoles::ORG_ADMIN + # # ... + # else + # puts(user_roles) + # end + # + # @example + # case user_roles + # in :proxy_admin + # # ... + # in :proxy_admin_viewer + # # ... + # in :org_admin + # # ... + # else + # puts(user_roles) + # end module Enum include Hanzoai::Internal::Type::Converter include Hanzoai::Internal::Util::SorbetRuntimeSupport diff --git a/lib/hanzoai/internal/util.rb b/lib/hanzoai/internal/util.rb index 7d8f6d6c..582a1d4e 100644 --- a/lib/hanzoai/internal/util.rb +++ b/lib/hanzoai/internal/util.rb @@ -657,7 +657,8 @@ def force_charset!(content_type, text:) def decode_content(headers, stream:, suppress_error: false) case (content_type = headers["content-type"]) in Hanzoai::Internal::Util::JSON_CONTENT - json = stream.to_a.join + return nil if (json = stream.to_a.join).empty? + begin JSON.parse(json, symbolize_names: true) rescue JSON::ParserError => e @@ -667,7 +668,11 @@ def decode_content(headers, stream:, suppress_error: false) in Hanzoai::Internal::Util::JSONL_CONTENT lines = decode_lines(stream) chain_fused(lines) do |y| - lines.each { y << JSON.parse(_1, symbolize_names: true) } + lines.each do + next if _1.empty? + + y << JSON.parse(_1, symbolize_names: true) + end end in %r{^text/event-stream} lines = decode_lines(stream) diff --git a/lib/hanzoai/models.rb b/lib/hanzoai/models.rb index 499cd3a5..8793e94d 100644 --- a/lib/hanzoai/models.rb +++ b/lib/hanzoai/models.rb @@ -125,6 +125,8 @@ module Hanzoai BudgetSettingsParams = Hanzoai::Models::BudgetSettingsParams + BudgetTable = Hanzoai::Models::BudgetTable + BudgetUpdateParams = Hanzoai::Models::BudgetUpdateParams Cache = Hanzoai::Models::Cache @@ -153,8 +155,6 @@ module Hanzoai Config = Hanzoai::Models::Config - ConfigurableClientsideParamsCustomAuth = Hanzoai::Models::ConfigurableClientsideParamsCustomAuth - CredentialCreateParams = Hanzoai::Models::CredentialCreateParams CredentialDeleteParams = Hanzoai::Models::CredentialDeleteParams @@ -269,6 +269,8 @@ module Hanzoai LangfuseUpdateParams = Hanzoai::Models::LangfuseUpdateParams + LiteLlmEndUserTable = Hanzoai::Models::LiteLlmEndUserTable + Member = Hanzoai::Models::Member Model = Hanzoai::Models::Model @@ -309,6 +311,10 @@ module Hanzoai OrganizationListParams = Hanzoai::Models::OrganizationListParams + OrganizationMembershipTable = Hanzoai::Models::OrganizationMembershipTable + + OrganizationTableWithMembers = Hanzoai::Models::OrganizationTableWithMembers + OrganizationUpdateMemberParams = Hanzoai::Models::OrganizationUpdateMemberParams OrganizationUpdateParams = Hanzoai::Models::OrganizationUpdateParams @@ -379,10 +385,10 @@ module Hanzoai UserDeleteParams = Hanzoai::Models::UserDeleteParams - UserListParams = Hanzoai::Models::UserListParams - UserRetrieveInfoParams = Hanzoai::Models::UserRetrieveInfoParams + UserRoles = Hanzoai::Models::UserRoles + UserUpdateParams = Hanzoai::Models::UserUpdateParams UtilGetSupportedOpenAIParamsParams = Hanzoai::Models::UtilGetSupportedOpenAIParamsParams diff --git a/lib/hanzoai/models/batch_list_params.rb b/lib/hanzoai/models/batch_list_params.rb index a017aa94..e3982e7b 100644 --- a/lib/hanzoai/models/batch_list_params.rb +++ b/lib/hanzoai/models/batch_list_params.rb @@ -22,10 +22,16 @@ class BatchListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :provider, String, nil?: true - # @!method initialize(after: nil, limit: nil, provider: nil, request_options: {}) + # @!attribute target_model_names + # + # @return [String, nil] + optional :target_model_names, String, nil?: true + + # @!method initialize(after: nil, limit: nil, provider: nil, target_model_names: nil, request_options: {}) # @param after [String, nil] # @param limit [Integer, nil] # @param provider [String, nil] + # @param target_model_names [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/batch_list_with_provider_params.rb b/lib/hanzoai/models/batch_list_with_provider_params.rb index cba55440..407562c2 100644 --- a/lib/hanzoai/models/batch_list_with_provider_params.rb +++ b/lib/hanzoai/models/batch_list_with_provider_params.rb @@ -17,9 +17,15 @@ class BatchListWithProviderParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :limit, Integer, nil?: true - # @!method initialize(after: nil, limit: nil, request_options: {}) + # @!attribute target_model_names + # + # @return [String, nil] + optional :target_model_names, String, nil?: true + + # @!method initialize(after: nil, limit: nil, target_model_names: nil, request_options: {}) # @param after [String, nil] # @param limit [Integer, nil] + # @param target_model_names [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/budget_new.rb b/lib/hanzoai/models/budget_new.rb index 4f103aaa..b6c58fb2 100644 --- a/lib/hanzoai/models/budget_new.rb +++ b/lib/hanzoai/models/budget_new.rb @@ -15,6 +15,12 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :budget_id, String, nil?: true + # @!attribute budget_reset_at + # Datetime when the budget is reset + # + # @return [Time, nil] + optional :budget_reset_at, Time, nil?: true + # @!attribute max_budget # Requests will fail if this budget (in USD) is exceeded. # @@ -54,7 +60,7 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!method initialize(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # @!method initialize(budget_duration: nil, budget_id: nil, budget_reset_at: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) # Some parameter documentations has been truncated, see # {Hanzoai::Models::BudgetNew} for more details. # @@ -62,6 +68,8 @@ class BudgetNew < Hanzoai::Internal::Type::BaseModel # # @param budget_id [String, nil] The unique budget id. # + # @param budget_reset_at [Time, nil] Datetime when the budget is reset + # # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. diff --git a/lib/hanzoai/models/budget_table.rb b/lib/hanzoai/models/budget_table.rb new file mode 100644 index 00000000..2781f023 --- /dev/null +++ b/lib/hanzoai/models/budget_table.rb @@ -0,0 +1,61 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + class BudgetTable < Hanzoai::Internal::Type::BaseModel + # @!attribute budget_duration + # + # @return [String, nil] + optional :budget_duration, String, nil?: true + + # @!attribute budget_id + # + # @return [String, nil] + optional :budget_id, String, nil?: true + + # @!attribute max_budget + # + # @return [Float, nil] + optional :max_budget, Float, nil?: true + + # @!attribute max_parallel_requests + # + # @return [Integer, nil] + optional :max_parallel_requests, Integer, nil?: true + + # @!attribute model_max_budget + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute rpm_limit + # + # @return [Integer, nil] + optional :rpm_limit, Integer, nil?: true + + # @!attribute soft_budget + # + # @return [Float, nil] + optional :soft_budget, Float, nil?: true + + # @!attribute tpm_limit + # + # @return [Integer, nil] + optional :tpm_limit, Integer, nil?: true + + # @!method initialize(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) + # Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @param budget_duration [String, nil] + # @param budget_id [String, nil] + # @param max_budget [Float, nil] + # @param max_parallel_requests [Integer, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # @param rpm_limit [Integer, nil] + # @param soft_budget [Float, nil] + # @param tpm_limit [Integer, nil] + end + end +end diff --git a/lib/hanzoai/models/cache_ping_response.rb b/lib/hanzoai/models/cache_ping_response.rb index 28c73f8c..e6be4796 100644 --- a/lib/hanzoai/models/cache_ping_response.rb +++ b/lib/hanzoai/models/cache_ping_response.rb @@ -16,13 +16,15 @@ class CachePingResponse < Hanzoai::Internal::Type::BaseModel # @!attribute health_check_cache_params # - # @return [Object, nil] - optional :health_check_cache_params, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :health_check_cache_params, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true - # @!attribute llm_cache_params + # @!attribute litellm_cache_params # # @return [String, nil] - optional :llm_cache_params, String, nil?: true + optional :litellm_cache_params, String, nil?: true # @!attribute ping_response # @@ -34,11 +36,11 @@ class CachePingResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :set_cache_response, String, nil?: true - # @!method initialize(cache_type:, status:, health_check_cache_params: nil, llm_cache_params: nil, ping_response: nil, set_cache_response: nil) + # @!method initialize(cache_type:, status:, health_check_cache_params: nil, litellm_cache_params: nil, ping_response: nil, set_cache_response: nil) # @param cache_type [String] # @param status [String] - # @param health_check_cache_params [Object, nil] - # @param llm_cache_params [String, nil] + # @param health_check_cache_params [Hash{Symbol=>Object}, nil] + # @param litellm_cache_params [String, nil] # @param ping_response [Boolean, nil] # @param set_cache_response [String, nil] end diff --git a/lib/hanzoai/models/chat/completion_create_params.rb b/lib/hanzoai/models/chat/completion_create_params.rb index d6cbc0cd..7c81fc08 100644 --- a/lib/hanzoai/models/chat/completion_create_params.rb +++ b/lib/hanzoai/models/chat/completion_create_params.rb @@ -8,14 +8,1285 @@ class CompletionCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + # @!attribute messages + # + # @return [Array] + required :messages, + -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Chat::CompletionCreateParams::Message] } + # @!attribute model # + # @return [String] + required :model, String + + # @!attribute caching + # + # @return [Boolean, nil] + optional :caching, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute context_window_fallback_dict + # + # @return [Hash{Symbol=>String}, nil] + optional :context_window_fallback_dict, Hanzoai::Internal::Type::HashOf[String], nil?: true + + # @!attribute fallbacks + # + # @return [Array, nil] + optional :fallbacks, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute frequency_penalty + # + # @return [Float, nil] + optional :frequency_penalty, Float, nil?: true + + # @!attribute function_call + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :function_call, union: -> { Hanzoai::Chat::CompletionCreateParams::FunctionCall }, nil?: true + + # @!attribute functions + # + # @return [ArrayObject}>, nil] + optional :functions, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute guardrails + # + # @return [Array, nil] + optional :guardrails, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute logit_bias + # + # @return [Hash{Symbol=>Float}, nil] + optional :logit_bias, Hanzoai::Internal::Type::HashOf[Float], nil?: true + + # @!attribute logprobs + # + # @return [Boolean, nil] + optional :logprobs, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute max_tokens + # + # @return [Integer, nil] + optional :max_tokens, Integer, nil?: true + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute n + # + # @return [Integer, nil] + optional :n, Integer, nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute parallel_tool_calls + # + # @return [Boolean, nil] + optional :parallel_tool_calls, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute presence_penalty + # + # @return [Float, nil] + optional :presence_penalty, Float, nil?: true + + # @!attribute response_format + # + # @return [Hash{Symbol=>Object}, nil] + optional :response_format, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute seed + # + # @return [Integer, nil] + optional :seed, Integer, nil?: true + + # @!attribute service_tier + # + # @return [String, nil] + optional :service_tier, String, nil?: true + + # @!attribute stop + # + # @return [String, Array, nil] + optional :stop, union: -> { Hanzoai::Chat::CompletionCreateParams::Stop }, nil?: true + + # @!attribute stream + # + # @return [Boolean, nil] + optional :stream, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute stream_options + # + # @return [Hash{Symbol=>Object}, nil] + optional :stream_options, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute temperature + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute tool_choice + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :tool_choice, union: -> { Hanzoai::Chat::CompletionCreateParams::ToolChoice }, nil?: true + + # @!attribute tools + # + # @return [ArrayObject}>, nil] + optional :tools, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute top_logprobs + # + # @return [Integer, nil] + optional :top_logprobs, Integer, nil?: true + + # @!attribute top_p + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute user + # # @return [String, nil] - optional :model, String, nil?: true + optional :user, String, nil?: true - # @!method initialize(model: nil, request_options: {}) - # @param model [String, nil] + # @!method initialize(messages:, model:, caching: nil, context_window_fallback_dict: nil, fallbacks: nil, frequency_penalty: nil, function_call: nil, functions: nil, guardrails: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, metadata: nil, n: nil, num_retries: nil, parallel_tool_calls: nil, presence_penalty: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, request_options: {}) + # @param messages [Array] + # @param model [String] + # @param caching [Boolean, nil] + # @param context_window_fallback_dict [Hash{Symbol=>String}, nil] + # @param fallbacks [Array, nil] + # @param frequency_penalty [Float, nil] + # @param function_call [String, Hash{Symbol=>Object}, nil] + # @param functions [ArrayObject}>, nil] + # @param guardrails [Array, nil] + # @param logit_bias [Hash{Symbol=>Float}, nil] + # @param logprobs [Boolean, nil] + # @param max_tokens [Integer, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param n [Integer, nil] + # @param num_retries [Integer, nil] + # @param parallel_tool_calls [Boolean, nil] + # @param presence_penalty [Float, nil] + # @param response_format [Hash{Symbol=>Object}, nil] + # @param seed [Integer, nil] + # @param service_tier [String, nil] + # @param stop [String, Array, nil] + # @param stream [Boolean, nil] + # @param stream_options [Hash{Symbol=>Object}, nil] + # @param temperature [Float, nil] + # @param tool_choice [String, Hash{Symbol=>Object}, nil] + # @param tools [ArrayObject}>, nil] + # @param top_logprobs [Integer, nil] + # @param top_p [Float, nil] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + module Message + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage } + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content } + + # @!attribute role + # + # @return [Symbol, :user] + required :role, const: :user + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl } + + # @!method initialize(content:, cache_control: nil, role: :user) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl] + # @param role [Symbol, :user] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1Array } + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + # @!attribute image_url + # + # @return [String, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject] + required :image_url, + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL } + + # @!attribute type + # + # @return [Symbol, :image_url] + required :type, const: :image_url + + # @!method initialize(image_url:, type: :image_url) + # @param image_url [String, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject] + # @param type [Symbol, :image_url] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject#image_url + module ImageURL + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject } + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String + + # @!attribute format_ + # + # @return [String, nil] + optional :format_, String, api_name: :format + + # @!method initialize(url:, detail: nil, format_: nil) + # @param url [String] + # @param detail [String] + # @param format_ [String] + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject)] + end + end + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + # @!attribute input_audio + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio] + required :input_audio, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio } + + # @!attribute type + # + # @return [Symbol, :input_audio] + required :type, const: :input_audio + + # @!method initialize(input_audio:, type: :input_audio) + # @param input_audio [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio] + # @param type [Symbol, :input_audio] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject#input_audio + class InputAudio < Hanzoai::Internal::Type::BaseModel + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute format_ + # + # @return [Symbol, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format] + required :format_, + enum: -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format + }, + api_name: :format + + # @!method initialize(data:, format_:) + # @param data [String] + # @param format_ [Symbol, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio#format_ + module Format + extend Hanzoai::Internal::Type::Enum + + WAV = :wav + MP3 = :mp3 + + # @!method self.values + # @return [Array] + end + end + end + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + # @!attribute citations + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, nil] + required :citations, + -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + }, + nil?: true + + # @!attribute context + # + # @return [String] + required :context, String + + # @!attribute source + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source] + required :source, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source } + + # @!attribute title + # + # @return [String] + required :title, String + + # @!attribute type + # + # @return [Symbol, :document] + required :type, const: :document + + # @!method initialize(citations:, context:, source:, title:, type: :document) + # @param citations [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, nil] + # @param context [String] + # @param source [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source] + # @param title [String] + # @param type [Symbol, :document] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject#citations + class Citations < Hanzoai::Internal::Type::BaseModel + # @!attribute enabled + # + # @return [Boolean] + required :enabled, Hanzoai::Internal::Type::Boolean + + # @!method initialize(enabled:) + # @param enabled [Boolean] + end + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject#source + class Source < Hanzoai::Internal::Type::BaseModel + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute media_type + # + # @return [String] + required :media_type, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!method initialize(data:, media_type:, type: :text) + # @param data [String] + # @param media_type [String] + # @param type [Symbol, :text] + end + end + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :video_url] + required :type, const: :video_url + + # @!attribute video_url + # + # @return [String, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject] + required :video_url, + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL } + + # @!method initialize(video_url:, type: :video_url) + # @param video_url [String, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject] + # @param type [Symbol, :video_url] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject#video_url + module VideoURL + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject } + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String + + # @!method initialize(url:, detail: nil) + # @param url [String] + # @param detail [String] + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject)] + end + end + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + # @!attribute file + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File] + required :file, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File } + + # @!attribute type + # + # @return [Symbol, :file] + required :type, const: :file + + # @!method initialize(file:, type: :file) + # @param file [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File] + # @param type [Symbol, :file] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject#file + class File < Hanzoai::Internal::Type::BaseModel + # @!attribute file_data + # + # @return [String, nil] + optional :file_data, String + + # @!attribute file_id + # + # @return [String, nil] + optional :file_id, String + + # @!attribute filename + # + # @return [String, nil] + optional :filename, String + + # @!attribute format_ + # + # @return [String, nil] + optional :format_, String, api_name: :format + + # @!method initialize(file_data: nil, file_id: nil, filename: nil, format_: nil) + # @param file_data [String] + # @param file_id [String] + # @param filename [String] + # @param format_ [String] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject)] + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1 } + ] + end + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute role + # + # @return [Symbol, :assistant] + required :role, const: :assistant + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl } + + # @!attribute content + # + # @return [String, Array, nil] + optional :content, + union: -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content + }, + nil?: true + + # @!attribute function_call + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall, nil] + optional :function_call, + -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall + }, + nil?: true + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute reasoning_content + # + # @return [String, nil] + optional :reasoning_content, String, nil?: true + + # @!attribute thinking_blocks + # + # @return [Array, nil] + optional :thinking_blocks, + -> { + Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock] + }, + nil?: true + + # @!attribute tool_calls + # + # @return [Array, nil] + optional :tool_calls, + -> { + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall] + }, + nil?: true + + # @!method initialize(cache_control: nil, content: nil, function_call: nil, name: nil, reasoning_content: nil, thinking_blocks: nil, tool_calls: nil, role: :assistant) + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl] + # @param content [String, Array, nil] + # @param function_call [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall, nil] + # @param name [String, nil] + # @param reasoning_content [String, nil] + # @param thinking_blocks [Array, nil] + # @param tool_calls [Array, nil] + # @param role [Symbol, :assistant] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1Array } + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock)] + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1 } + ] + end + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage#function_call + class FunctionCall < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String, nil] + optional :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(arguments: nil, name: nil, provider_specific_fields: nil) + # @param arguments [String] + # @param name [String, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :redacted_thinking] + required :type, const: :redacted_thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute data + # + # @return [String, nil] + optional :data, String + + # @!method initialize(cache_control: nil, data: nil, type: :redacted_thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param data [String] + # @param type [Symbol, :redacted_thinking] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock)] + end + + class ToolCall < Hanzoai::Internal::Type::BaseModel + # @!attribute id + # + # @return [String, nil] + required :id, String, nil?: true + + # @!attribute function + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function] + required :function, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function } + + # @!attribute type + # + # @return [Symbol, :function] + required :type, const: :function + + # @!method initialize(id:, function:, type: :function) + # @param id [String, nil] + # @param function [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function] + # @param type [Symbol, :function] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall#function + class Function < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String, nil] + optional :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(arguments: nil, name: nil, provider_specific_fields: nil) + # @param arguments [String] + # @param name [String, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + end + end + end + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content } + + # @!attribute role + # + # @return [Symbol, :tool] + required :role, const: :tool + + # @!attribute tool_call_id + # + # @return [String] + 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] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1Array } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[-> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + }] + end + end + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::Content } + + # @!attribute role + # + # @return [Symbol, :system] + required :role, const: :system + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl } + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!method initialize(content:, cache_control: nil, name: nil, role: :system) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl] + # @param name [String] + # @param role [Symbol, :system] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::Content::UnionMember1Array } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + end + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array, nil] + required :content, + union: -> { + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content + }, + nil?: true + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute role + # + # @return [Symbol, :function] + required :role, const: :function + + # @!attribute tool_call_id + # + # @return [String, nil] + required :tool_call_id, String, nil?: true + + # @!method initialize(content:, name:, tool_call_id:, role: :function) + # @param content [String, Array, nil] + # @param name [String] + # @param tool_call_id [String, nil] + # @param role [Symbol, :function] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1Array } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 } + ] + end + end + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::Content } + + # @!attribute role + # + # @return [Symbol, :developer] + required :role, const: :developer + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl } + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!method initialize(content:, cache_control: nil, name: nil, role: :developer) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl] + # @param name [String] + # @param role [Symbol, :developer] + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::Content::UnionMember1Array } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + end + + # @see Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage, Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage)] + end + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::FunctionCall::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + + module Stop + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::Stop::StringArray } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + StringArray = Hanzoai::Internal::Type::ArrayOf[String] + end + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Chat::CompletionCreateParams::ToolChoice::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end end end end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb index 5a39d638..e5881534 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_list_params.rb @@ -13,8 +13,14 @@ class PassThroughEndpointListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :endpoint_id, String, nil?: true - # @!method initialize(endpoint_id: nil, request_options: {}) + # @!attribute team_id + # + # @return [String, nil] + optional :team_id, String, nil?: true + + # @!method initialize(endpoint_id: nil, team_id: nil, request_options: {}) # @param endpoint_id [String, nil] + # @param team_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb b/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb index ed4bb0d8..ff436a31 100644 --- a/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb +++ b/lib/hanzoai/models/config/pass_through_endpoint_update_params.rb @@ -4,7 +4,7 @@ module Hanzoai module Models module Config # @see Hanzoai::Resources::Config::PassThroughEndpoint#update - class PassThroughEndpointUpdateParams < Hanzoai::Internal::Type::BaseModel + class PassThroughEndpointUpdateParams < Hanzoai::Models::Config::PassThroughGenericEndpoint extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters diff --git a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb index 2add888c..ef64ed81 100644 --- a/lib/hanzoai/models/config/pass_through_generic_endpoint.rb +++ b/lib/hanzoai/models/config/pass_through_generic_endpoint.rb @@ -4,15 +4,8 @@ module Hanzoai module Models module Config class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel - # @!attribute headers - # Key-value pairs of headers to be forwarded with the request. You can set any key - # value pair here and it will be forwarded to your target endpoint - # - # @return [Object] - required :headers, Hanzoai::Internal::Type::Unknown - # @!attribute path - # The route to be added to the LLM Proxy Server. + # The route to be added to the LiteLLM Proxy Server. # # @return [String] required :path, String @@ -23,15 +16,107 @@ class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel # @return [String] required :target, String - # @!method initialize(headers:, path:, target:) + # @!attribute id + # Optional unique identifier for the pass-through endpoint. If not provided, + # endpoints will be identified by path for backwards compatibility. + # + # @return [String, nil] + optional :id, String, nil?: true + + # @!attribute auth + # Whether authentication is required for the pass-through endpoint. If True, + # requests to the endpoint will require a valid LiteLLM API key. + # + # @return [Boolean, nil] + optional :auth, Hanzoai::Internal::Type::Boolean + + # @!attribute cost_per_request + # The USD cost per request to the target endpoint. This is used to calculate the + # cost of the request to the target endpoint. + # + # @return [Float, nil] + optional :cost_per_request, Float + + # @!attribute guardrails + # Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # names, values are optional settings for field targeting. When set, all + # org/team/key level guardrails will also execute. Defaults to None (no guardrails + # execute). + # + # @return [Hash{Symbol=>Hanzoai::Models::Config::PassThroughGenericEndpoint::Guardrail, nil}, nil] + optional :guardrails, + -> { + Hanzoai::Internal::Type::HashOf[Hanzoai::Config::PassThroughGenericEndpoint::Guardrail, + nil?: true] + }, + nil?: true + + # @!attribute headers + # Key-value pairs of headers to be forwarded with the request. You can set any key + # value pair here and it will be forwarded to your target endpoint + # + # @return [Hash{Symbol=>Object}, nil] + optional :headers, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute include_subpath + # If True, requests to subpaths of the path will be forwarded to the target + # endpoint. For example, if the path is /bria and include_subpath is True, + # requests to /bria/v1/text-to-image/base/2.3 will be forwarded to the target + # endpoint. + # + # @return [Boolean, nil] + optional :include_subpath, Hanzoai::Internal::Type::Boolean + + # @!method initialize(path:, target:, id: nil, auth: nil, cost_per_request: nil, guardrails: nil, headers: nil, include_subpath: nil) # Some parameter documentations has been truncated, see # {Hanzoai::Models::Config::PassThroughGenericEndpoint} for more details. # - # @param headers [Object] Key-value pairs of headers to be forwarded with the request. You can set any key - # - # @param path [String] The route to be added to the LLM Proxy Server. + # @param path [String] The route to be added to the LiteLLM Proxy Server. # # @param target [String] The URL to which requests for this path should be forwarded. + # + # @param id [String, nil] Optional unique identifier for the pass-through endpoint. If not provided, endpo + # + # @param auth [Boolean] Whether authentication is required for the pass-through endpoint. If True, reque + # + # @param cost_per_request [Float] The USD cost per request to the target endpoint. This is used to calculate the c + # + # @param guardrails [Hash{Symbol=>Hanzoai::Models::Config::PassThroughGenericEndpoint::Guardrail, nil}, nil] Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # + # @param headers [Hash{Symbol=>Object}] Key-value pairs of headers to be forwarded with the request. You can set any key + # + # @param include_subpath [Boolean] If True, requests to subpaths of the path will be forwarded to the target endpoi + + class Guardrail < Hanzoai::Internal::Type::BaseModel + # @!attribute request_fields + # JSONPath expressions for input field targeting (pre_call). Examples: 'query', + # 'documents[*].text', 'messages[*].content'. If not specified, guardrail runs on + # entire request payload. + # + # @return [Array, nil] + optional :request_fields, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute response_fields + # JSONPath expressions for output field targeting (post_call). Examples: + # 'results[*].text', 'output'. If not specified, guardrail runs on entire response + # payload. + # + # @return [Array, nil] + optional :response_fields, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(request_fields: nil, response_fields: nil) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Config::PassThroughGenericEndpoint::Guardrail} for more + # details. + # + # Settings for a specific guardrail on a passthrough endpoint. + # + # Allows field-level targeting for guardrail execution. + # + # @param request_fields [Array, nil] JSONPath expressions for input field targeting (pre_call). Examples: 'query', 'd + # + # @param response_fields [Array, nil] JSONPath expressions for output field targeting (post_call). Examples: 'results[ + end end end end diff --git a/lib/hanzoai/models/configurable_clientside_params_custom_auth.rb b/lib/hanzoai/models/configurable_clientside_params_custom_auth.rb deleted file mode 100644 index f7a671ca..00000000 --- a/lib/hanzoai/models/configurable_clientside_params_custom_auth.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -module Hanzoai - module Models - class ConfigurableClientsideParamsCustomAuth < Hanzoai::Internal::Type::BaseModel - # @!attribute api_base - # - # @return [String] - required :api_base, String - - # @!method initialize(api_base:) - # @param api_base [String] - end - end -end diff --git a/lib/hanzoai/models/credential_create_params.rb b/lib/hanzoai/models/credential_create_params.rb index 659e7e42..1f5fa9d0 100644 --- a/lib/hanzoai/models/credential_create_params.rb +++ b/lib/hanzoai/models/credential_create_params.rb @@ -9,8 +9,8 @@ class CredentialCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute credential_info # - # @return [Object] - required :credential_info, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}] + required :credential_info, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute credential_name # @@ -19,8 +19,10 @@ class CredentialCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute credential_values # - # @return [Object, nil] - optional :credential_values, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :credential_values, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_id # @@ -28,9 +30,9 @@ class CredentialCreateParams < Hanzoai::Internal::Type::BaseModel optional :model_id, String, nil?: true # @!method initialize(credential_info:, credential_name:, credential_values: nil, model_id: nil, request_options: {}) - # @param credential_info [Object] + # @param credential_info [Hash{Symbol=>Object}] # @param credential_name [String] - # @param credential_values [Object, nil] + # @param credential_values [Hash{Symbol=>Object}, nil] # @param model_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/credential_item.rb b/lib/hanzoai/models/credential_item.rb index 435fa194..df8703af 100644 --- a/lib/hanzoai/models/credential_item.rb +++ b/lib/hanzoai/models/credential_item.rb @@ -5,8 +5,8 @@ module Models class CredentialItem < Hanzoai::Internal::Type::BaseModel # @!attribute credential_info # - # @return [Object] - required :credential_info, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}] + required :credential_info, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute credential_name # @@ -15,13 +15,13 @@ class CredentialItem < Hanzoai::Internal::Type::BaseModel # @!attribute credential_values # - # @return [Object] - required :credential_values, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}] + required :credential_values, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!method initialize(credential_info:, credential_name:, credential_values:) - # @param credential_info [Object] + # @param credential_info [Hash{Symbol=>Object}] # @param credential_name [String] - # @param credential_values [Object] + # @param credential_values [Hash{Symbol=>Object}] end end end diff --git a/lib/hanzoai/models/customer_create_params.rb b/lib/hanzoai/models/customer_create_params.rb index 2271d600..82435e70 100644 --- a/lib/hanzoai/models/customer_create_params.rb +++ b/lib/hanzoai/models/customer_create_params.rb @@ -42,6 +42,12 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :budget_id, String, nil?: true + # @!attribute budget_reset_at + # Datetime when the budget is reset + # + # @return [Time, nil] + optional :budget_reset_at, Time, nil?: true + # @!attribute default_model # # @return [String, nil] @@ -80,13 +86,18 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :soft_budget, Float, nil?: true + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float, nil?: true + # @!attribute tpm_limit # Max tokens per minute, allowed for this budget id. # # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!method initialize(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @!method initialize(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, budget_reset_at: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, spend: nil, tpm_limit: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::CustomerCreateParams} for more details. # @@ -102,6 +113,8 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # # @param budget_id [String, nil] # + # @param budget_reset_at [Time, nil] Datetime when the budget is reset + # # @param default_model [String, nil] # # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. @@ -114,6 +127,8 @@ class CustomerCreateParams < Hanzoai::Internal::Type::BaseModel # # @param soft_budget [Float, nil] Requests will NOT fail if this is exceeded. Will fire alerting though. # + # @param spend [Float, nil] + # # @param tpm_limit [Integer, nil] Max tokens per minute, allowed for this budget id. # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/customer_list_response.rb b/lib/hanzoai/models/customer_list_response.rb index 29cb273a..44c4810c 100644 --- a/lib/hanzoai/models/customer_list_response.rb +++ b/lib/hanzoai/models/customer_list_response.rb @@ -2,122 +2,7 @@ module Hanzoai module Models - class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel - # @!attribute blocked - # - # @return [Boolean] - required :blocked, Hanzoai::Internal::Type::Boolean - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute alias_ - # - # @return [String, nil] - optional :alias_, String, api_name: :alias, nil?: true - - # @!attribute allowed_model_region - # - # @return [Symbol, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion, nil] - optional :allowed_model_region, - enum: -> { Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion }, - nil?: true - - # @!attribute default_model - # - # @return [String, nil] - optional :default_model, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, nil] - optional :llm_budget_table, -> { Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable }, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) - # @param blocked [Boolean] - # - # @param user_id [String] - # - # @param alias_ [String, nil] - # - # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion, nil] - # - # @param default_model [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - - # @see Hanzoai::Models::CustomerListResponseItem#allowed_model_region - module AllowedModelRegion - extend Hanzoai::Internal::Type::Enum - - EU = :eu - US = :us - - # @!method self.values - # @return [Array] - end - - # @see Hanzoai::Models::CustomerListResponseItem#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - # @type [Hanzoai::Internal::Type::Converter] - CustomerListResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::CustomerListResponseItem }] + CustomerListResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::LiteLlmEndUserTable }] end end diff --git a/lib/hanzoai/models/customer_retrieve_info_response.rb b/lib/hanzoai/models/customer_retrieve_info_response.rb deleted file mode 100644 index aba7f069..00000000 --- a/lib/hanzoai/models/customer_retrieve_info_response.rb +++ /dev/null @@ -1,123 +0,0 @@ -# frozen_string_literal: true - -module Hanzoai - module Models - # @see Hanzoai::Resources::Customer#retrieve_info - class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute blocked - # - # @return [Boolean] - required :blocked, Hanzoai::Internal::Type::Boolean - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute alias_ - # - # @return [String, nil] - optional :alias_, String, api_name: :alias, nil?: true - - # @!attribute allowed_model_region - # - # @return [Symbol, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion, nil] - optional :allowed_model_region, - enum: -> { Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion }, - nil?: true - - # @!attribute default_model - # - # @return [String, nil] - optional :default_model, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable }, - nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, llm_budget_table: nil, spend: nil) - # @param blocked [Boolean] - # - # @param user_id [String] - # - # @param alias_ [String, nil] - # - # @param allowed_model_region [Symbol, Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion, nil] - # - # @param default_model [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - - # @see Hanzoai::Models::CustomerRetrieveInfoResponse#allowed_model_region - module AllowedModelRegion - extend Hanzoai::Internal::Type::Enum - - EU = :eu - US = :us - - # @!method self.values - # @return [Array] - end - - # @see Hanzoai::Models::CustomerRetrieveInfoResponse#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - end -end diff --git a/lib/hanzoai/models/embedding_create_params.rb b/lib/hanzoai/models/embedding_create_params.rb index 3dd53706..1dba7cf5 100644 --- a/lib/hanzoai/models/embedding_create_params.rb +++ b/lib/hanzoai/models/embedding_create_params.rb @@ -9,12 +9,104 @@ class EmbeddingCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute model # + # @return [String] + required :model, String + + # @!attribute api_base + # + # @return [String, nil] + optional :api_base, String, nil?: true + + # @!attribute api_key + # + # @return [String, nil] + optional :api_key, String, nil?: true + + # @!attribute api_type + # + # @return [String, nil] + optional :api_type, String, nil?: true + + # @!attribute api_version + # # @return [String, nil] - optional :model, String, nil?: true + optional :api_version, String, nil?: true - # @!method initialize(model: nil, request_options: {}) - # @param model [String, nil] + # @!attribute caching + # + # @return [Boolean, nil] + optional :caching, Hanzoai::Internal::Type::Boolean + + # @!attribute custom_llm_provider + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :custom_llm_provider, + union: -> { + Hanzoai::EmbeddingCreateParams::CustomLlmProvider + }, + nil?: true + + # @!attribute input + # + # @return [Array, nil] + optional :input, Hanzoai::Internal::Type::ArrayOf[String] + + # @!attribute litellm_call_id + # + # @return [String, nil] + optional :litellm_call_id, String, nil?: true + + # @!attribute litellm_logging_obj + # + # @return [Hash{Symbol=>Object}, nil] + optional :litellm_logging_obj, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute logger_fn + # + # @return [String, nil] + optional :logger_fn, String, nil?: true + + # @!attribute timeout + # + # @return [Integer, nil] + optional :timeout, Integer + + # @!attribute user + # + # @return [String, nil] + optional :user, String, nil?: true + + # @!method initialize(model:, api_base: nil, api_key: nil, api_type: nil, api_version: nil, caching: nil, custom_llm_provider: nil, input: nil, litellm_call_id: nil, litellm_logging_obj: nil, logger_fn: nil, timeout: nil, user: nil, request_options: {}) + # @param model [String] + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_type [String, nil] + # @param api_version [String, nil] + # @param caching [Boolean] + # @param custom_llm_provider [String, Hash{Symbol=>Object}, nil] + # @param input [Array] + # @param litellm_call_id [String, nil] + # @param litellm_logging_obj [Hash{Symbol=>Object}, nil] + # @param logger_fn [String, nil] + # @param timeout [Integer] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::EmbeddingCreateParams::CustomLlmProvider::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end end end end diff --git a/lib/hanzoai/models/engine_embed_params.rb b/lib/hanzoai/models/engine_embed_params.rb index 944afa3a..25e5b70d 100644 --- a/lib/hanzoai/models/engine_embed_params.rb +++ b/lib/hanzoai/models/engine_embed_params.rb @@ -7,8 +7,102 @@ class EngineEmbedParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!method initialize(request_options: {}) + # @!attribute body_model + # + # @return [String] + required :body_model, String, api_name: :model + + # @!attribute api_base + # + # @return [String, nil] + optional :api_base, String, nil?: true + + # @!attribute api_key + # + # @return [String, nil] + optional :api_key, String, nil?: true + + # @!attribute api_type + # + # @return [String, nil] + optional :api_type, String, nil?: true + + # @!attribute api_version + # + # @return [String, nil] + optional :api_version, String, nil?: true + + # @!attribute caching + # + # @return [Boolean, nil] + optional :caching, Hanzoai::Internal::Type::Boolean + + # @!attribute custom_llm_provider + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :custom_llm_provider, union: -> { Hanzoai::EngineEmbedParams::CustomLlmProvider }, nil?: true + + # @!attribute input + # + # @return [Array, nil] + optional :input, Hanzoai::Internal::Type::ArrayOf[String] + + # @!attribute litellm_call_id + # + # @return [String, nil] + optional :litellm_call_id, String, nil?: true + + # @!attribute litellm_logging_obj + # + # @return [Hash{Symbol=>Object}, nil] + optional :litellm_logging_obj, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute logger_fn + # + # @return [String, nil] + optional :logger_fn, String, nil?: true + + # @!attribute timeout + # + # @return [Integer, nil] + optional :timeout, Integer + + # @!attribute user + # + # @return [String, nil] + optional :user, String, nil?: true + + # @!method initialize(body_model:, api_base: nil, api_key: nil, api_type: nil, api_version: nil, caching: nil, custom_llm_provider: nil, input: nil, litellm_call_id: nil, litellm_logging_obj: nil, logger_fn: nil, timeout: nil, user: nil, request_options: {}) + # @param body_model [String] + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_type [String, nil] + # @param api_version [String, nil] + # @param caching [Boolean] + # @param custom_llm_provider [String, Hash{Symbol=>Object}, nil] + # @param input [Array] + # @param litellm_call_id [String, nil] + # @param litellm_logging_obj [Hash{Symbol=>Object}, nil] + # @param logger_fn [String, nil] + # @param timeout [Integer] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::EngineEmbedParams::CustomLlmProvider::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end end end end diff --git a/lib/hanzoai/models/engines/chat_complete_params.rb b/lib/hanzoai/models/engines/chat_complete_params.rb index cb3c5279..9128b9be 100644 --- a/lib/hanzoai/models/engines/chat_complete_params.rb +++ b/lib/hanzoai/models/engines/chat_complete_params.rb @@ -8,8 +8,1285 @@ class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!method initialize(request_options: {}) + # @!attribute messages + # + # @return [Array] + required :messages, + -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Engines::ChatCompleteParams::Message] } + + # @!attribute body_model + # + # @return [String] + required :body_model, String, api_name: :model + + # @!attribute caching + # + # @return [Boolean, nil] + optional :caching, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute context_window_fallback_dict + # + # @return [Hash{Symbol=>String}, nil] + optional :context_window_fallback_dict, Hanzoai::Internal::Type::HashOf[String], nil?: true + + # @!attribute fallbacks + # + # @return [Array, nil] + optional :fallbacks, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute frequency_penalty + # + # @return [Float, nil] + optional :frequency_penalty, Float, nil?: true + + # @!attribute function_call + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :function_call, union: -> { Hanzoai::Engines::ChatCompleteParams::FunctionCall }, nil?: true + + # @!attribute functions + # + # @return [ArrayObject}>, nil] + optional :functions, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute guardrails + # + # @return [Array, nil] + optional :guardrails, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute logit_bias + # + # @return [Hash{Symbol=>Float}, nil] + optional :logit_bias, Hanzoai::Internal::Type::HashOf[Float], nil?: true + + # @!attribute logprobs + # + # @return [Boolean, nil] + optional :logprobs, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute max_tokens + # + # @return [Integer, nil] + optional :max_tokens, Integer, nil?: true + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute n + # + # @return [Integer, nil] + optional :n, Integer, nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute parallel_tool_calls + # + # @return [Boolean, nil] + optional :parallel_tool_calls, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute presence_penalty + # + # @return [Float, nil] + optional :presence_penalty, Float, nil?: true + + # @!attribute response_format + # + # @return [Hash{Symbol=>Object}, nil] + optional :response_format, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute seed + # + # @return [Integer, nil] + optional :seed, Integer, nil?: true + + # @!attribute service_tier + # + # @return [String, nil] + optional :service_tier, String, nil?: true + + # @!attribute stop + # + # @return [String, Array, nil] + optional :stop, union: -> { Hanzoai::Engines::ChatCompleteParams::Stop }, nil?: true + + # @!attribute stream + # + # @return [Boolean, nil] + optional :stream, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute stream_options + # + # @return [Hash{Symbol=>Object}, nil] + optional :stream_options, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute temperature + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute tool_choice + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :tool_choice, union: -> { Hanzoai::Engines::ChatCompleteParams::ToolChoice }, nil?: true + + # @!attribute tools + # + # @return [ArrayObject}>, nil] + optional :tools, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute top_logprobs + # + # @return [Integer, nil] + optional :top_logprobs, Integer, nil?: true + + # @!attribute top_p + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute user + # + # @return [String, nil] + optional :user, String, nil?: true + + # @!method initialize(messages:, body_model:, caching: nil, context_window_fallback_dict: nil, fallbacks: nil, frequency_penalty: nil, function_call: nil, functions: nil, guardrails: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, metadata: nil, n: nil, num_retries: nil, parallel_tool_calls: nil, presence_penalty: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, request_options: {}) + # @param messages [Array] + # @param body_model [String] + # @param caching [Boolean, nil] + # @param context_window_fallback_dict [Hash{Symbol=>String}, nil] + # @param fallbacks [Array, nil] + # @param frequency_penalty [Float, nil] + # @param function_call [String, Hash{Symbol=>Object}, nil] + # @param functions [ArrayObject}>, nil] + # @param guardrails [Array, nil] + # @param logit_bias [Hash{Symbol=>Float}, nil] + # @param logprobs [Boolean, nil] + # @param max_tokens [Integer, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param n [Integer, nil] + # @param num_retries [Integer, nil] + # @param parallel_tool_calls [Boolean, nil] + # @param presence_penalty [Float, nil] + # @param response_format [Hash{Symbol=>Object}, nil] + # @param seed [Integer, nil] + # @param service_tier [String, nil] + # @param stop [String, Array, nil] + # @param stream [Boolean, nil] + # @param stream_options [Hash{Symbol=>Object}, nil] + # @param temperature [Float, nil] + # @param tool_choice [String, Hash{Symbol=>Object}, nil] + # @param tools [ArrayObject}>, nil] + # @param top_logprobs [Integer, nil] + # @param top_p [Float, nil] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + module Message + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage } + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content } + + # @!attribute role + # + # @return [Symbol, :user] + required :role, const: :user + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl } + + # @!method initialize(content:, cache_control: nil, role: :user) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl] + # @param role [Symbol, :user] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1Array } + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + # @!attribute image_url + # + # @return [String, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject] + required :image_url, + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL } + + # @!attribute type + # + # @return [Symbol, :image_url] + required :type, const: :image_url + + # @!method initialize(image_url:, type: :image_url) + # @param image_url [String, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject] + # @param type [Symbol, :image_url] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject#image_url + module ImageURL + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject } + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String + + # @!attribute format_ + # + # @return [String, nil] + optional :format_, String, api_name: :format + + # @!method initialize(url:, detail: nil, format_: nil) + # @param url [String] + # @param detail [String] + # @param format_ [String] + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject)] + end + end + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + # @!attribute input_audio + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio] + required :input_audio, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio } + + # @!attribute type + # + # @return [Symbol, :input_audio] + required :type, const: :input_audio + + # @!method initialize(input_audio:, type: :input_audio) + # @param input_audio [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio] + # @param type [Symbol, :input_audio] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject#input_audio + class InputAudio < Hanzoai::Internal::Type::BaseModel + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute format_ + # + # @return [Symbol, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format] + required :format_, + enum: -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format + }, + api_name: :format + + # @!method initialize(data:, format_:) + # @param data [String] + # @param format_ [Symbol, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio#format_ + module Format + extend Hanzoai::Internal::Type::Enum + + WAV = :wav + MP3 = :mp3 + + # @!method self.values + # @return [Array] + end + end + end + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + # @!attribute citations + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, nil] + required :citations, + -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + }, + nil?: true + + # @!attribute context + # + # @return [String] + required :context, String + + # @!attribute source + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source] + required :source, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source } + + # @!attribute title + # + # @return [String] + required :title, String + + # @!attribute type + # + # @return [Symbol, :document] + required :type, const: :document + + # @!method initialize(citations:, context:, source:, title:, type: :document) + # @param citations [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, nil] + # @param context [String] + # @param source [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source] + # @param title [String] + # @param type [Symbol, :document] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject#citations + class Citations < Hanzoai::Internal::Type::BaseModel + # @!attribute enabled + # + # @return [Boolean] + required :enabled, Hanzoai::Internal::Type::Boolean + + # @!method initialize(enabled:) + # @param enabled [Boolean] + end + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject#source + class Source < Hanzoai::Internal::Type::BaseModel + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute media_type + # + # @return [String] + required :media_type, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!method initialize(data:, media_type:, type: :text) + # @param data [String] + # @param media_type [String] + # @param type [Symbol, :text] + end + end + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :video_url] + required :type, const: :video_url + + # @!attribute video_url + # + # @return [String, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject] + required :video_url, + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL } + + # @!method initialize(video_url:, type: :video_url) + # @param video_url [String, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject] + # @param type [Symbol, :video_url] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject#video_url + module VideoURL + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject } + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String + + # @!method initialize(url:, detail: nil) + # @param url [String] + # @param detail [String] + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject)] + end + end + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + # @!attribute file + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File] + required :file, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File } + + # @!attribute type + # + # @return [Symbol, :file] + required :type, const: :file + + # @!method initialize(file:, type: :file) + # @param file [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File] + # @param type [Symbol, :file] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject#file + class File < Hanzoai::Internal::Type::BaseModel + # @!attribute file_data + # + # @return [String, nil] + optional :file_data, String + + # @!attribute file_id + # + # @return [String, nil] + optional :file_id, String + + # @!attribute filename + # + # @return [String, nil] + optional :filename, String + + # @!attribute format_ + # + # @return [String, nil] + optional :format_, String, api_name: :format + + # @!method initialize(file_data: nil, file_id: nil, filename: nil, format_: nil) + # @param file_data [String] + # @param file_id [String] + # @param filename [String] + # @param format_ [String] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject)] + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1 } + ] + end + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute role + # + # @return [Symbol, :assistant] + required :role, const: :assistant + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl } + + # @!attribute content + # + # @return [String, Array, nil] + optional :content, + union: -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content + }, + nil?: true + + # @!attribute function_call + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall, nil] + optional :function_call, + -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall + }, + nil?: true + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute reasoning_content + # + # @return [String, nil] + optional :reasoning_content, String, nil?: true + + # @!attribute thinking_blocks + # + # @return [Array, nil] + optional :thinking_blocks, + -> { + Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock] + }, + nil?: true + + # @!attribute tool_calls + # + # @return [Array, nil] + optional :tool_calls, + -> { + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall] + }, + nil?: true + + # @!method initialize(cache_control: nil, content: nil, function_call: nil, name: nil, reasoning_content: nil, thinking_blocks: nil, tool_calls: nil, role: :assistant) + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl] + # @param content [String, Array, nil] + # @param function_call [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall, nil] + # @param name [String, nil] + # @param reasoning_content [String, nil] + # @param thinking_blocks [Array, nil] + # @param tool_calls [Array, nil] + # @param role [Symbol, :assistant] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1Array } + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock)] + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1 } + ] + end + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage#function_call + class FunctionCall < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String, nil] + optional :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(arguments: nil, name: nil, provider_specific_fields: nil) + # @param arguments [String] + # @param name [String, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :redacted_thinking] + required :type, const: :redacted_thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute data + # + # @return [String, nil] + optional :data, String + + # @!method initialize(cache_control: nil, data: nil, type: :redacted_thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param data [String] + # @param type [Symbol, :redacted_thinking] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock)] + end + + class ToolCall < Hanzoai::Internal::Type::BaseModel + # @!attribute id + # + # @return [String, nil] + required :id, String, nil?: true + + # @!attribute function + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function] + required :function, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function } + + # @!attribute type + # + # @return [Symbol, :function] + required :type, const: :function + + # @!method initialize(id:, function:, type: :function) + # @param id [String, nil] + # @param function [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function] + # @param type [Symbol, :function] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall#function + class Function < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String, nil] + optional :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(arguments: nil, name: nil, provider_specific_fields: nil) + # @param arguments [String] + # @param name [String, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + end + end + end + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content } + + # @!attribute role + # + # @return [Symbol, :tool] + required :role, const: :tool + + # @!attribute tool_call_id + # + # @return [String] + 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] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1Array } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[-> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + }] + end + end + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content } + + # @!attribute role + # + # @return [Symbol, :system] + required :role, const: :system + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl } + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!method initialize(content:, cache_control: nil, name: nil, role: :system) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl] + # @param name [String] + # @param role [Symbol, :system] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::UnionMember1Array } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + end + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array, nil] + required :content, + union: -> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content + }, + nil?: true + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute role + # + # @return [Symbol, :function] + required :role, const: :function + + # @!attribute tool_call_id + # + # @return [String, nil] + required :tool_call_id, String, nil?: true + + # @!method initialize(content:, name:, tool_call_id:, role: :function) + # @param content [String, Array, nil] + # @param name [String] + # @param tool_call_id [String, nil] + # @param role [Symbol, :function] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1Array } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[-> { + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 + }] + end + end + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content } + + # @!attribute role + # + # @return [Symbol, :developer] + required :role, const: :developer + + # @!attribute cache_control + # + # @return [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl } + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!method initialize(content:, cache_control: nil, name: nil, role: :developer) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl] + # @param name [String] + # @param role [Symbol, :developer] + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::UnionMember1Array } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + end + + # @see Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage, Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage)] + end + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::FunctionCall::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + + module Stop + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::Stop::StringArray } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + StringArray = Hanzoai::Internal::Type::ArrayOf[String] + end + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Engines::ChatCompleteParams::ToolChoice::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end end end end diff --git a/lib/hanzoai/models/file_create_params.rb b/lib/hanzoai/models/file_create_params.rb index 48b1c42f..55a1820f 100644 --- a/lib/hanzoai/models/file_create_params.rb +++ b/lib/hanzoai/models/file_create_params.rb @@ -22,10 +22,28 @@ class FileCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :custom_llm_provider, String - # @!method initialize(file:, purpose:, custom_llm_provider: nil, request_options: {}) + # @!attribute litellm_metadata + # + # @return [String, nil] + optional :litellm_metadata, String, nil?: true + + # @!attribute target_model_names + # + # @return [String, nil] + optional :target_model_names, String + + # @!attribute target_storage + # + # @return [String, nil] + optional :target_storage, String + + # @!method initialize(file:, purpose:, custom_llm_provider: nil, litellm_metadata: nil, target_model_names: nil, target_storage: nil, request_options: {}) # @param file [Pathname, StringIO, IO, String, Hanzoai::FilePart] # @param purpose [String] # @param custom_llm_provider [String] + # @param litellm_metadata [String, nil] + # @param target_model_names [String] + # @param target_storage [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/file_list_params.rb b/lib/hanzoai/models/file_list_params.rb index fc001b12..68a0bc29 100644 --- a/lib/hanzoai/models/file_list_params.rb +++ b/lib/hanzoai/models/file_list_params.rb @@ -12,8 +12,14 @@ class FileListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :purpose, String, nil?: true - # @!method initialize(purpose: nil, request_options: {}) + # @!attribute target_model_names + # + # @return [String, nil] + optional :target_model_names, String, nil?: true + + # @!method initialize(purpose: nil, target_model_names: nil, request_options: {}) # @param purpose [String, nil] + # @param target_model_names [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/fine_tuning/job_create_params.rb b/lib/hanzoai/models/fine_tuning/job_create_params.rb index 393b56b9..4c9d626e 100644 --- a/lib/hanzoai/models/fine_tuning/job_create_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_create_params.rb @@ -4,137 +4,12 @@ module Hanzoai module Models module FineTuning # @see Hanzoai::Resources::FineTuning::Jobs#create - class JobCreateParams < Hanzoai::Internal::Type::BaseModel + class JobCreateParams < Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute custom_llm_provider - # - # @return [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] - required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider } - - # @!attribute model - # - # @return [String] - required :model, String - - # @!attribute training_file - # - # @return [String] - required :training_file, String - - # @!attribute hyperparameters - # - # @return [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] - optional :hyperparameters, -> { Hanzoai::FineTuning::JobCreateParams::Hyperparameters }, nil?: true - - # @!attribute integrations - # - # @return [Array, nil] - optional :integrations, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - - # @!attribute seed - # - # @return [Integer, nil] - optional :seed, Integer, nil?: true - - # @!attribute suffix - # - # @return [String, nil] - optional :suffix, String, nil?: true - - # @!attribute validation_file - # - # @return [String, nil] - optional :validation_file, String, nil?: true - - # @!method initialize(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] - # @param model [String] - # @param training_file [String] - # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] - # @param integrations [Array, nil] - # @param seed [Integer, nil] - # @param suffix [String, nil] - # @param validation_file [String, nil] + # @!method initialize(request_options: {}) # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - - module CustomLlmProvider - extend Hanzoai::Internal::Type::Enum - - OPENAI = :openai - AZURE = :azure - VERTEX_AI = :vertex_ai - - # @!method self.values - # @return [Array] - end - - class Hyperparameters < Hanzoai::Internal::Type::BaseModel - # @!attribute batch_size - # - # @return [String, Integer, nil] - optional :batch_size, - union: -> { Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize }, - nil?: true - - # @!attribute learning_rate_multiplier - # - # @return [String, Float, nil] - optional :learning_rate_multiplier, - union: -> { - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier - }, - nil?: true - - # @!attribute n_epochs - # - # @return [String, Integer, nil] - optional :n_epochs, - union: -> { Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs }, - nil?: true - - # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) - # @param batch_size [String, Integer, nil] - # @param learning_rate_multiplier [String, Float, nil] - # @param n_epochs [String, Integer, nil] - - # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#batch_size - module BatchSize - extend Hanzoai::Internal::Type::Union - - variant String - - variant Integer - - # @!method self.variants - # @return [Array(String, Integer)] - end - - # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier - module LearningRateMultiplier - extend Hanzoai::Internal::Type::Union - - variant String - - variant Float - - # @!method self.variants - # @return [Array(String, Float)] - end - - # @see Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters#n_epochs - module NEpochs - extend Hanzoai::Internal::Type::Union - - variant String - - variant Integer - - # @!method self.variants - # @return [Array(String, Integer)] - end - end end end end diff --git a/lib/hanzoai/models/fine_tuning/job_list_params.rb b/lib/hanzoai/models/fine_tuning/job_list_params.rb index d541ea17..da33a22e 100644 --- a/lib/hanzoai/models/fine_tuning/job_list_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_list_params.rb @@ -8,25 +8,38 @@ class JobListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute custom_llm_provider - # - # @return [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] - required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobListParams::CustomLlmProvider } - # @!attribute after # # @return [String, nil] optional :after, String, nil?: true + # @!attribute custom_llm_provider + # + # @return [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider, nil] + optional :custom_llm_provider, + enum: -> { Hanzoai::FineTuning::JobListParams::CustomLlmProvider }, + nil?: true + # @!attribute limit # # @return [Integer, nil] optional :limit, Integer, nil?: true - # @!method initialize(custom_llm_provider:, after: nil, limit: nil, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] + # @!attribute target_model_names + # Comma separated list of model names to filter by. Example: 'gpt-4o,gpt-4o-mini' + # + # @return [String, nil] + optional :target_model_names, String, nil?: true + + # @!method initialize(after: nil, custom_llm_provider: nil, limit: nil, target_model_names: nil, request_options: {}) # @param after [String, nil] + # + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider, nil] + # # @param limit [Integer, nil] + # + # @param target_model_names [String, nil] Comma separated list of model names to filter by. Example: 'gpt-4o,gpt-4o-mini' + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CustomLlmProvider diff --git a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb index 1de73ce2..1832b961 100644 --- a/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb +++ b/lib/hanzoai/models/fine_tuning/job_retrieve_params.rb @@ -10,11 +10,13 @@ class JobRetrieveParams < Hanzoai::Internal::Type::BaseModel # @!attribute custom_llm_provider # - # @return [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] - required :custom_llm_provider, enum: -> { Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider } + # @return [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider, nil] + optional :custom_llm_provider, + enum: -> { Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider }, + nil?: true - # @!method initialize(custom_llm_provider:, request_options: {}) - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @!method initialize(custom_llm_provider: nil, request_options: {}) + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CustomLlmProvider diff --git a/lib/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rb b/lib/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rb new file mode 100644 index 00000000..c94faf67 --- /dev/null +++ b/lib/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rb @@ -0,0 +1,142 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + module FineTuning + class LiteLlmFineTuningJobCreate < Hanzoai::Internal::Type::BaseModel + # @!attribute model + # + # @return [String] + required :model, String + + # @!attribute training_file + # + # @return [String] + required :training_file, String + + # @!attribute custom_llm_provider + # + # @return [Symbol, Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider, nil] + optional :custom_llm_provider, + enum: -> { Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider }, + nil?: true + + # @!attribute hyperparameters + # + # @return [Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters, nil] + optional :hyperparameters, + -> { Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters }, + nil?: true + + # @!attribute integrations + # + # @return [Array, nil] + optional :integrations, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute seed + # + # @return [Integer, nil] + optional :seed, Integer, nil?: true + + # @!attribute suffix + # + # @return [String, nil] + optional :suffix, String, nil?: true + + # @!attribute validation_file + # + # @return [String, nil] + optional :validation_file, String, nil?: true + + # @!method initialize(model:, training_file:, custom_llm_provider: nil, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil) + # @param model [String] + # @param training_file [String] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider, nil] + # @param hyperparameters [Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters, nil] + # @param integrations [Array, nil] + # @param seed [Integer, nil] + # @param suffix [String, nil] + # @param validation_file [String, nil] + + # @see Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate#custom_llm_provider + module CustomLlmProvider + extend Hanzoai::Internal::Type::Enum + + OPENAI = :openai + AZURE = :azure + VERTEX_AI = :vertex_ai + + # @!method self.values + # @return [Array] + end + + # @see Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate#hyperparameters + class Hyperparameters < Hanzoai::Internal::Type::BaseModel + # @!attribute batch_size + # + # @return [String, Integer, nil] + optional :batch_size, + union: -> { Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::BatchSize }, + nil?: true + + # @!attribute learning_rate_multiplier + # + # @return [String, Float, nil] + optional :learning_rate_multiplier, + union: -> { + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::LearningRateMultiplier + }, + nil?: true + + # @!attribute n_epochs + # + # @return [String, Integer, nil] + optional :n_epochs, + union: -> { Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::NEpochs }, + nil?: true + + # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) + # @param batch_size [String, Integer, nil] + # @param learning_rate_multiplier [String, Float, nil] + # @param n_epochs [String, Integer, nil] + + # @see Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters#batch_size + module BatchSize + extend Hanzoai::Internal::Type::Union + + variant String + + variant Integer + + # @!method self.variants + # @return [Array(String, Integer)] + end + + # @see Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters#learning_rate_multiplier + module LearningRateMultiplier + extend Hanzoai::Internal::Type::Union + + variant String + + variant Float + + # @!method self.variants + # @return [Array(String, Float)] + end + + # @see Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters#n_epochs + module NEpochs + extend Hanzoai::Internal::Type::Union + + variant String + + variant Integer + + # @!method self.variants + # @return [Array(String, Integer)] + end + end + end + end + end +end diff --git a/lib/hanzoai/models/generate_key_response.rb b/lib/hanzoai/models/generate_key_response.rb index 5b2dfb30..440d4400 100644 --- a/lib/hanzoai/models/generate_key_response.rb +++ b/lib/hanzoai/models/generate_key_response.rb @@ -4,11 +4,6 @@ module Hanzoai module Models # @see Hanzoai::Resources::Key#generate class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute expires - # - # @return [Time, nil] - required :expires, Time, nil?: true - # @!attribute key # # @return [String] @@ -21,8 +16,8 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute allowed_cache_controls # @@ -31,6 +26,25 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute allowed_passthrough_routes + # + # @return [Array, nil] + optional :allowed_passthrough_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute allowed_vector_store_indexes + # + # @return [Array, nil] + optional :allowed_vector_store_indexes, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex] }, + nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -48,8 +62,13 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true # @!attribute created_by # @@ -66,6 +85,11 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @return [Array, nil] optional :enforced_params, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + # @!attribute expires + # + # @return [Time, nil] + optional :expires, Time, nil?: true + # @!attribute guardrails # # @return [Array, nil] @@ -81,10 +105,10 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_name, String, nil?: true - # @!attribute llm_budget_table + # @!attribute litellm_budget_table # # @return [Object, nil] - optional :llm_budget_table, Hanzoai::Internal::Type::Unknown + optional :litellm_budget_table, Hanzoai::Internal::Type::Unknown # @!attribute max_budget # @@ -98,39 +122,67 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_rpm_limit # - # @return [Object, nil] - optional :model_rpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_tpm_limit # - # @return [Object, nil] - optional :model_tpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::GenerateKeyResponse::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::GenerateKeyResponse::ObjectPermission }, nil?: true + + # @!attribute organization_id + # + # @return [String, nil] + optional :organization_id, String, nil?: true + # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute router_settings + # Set of params that you can modify via `router.update_settings()`. + # + # @return [Hanzoai::Models::GenerateKeyResponse::RouterSettings, nil] + optional :router_settings, -> { Hanzoai::GenerateKeyResponse::RouterSettings }, nil?: true # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true + # @!attribute rpm_limit_type + # + # @return [Symbol, Hanzoai::Models::GenerateKeyResponse::RpmLimitType, nil] + optional :rpm_limit_type, enum: -> { Hanzoai::GenerateKeyResponse::RpmLimitType }, nil?: true + # @!attribute spend # # @return [Float, nil] @@ -156,6 +208,16 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute tpm_limit_type + # + # @return [Symbol, Hanzoai::Models::GenerateKeyResponse::TpmLimitType, nil] + optional :tpm_limit_type, enum: -> { Hanzoai::GenerateKeyResponse::TpmLimitType }, nil?: true + + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + # @!attribute updated_by # # @return [String, nil] @@ -166,39 +228,291 @@ class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!method initialize(expires:, key:, token: nil, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, created_by: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, key_name: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, token_id: nil, tpm_limit: nil, updated_by: nil, user_id: nil) - # @param expires [Time, nil] + # @!method initialize(key:, token: nil, aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, created_at: nil, created_by: nil, duration: nil, enforced_params: nil, expires: nil, guardrails: nil, key_alias: nil, key_name: nil, litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, permissions: nil, prompts: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, spend: nil, tags: nil, team_id: nil, token_id: nil, tpm_limit: nil, tpm_limit_type: nil, updated_at: nil, updated_by: nil, user_id: nil) # @param key [String] + # # @param token [String, nil] - # @param aliases [Object, nil] + # + # @param aliases [Hash{Symbol=>Object}, nil] + # # @param allowed_cache_controls [Array, nil] + # + # @param allowed_passthrough_routes [Array, nil] + # + # @param allowed_routes [Array, nil] + # + # @param allowed_vector_store_indexes [Array, nil] + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param budget_id [String, nil] - # @param config [Object, nil] + # + # @param config [Hash{Symbol=>Object}, nil] + # + # @param created_at [Time, nil] + # # @param created_by [String, nil] + # # @param duration [String, nil] + # # @param enforced_params [Array, nil] + # + # @param expires [Time, nil] + # # @param guardrails [Array, nil] + # # @param key_alias [String, nil] + # # @param key_name [String, nil] - # @param llm_budget_table [Object] + # + # @param litellm_budget_table [Object] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] + # + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] + # # @param models [Array, nil] - # @param permissions [Object, nil] + # + # @param object_permission [Hanzoai::Models::GenerateKeyResponse::ObjectPermission, nil] + # + # @param organization_id [String, nil] + # + # @param permissions [Hash{Symbol=>Object}, nil] + # + # @param prompts [Array, nil] + # + # @param router_settings [Hanzoai::Models::GenerateKeyResponse::RouterSettings, nil] Set of params that you can modify via `router.update_settings()`. + # # @param rpm_limit [Integer, nil] + # + # @param rpm_limit_type [Symbol, Hanzoai::Models::GenerateKeyResponse::RpmLimitType, nil] + # # @param spend [Float, nil] + # # @param tags [Array, nil] + # # @param team_id [String, nil] + # # @param token_id [String, nil] + # # @param tpm_limit [Integer, nil] + # + # @param tpm_limit_type [Symbol, Hanzoai::Models::GenerateKeyResponse::TpmLimitType, nil] + # + # @param updated_at [Time, nil] + # # @param updated_by [String, nil] + # # @param user_id [String, nil] + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + # @!attribute index_name + # + # @return [String] + required :index_name, String + + # @!attribute index_permissions + # + # @return [Array] + required :index_permissions, + -> { Hanzoai::Internal::Type::ArrayOf[enum: Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission] } + + # @!method initialize(index_name:, index_permissions:) + # @param index_name [String] + # @param index_permissions [Array] + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ = :read + WRITE = :write + + # @!method self.values + # @return [Array] + end + end + + # @see Hanzoai::Models::GenerateKeyResponse#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + # @see Hanzoai::Models::GenerateKeyResponse#router_settings + class RouterSettings < Hanzoai::Internal::Type::BaseModel + # @!attribute allowed_fails + # + # @return [Integer, nil] + optional :allowed_fails, Integer, nil?: true + + # @!attribute context_window_fallbacks + # + # @return [ArrayObject}>, nil] + optional :context_window_fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute cooldown_time + # + # @return [Float, nil] + optional :cooldown_time, Float, nil?: true + + # @!attribute fallbacks + # + # @return [ArrayObject}>, nil] + optional :fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute max_retries + # + # @return [Integer, nil] + optional :max_retries, Integer, nil?: true + + # @!attribute model_group_alias + # + # @return [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + optional :model_group_alias, + -> { + Hanzoai::Internal::Type::HashOf[union: Hanzoai::GenerateKeyResponse::RouterSettings::ModelGroupAlias] + }, + nil?: true + + # @!attribute model_group_retry_policy + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_group_retry_policy, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute retry_after + # + # @return [Float, nil] + optional :retry_after, Float, nil?: true + + # @!attribute routing_strategy + # + # @return [String, nil] + optional :routing_strategy, String, nil?: true + + # @!attribute routing_strategy_args + # + # @return [Hash{Symbol=>Object}, nil] + optional :routing_strategy_args, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute timeout + # + # @return [Float, nil] + optional :timeout, Float, nil?: true + + # @!method initialize(allowed_fails: nil, context_window_fallbacks: nil, cooldown_time: nil, fallbacks: nil, max_retries: nil, model_group_alias: nil, model_group_retry_policy: nil, num_retries: nil, retry_after: nil, routing_strategy: nil, routing_strategy_args: nil, timeout: nil) + # Set of params that you can modify via `router.update_settings()`. + # + # @param allowed_fails [Integer, nil] + # @param context_window_fallbacks [ArrayObject}>, nil] + # @param cooldown_time [Float, nil] + # @param fallbacks [ArrayObject}>, nil] + # @param max_retries [Integer, nil] + # @param model_group_alias [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + # @param model_group_retry_policy [Hash{Symbol=>Object}, nil] + # @param num_retries [Integer, nil] + # @param retry_after [Float, nil] + # @param routing_strategy [String, nil] + # @param routing_strategy_args [Hash{Symbol=>Object}, nil] + # @param timeout [Float, nil] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::GenerateKeyResponse::RouterSettings::ModelGroupAlias::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @see Hanzoai::Models::GenerateKeyResponse#rpm_limit_type + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end + + # @see Hanzoai::Models::GenerateKeyResponse#tpm_limit_type + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end end end end diff --git a/lib/hanzoai/models/global/spend_list_tags_response.rb b/lib/hanzoai/models/global/spend_list_tags_response.rb index 22268d10..2ae53bbe 100644 --- a/lib/hanzoai/models/global/spend_list_tags_response.rb +++ b/lib/hanzoai/models/global/spend_list_tags_response.rb @@ -24,7 +24,7 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute messages # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :messages, union: -> { Hanzoai::Models::Global::SpendListTagsResponseItem::Messages }, nil?: true # @!attribute request_id @@ -34,7 +34,7 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute response # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :response, union: -> { Hanzoai::Models::Global::SpendListTagsResponseItem::Response }, nil?: true # @!attribute start_time @@ -109,9 +109,9 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @param api_key [String] # @param call_type [String] # @param end_time [String, Time, nil] - # @param messages [String, Array, Object, nil] + # @param messages [String, Array, Hash{Symbol=>Object}, nil] # @param request_id [String] - # @param response [String, Array, Object, nil] + # @param response [String, Array, Hash{Symbol=>Object}, nil] # @param start_time [String, Time, nil] # @param api_base [String, nil] # @param cache_hit [String, nil] @@ -146,13 +146,16 @@ module Messages variant -> { Hanzoai::Models::Global::SpendListTagsResponseItem::Messages::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::Global::SpendListTagsResponseItem::Messages::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::Global::SpendListTagsResponseItem#response @@ -163,13 +166,16 @@ module Response variant -> { Hanzoai::Models::Global::SpendListTagsResponseItem::Response::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::Global::SpendListTagsResponseItem::Response::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::Global::SpendListTagsResponseItem#start_time diff --git a/lib/hanzoai/models/global/spend_retrieve_report_response.rb b/lib/hanzoai/models/global/spend_retrieve_report_response.rb index 8a1c3b50..844a262f 100644 --- a/lib/hanzoai/models/global/spend_retrieve_report_response.rb +++ b/lib/hanzoai/models/global/spend_retrieve_report_response.rb @@ -24,7 +24,7 @@ class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute messages # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :messages, union: -> { Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Messages }, nil?: true @@ -36,7 +36,7 @@ class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute response # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :response, union: -> { Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Response }, nil?: true @@ -113,9 +113,9 @@ class SpendRetrieveReportResponseItem < Hanzoai::Internal::Type::BaseModel # @param api_key [String] # @param call_type [String] # @param end_time [String, Time, nil] - # @param messages [String, Array, Object, nil] + # @param messages [String, Array, Hash{Symbol=>Object}, nil] # @param request_id [String] - # @param response [String, Array, Object, nil] + # @param response [String, Array, Hash{Symbol=>Object}, nil] # @param start_time [String, Time, nil] # @param api_base [String, nil] # @param cache_hit [String, nil] @@ -150,13 +150,16 @@ module Messages variant -> { Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Messages::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Messages::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::Global::SpendRetrieveReportResponseItem#response @@ -167,13 +170,16 @@ module Response variant -> { Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Response::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::Global::SpendRetrieveReportResponseItem::Response::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::Global::SpendRetrieveReportResponseItem#start_time diff --git a/lib/hanzoai/models/guardrail_list_response.rb b/lib/hanzoai/models/guardrail_list_response.rb index 97191443..864e5930 100644 --- a/lib/hanzoai/models/guardrail_list_response.rb +++ b/lib/hanzoai/models/guardrail_list_response.rb @@ -14,66 +14,250 @@ class GuardrailListResponse < Hanzoai::Internal::Type::BaseModel # @param guardrails [Array] class Guardrail < Hanzoai::Internal::Type::BaseModel - # @!attribute guardrail_info - # - # @return [Object, nil] - required :guardrail_info, Hanzoai::Internal::Type::Unknown, nil?: true - # @!attribute guardrail_name # # @return [String] required :guardrail_name, String - # @!attribute llm_params - # The returned LLM Params object for /guardrails/list + # @!attribute created_at # - # @return [Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams] - required :llm_params, -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams } + # @return [Time, nil] + optional :created_at, Time, nil?: true - # @!method initialize(guardrail_info:, guardrail_name:, llm_params:) - # @param guardrail_info [Object, nil] + # @!attribute guardrail_definition_location # - # @param guardrail_name [String] + # @return [Symbol, Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation, nil] + optional :guardrail_definition_location, + enum: -> { Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation } + + # @!attribute guardrail_id + # + # @return [String, nil] + optional :guardrail_id, String, nil?: true + + # @!attribute guardrail_info + # + # @return [Hash{Symbol=>Object}, nil] + optional :guardrail_info, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute litellm_params + # + # @return [Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams, nil] + optional :litellm_params, + -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams }, + nil?: true + + # @!attribute updated_at # - # @param llm_params [Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams] The returned LLM Params object for /guardrails/list + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!method initialize(guardrail_name:, created_at: nil, guardrail_definition_location: nil, guardrail_id: nil, guardrail_info: nil, litellm_params: nil, updated_at: nil) + # @param guardrail_name [String] + # @param created_at [Time, nil] + # @param guardrail_definition_location [Symbol, Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation] + # @param guardrail_id [String, nil] + # @param guardrail_info [Hash{Symbol=>Object}, nil] + # @param litellm_params [Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams, nil] + # @param updated_at [Time, nil] + + # @see Hanzoai::Models::GuardrailListResponse::Guardrail#guardrail_definition_location + module GuardrailDefinitionLocation + extend Hanzoai::Internal::Type::Enum + + DB = :db + CONFIG = :config + + # @!method self.values + # @return [Array] + end - # @see Hanzoai::Models::GuardrailListResponse::Guardrail#llm_params - class LlmParams < Hanzoai::Internal::Type::BaseModel - # @!attribute guardrail + # @see Hanzoai::Models::GuardrailListResponse::Guardrail#litellm_params + class LitellmParams < Hanzoai::Internal::Type::BaseModel + # @!attribute additional_provider_specific_params + # Additional provider-specific parameters for generic guardrail APIs # - # @return [String] - required :guardrail, String + # @return [Hash{Symbol=>Object}, nil] + optional :additional_provider_specific_params, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true - # @!attribute mode + # @!attribute api_base + # Base URL for the guardrail service API # - # @return [String, Array] - required :mode, union: -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode } + # @return [String, nil] + optional :api_base, String, nil?: true + + # @!attribute api_endpoint + # Optional custom API endpoint for Model Armor + # + # @return [String, nil] + optional :api_endpoint, String, nil?: true + + # @!attribute api_key + # API key for the guardrail service + # + # @return [String, nil] + optional :api_key, String, nil?: true + + # @!attribute category_thresholds + # Threshold configuration for Lakera guardrail categories + # + # @return [Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds, nil] + optional :category_thresholds, + -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds }, + nil?: true + + # @!attribute credentials + # Path to Google Cloud credentials JSON file or JSON string + # + # @return [String, nil] + optional :credentials, String, nil?: true # @!attribute default_on + # Whether the guardrail is enabled by default + # + # @return [Boolean, nil] + optional :default_on, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute detect_secrets_config + # Configuration for detect-secrets guardrail + # + # @return [Hash{Symbol=>Object}, nil] + optional :detect_secrets_config, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute experimental_use_latest_role_message_only + # When True, guardrails only receive the latest message for the relevant role + # (e.g., newest user input pre-call, newest assistant output post-call) + # + # @return [Boolean, nil] + optional :experimental_use_latest_role_message_only, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute fail_on_error + # Whether to fail the request if Model Armor encounters an error + # + # @return [Boolean, nil] + optional :fail_on_error, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute guard_name + # Name of the guardrail in guardrails.ai + # + # @return [String, nil] + optional :guard_name, String, nil?: true + + # @!attribute location + # Google Cloud location/region (e.g., us-central1) + # + # @return [String, nil] + optional :location, String, nil?: true + + # @!attribute mask_request_content + # Will mask request content if guardrail makes any changes + # + # @return [Boolean, nil] + optional :mask_request_content, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute mask_response_content + # Will mask response content if guardrail makes any changes # # @return [Boolean, nil] - optional :default_on, Hanzoai::Internal::Type::Boolean + optional :mask_response_content, Hanzoai::Internal::Type::Boolean, nil?: true - # @!method initialize(guardrail:, mode:, default_on: nil) - # The returned LLM Params object for /guardrails/list + # @!attribute model + # Optional field if guardrail requires a 'model' parameter # - # @param guardrail [String] - # @param mode [String, Array] - # @param default_on [Boolean] + # @return [String, nil] + optional :model, String, nil?: true - # @see Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams#mode - module Mode - extend Hanzoai::Internal::Type::Union + # @!attribute pangea_input_recipe + # Recipe for input (LLM request) + # + # @return [String, nil] + optional :pangea_input_recipe, String, nil?: true + + # @!attribute pangea_output_recipe + # Recipe for output (LLM response) + # + # @return [String, nil] + optional :pangea_output_recipe, String, nil?: true + + # @!attribute template_id + # The ID of your Model Armor template + # + # @return [String, nil] + optional :template_id, String, nil?: true - variant String + # @!attribute violation_message_template + # Custom message when a guardrail blocks an action. Supports placeholders like + # {tool_name}, {rule_id}, and {default_message}. + # + # @return [String, nil] + optional :violation_message_template, String, nil?: true + + # @!method initialize(additional_provider_specific_params: nil, api_base: nil, api_endpoint: nil, api_key: nil, category_thresholds: nil, credentials: nil, default_on: nil, detect_secrets_config: nil, experimental_use_latest_role_message_only: nil, fail_on_error: nil, guard_name: nil, location: nil, mask_request_content: nil, mask_response_content: nil, model: nil, pangea_input_recipe: nil, pangea_output_recipe: nil, template_id: nil, violation_message_template: nil) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams} for more + # details. + # + # @param additional_provider_specific_params [Hash{Symbol=>Object}, nil] Additional provider-specific parameters for generic guardrail APIs + # + # @param api_base [String, nil] Base URL for the guardrail service API + # + # @param api_endpoint [String, nil] Optional custom API endpoint for Model Armor + # + # @param api_key [String, nil] API key for the guardrail service + # + # @param category_thresholds [Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds, nil] Threshold configuration for Lakera guardrail categories + # + # @param credentials [String, nil] Path to Google Cloud credentials JSON file or JSON string + # + # @param default_on [Boolean, nil] Whether the guardrail is enabled by default + # + # @param detect_secrets_config [Hash{Symbol=>Object}, nil] Configuration for detect-secrets guardrail + # + # @param experimental_use_latest_role_message_only [Boolean, nil] When True, guardrails only receive the latest message for the relevant role (e.g + # + # @param fail_on_error [Boolean, nil] Whether to fail the request if Model Armor encounters an error + # + # @param guard_name [String, nil] Name of the guardrail in guardrails.ai + # + # @param location [String, nil] Google Cloud location/region (e.g., us-central1) + # + # @param mask_request_content [Boolean, nil] Will mask request content if guardrail makes any changes + # + # @param mask_response_content [Boolean, nil] Will mask response content if guardrail makes any changes + # + # @param model [String, nil] Optional field if guardrail requires a 'model' parameter + # + # @param pangea_input_recipe [String, nil] Recipe for input (LLM request) + # + # @param pangea_output_recipe [String, nil] Recipe for output (LLM response) + # + # @param template_id [String, nil] The ID of your Model Armor template + # + # @param violation_message_template [String, nil] Custom message when a guardrail blocks an action. Supports placeholders like {to - variant -> { Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::StringArray } + # @see Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams#category_thresholds + class CategoryThresholds < Hanzoai::Internal::Type::BaseModel + # @!attribute jailbreak + # + # @return [Float, nil] + optional :jailbreak, Float - # @!method self.variants - # @return [Array(String, Array)] + # @!attribute prompt_injection + # + # @return [Float, nil] + optional :prompt_injection, Float - # @type [Hanzoai::Internal::Type::Converter] - StringArray = Hanzoai::Internal::Type::ArrayOf[String] + # @!method initialize(jailbreak: nil, prompt_injection: nil) + # Threshold configuration for Lakera guardrail categories + # + # @param jailbreak [Float] + # @param prompt_injection [Float] end end end diff --git a/lib/hanzoai/models/health_check_all_params.rb b/lib/hanzoai/models/health_check_all_params.rb index 03eb5878..f9e24e2e 100644 --- a/lib/hanzoai/models/health_check_all_params.rb +++ b/lib/hanzoai/models/health_check_all_params.rb @@ -13,9 +13,17 @@ class HealthCheckAllParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model, String, nil?: true - # @!method initialize(model: nil, request_options: {}) + # @!attribute model_id + # Specify the model ID (optional) + # + # @return [String, nil] + optional :model_id, String, nil?: true + + # @!method initialize(model: nil, model_id: nil, request_options: {}) # @param model [String, nil] Specify the model name (optional) # + # @param model_id [String, nil] Specify the model ID (optional) + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/health_check_services_params.rb b/lib/hanzoai/models/health_check_services_params.rb index 6dda6b45..d6543828 100644 --- a/lib/hanzoai/models/health_check_services_params.rb +++ b/lib/hanzoai/models/health_check_services_params.rb @@ -26,6 +26,8 @@ module Service variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::LANGFUSE } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::LANGFUSE_OTEL } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::SLACK } variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::OPENMETER } @@ -38,6 +40,12 @@ module Service variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::DATADOG } + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::GENERIC_API } + + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::ARIZE } + + variant const: -> { Hanzoai::Models::HealthCheckServicesParams::Service::SQS } + variant String # @!method self.variants @@ -51,12 +59,16 @@ module Service SLACK_BUDGET_ALERTS = :slack_budget_alerts LANGFUSE = :langfuse + LANGFUSE_OTEL = :langfuse_otel SLACK = :slack OPENMETER = :openmeter WEBHOOK = :webhook EMAIL = :email BRAINTRUST = :braintrust DATADOG = :datadog + GENERIC_API = :generic_api + ARIZE = :arize + SQS = :sqs # @!endgroup end diff --git a/lib/hanzoai/models/images/generation_create_params.rb b/lib/hanzoai/models/images/generation_create_params.rb index d9554d11..51c41420 100644 --- a/lib/hanzoai/models/images/generation_create_params.rb +++ b/lib/hanzoai/models/images/generation_create_params.rb @@ -8,7 +8,13 @@ class GenerationCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!method initialize(request_options: {}) + # @!attribute model + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!method initialize(model: nil, request_options: {}) + # @param model [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/key/regenerate_key_request.rb b/lib/hanzoai/models/key/regenerate_key_request.rb index 7e7361ce..c6948663 100644 --- a/lib/hanzoai/models/key/regenerate_key_request.rb +++ b/lib/hanzoai/models/key/regenerate_key_request.rb @@ -6,8 +6,8 @@ module Key class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute allowed_cache_controls # @@ -16,6 +16,35 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute allowed_passthrough_routes + # + # @return [Array, nil] + optional :allowed_passthrough_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_vector_store_indexes + # + # @return [Array, nil] + optional :allowed_vector_store_indexes, + -> { + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex] + }, + nil?: true + + # @!attribute auto_rotate + # Whether this key should be automatically rotated + # + # @return [Boolean, nil] + optional :auto_rotate, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -33,8 +62,8 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute duration # @@ -61,6 +90,12 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_alias, String, nil?: true + # @!attribute key_type + # Enum for key types that determine what routes a key can access + # + # @return [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::KeyType, nil] + optional :key_type, enum: -> { Hanzoai::Key::RegenerateKeyRequest::KeyType }, nil?: true + # @!attribute max_budget # # @return [Float, nil] @@ -73,44 +108,87 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_rpm_limit # - # @return [Object, nil] - optional :model_rpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_rpm_limit, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_tpm_limit # - # @return [Object, nil] - optional :model_tpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_tpm_limit, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute new_key + # + # @return [String, nil] + optional :new_key, String, nil?: true + # @!attribute new_master_key # # @return [String, nil] optional :new_master_key, String, nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::Key::RegenerateKeyRequest::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::Key::RegenerateKeyRequest::ObjectPermission }, nil?: true + + # @!attribute organization_id + # + # @return [String, nil] + optional :organization_id, String, nil?: true + # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute rotation_interval + # How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + # + # @return [String, nil] + optional :rotation_interval, String, nil?: true + + # @!attribute router_settings + # Set of params that you can modify via `router.update_settings()`. + # + # @return [Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings, nil] + optional :router_settings, -> { Hanzoai::Key::RegenerateKeyRequest::RouterSettings }, nil?: true # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true + # @!attribute rpm_limit_type + # + # @return [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::RpmLimitType, nil] + optional :rpm_limit_type, enum: -> { Hanzoai::Key::RegenerateKeyRequest::RpmLimitType }, nil?: true + # @!attribute send_invite_email # # @return [Boolean, nil] @@ -141,40 +219,312 @@ class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute tpm_limit_type + # + # @return [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::TpmLimitType, nil] + optional :tpm_limit_type, enum: -> { Hanzoai::Key::RegenerateKeyRequest::TpmLimitType }, nil?: true + # @!attribute user_id # # @return [String, nil] optional :user_id, String, nil?: true - # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, new_master_key: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil) - # @param aliases [Object, nil] + # @!method initialize(aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, key_type: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, new_key: nil, new_master_key: nil, object_permission: nil, organization_id: nil, permissions: nil, prompts: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, tpm_limit_type: nil, user_id: nil) + # @param aliases [Hash{Symbol=>Object}, nil] + # # @param allowed_cache_controls [Array, nil] + # + # @param allowed_passthrough_routes [Array, nil] + # + # @param allowed_routes [Array, nil] + # + # @param allowed_vector_store_indexes [Array, nil] + # + # @param auto_rotate [Boolean, nil] Whether this key should be automatically rotated + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param budget_id [String, nil] - # @param config [Object, nil] + # + # @param config [Hash{Symbol=>Object}, nil] + # # @param duration [String, nil] + # # @param enforced_params [Array, nil] + # # @param guardrails [Array, nil] + # # @param key [String, nil] + # # @param key_alias [String, nil] + # + # @param key_type [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::KeyType, nil] Enum for key types that determine what routes a key can access + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] + # + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] + # # @param models [Array, nil] + # + # @param new_key [String, nil] + # # @param new_master_key [String, nil] - # @param permissions [Object, nil] + # + # @param object_permission [Hanzoai::Models::Key::RegenerateKeyRequest::ObjectPermission, nil] + # + # @param organization_id [String, nil] + # + # @param permissions [Hash{Symbol=>Object}, nil] + # + # @param prompts [Array, nil] + # + # @param rotation_interval [String, nil] How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + # + # @param router_settings [Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings, nil] Set of params that you can modify via `router.update_settings()`. + # # @param rpm_limit [Integer, nil] + # + # @param rpm_limit_type [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::RpmLimitType, nil] + # # @param send_invite_email [Boolean, nil] + # # @param soft_budget [Float, nil] + # # @param spend [Float, nil] + # # @param tags [Array, nil] + # # @param team_id [String, nil] + # # @param tpm_limit [Integer, nil] + # + # @param tpm_limit_type [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::TpmLimitType, nil] + # # @param user_id [String, nil] + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + # @!attribute index_name + # + # @return [String] + required :index_name, String + + # @!attribute index_permissions + # + # @return [Array] + required :index_permissions, + -> { Hanzoai::Internal::Type::ArrayOf[enum: Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission] } + + # @!method initialize(index_name:, index_permissions:) + # @param index_name [String] + # @param index_permissions [Array] + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ = :read + WRITE = :write + + # @!method self.values + # @return [Array] + end + end + + # Enum for key types that determine what routes a key can access + # + # @see Hanzoai::Models::Key::RegenerateKeyRequest#key_type + module KeyType + extend Hanzoai::Internal::Type::Enum + + LLM_API = :llm_api + MANAGEMENT = :management + READ_ONLY = :read_only + DEFAULT = :default + + # @!method self.values + # @return [Array] + end + + # @see Hanzoai::Models::Key::RegenerateKeyRequest#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + # @see Hanzoai::Models::Key::RegenerateKeyRequest#router_settings + class RouterSettings < Hanzoai::Internal::Type::BaseModel + # @!attribute allowed_fails + # + # @return [Integer, nil] + optional :allowed_fails, Integer, nil?: true + + # @!attribute context_window_fallbacks + # + # @return [ArrayObject}>, nil] + optional :context_window_fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute cooldown_time + # + # @return [Float, nil] + optional :cooldown_time, Float, nil?: true + + # @!attribute fallbacks + # + # @return [ArrayObject}>, nil] + optional :fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute max_retries + # + # @return [Integer, nil] + optional :max_retries, Integer, nil?: true + + # @!attribute model_group_alias + # + # @return [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + optional :model_group_alias, + -> { + Hanzoai::Internal::Type::HashOf[union: Hanzoai::Key::RegenerateKeyRequest::RouterSettings::ModelGroupAlias] + }, + nil?: true + + # @!attribute model_group_retry_policy + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_group_retry_policy, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute retry_after + # + # @return [Float, nil] + optional :retry_after, Float, nil?: true + + # @!attribute routing_strategy + # + # @return [String, nil] + optional :routing_strategy, String, nil?: true + + # @!attribute routing_strategy_args + # + # @return [Hash{Symbol=>Object}, nil] + optional :routing_strategy_args, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute timeout + # + # @return [Float, nil] + optional :timeout, Float, nil?: true + + # @!method initialize(allowed_fails: nil, context_window_fallbacks: nil, cooldown_time: nil, fallbacks: nil, max_retries: nil, model_group_alias: nil, model_group_retry_policy: nil, num_retries: nil, retry_after: nil, routing_strategy: nil, routing_strategy_args: nil, timeout: nil) + # Set of params that you can modify via `router.update_settings()`. + # + # @param allowed_fails [Integer, nil] + # @param context_window_fallbacks [ArrayObject}>, nil] + # @param cooldown_time [Float, nil] + # @param fallbacks [ArrayObject}>, nil] + # @param max_retries [Integer, nil] + # @param model_group_alias [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + # @param model_group_retry_policy [Hash{Symbol=>Object}, nil] + # @param num_retries [Integer, nil] + # @param retry_after [Float, nil] + # @param routing_strategy [String, nil] + # @param routing_strategy_args [Hash{Symbol=>Object}, nil] + # @param timeout [Float, nil] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings::ModelGroupAlias::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @see Hanzoai::Models::Key::RegenerateKeyRequest#rpm_limit_type + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end + + # @see Hanzoai::Models::Key::RegenerateKeyRequest#tpm_limit_type + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end end end end diff --git a/lib/hanzoai/models/key_block_params.rb b/lib/hanzoai/models/key_block_params.rb index 9e1cd68b..5ab34210 100644 --- a/lib/hanzoai/models/key_block_params.rb +++ b/lib/hanzoai/models/key_block_params.rb @@ -7,18 +7,19 @@ class KeyBlockParams < Hanzoai::Models::BlockKeyRequest extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(llm_changed_by: nil, request_options: {}) + # @!method initialize(litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::KeyBlockParams} for more details. # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_block_response.rb b/lib/hanzoai/models/key_block_response.rb index 08b207b5..a2427206 100644 --- a/lib/hanzoai/models/key_block_response.rb +++ b/lib/hanzoai/models/key_block_response.rb @@ -11,8 +11,8 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute allowed_cache_controls # @@ -21,6 +21,16 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute auto_rotate + # + # @return [Boolean, nil] + optional :auto_rotate, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -38,8 +48,8 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute created_at # @@ -66,10 +76,22 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_name, String, nil?: true - # @!attribute llm_budget_table + # @!attribute key_rotation_at # - # @return [Object, nil] - optional :llm_budget_table, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Time, nil] + optional :key_rotation_at, Time, nil?: true + + # @!attribute last_rotation_at + # + # @return [Time, nil] + optional :last_rotation_at, Time, nil?: true + + # @!attribute litellm_budget_table + # + # @return [Hash{Symbol=>Object}, nil] + optional :litellm_budget_table, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute max_budget # @@ -83,24 +105,35 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute model_spend # - # @return [Object, nil] - optional :model_spend, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :model_spend, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::KeyBlockResponse::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::Models::KeyBlockResponse::ObjectPermission }, nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true + # @!attribute org_id # # @return [String, nil] @@ -108,8 +141,23 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute rotation_count + # + # @return [Integer, nil] + optional :rotation_count, Integer, nil?: true + + # @!attribute rotation_interval + # + # @return [String, nil] + optional :rotation_interval, String, nil?: true + + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute rpm_limit # @@ -151,35 +199,81 @@ class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!method initialize(token: nil, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, expires: nil, key_alias: nil, key_name: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, org_id: nil, permissions: nil, rpm_limit: nil, soft_budget_cooldown: nil, spend: nil, team_id: nil, tpm_limit: nil, updated_at: nil, updated_by: nil, user_id: nil) + # @!method initialize(token: nil, aliases: nil, allowed_cache_controls: nil, allowed_routes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, expires: nil, key_alias: nil, key_name: nil, key_rotation_at: nil, last_rotation_at: nil, litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, object_permission: nil, object_permission_id: nil, org_id: nil, permissions: nil, rotation_count: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, soft_budget_cooldown: nil, spend: nil, team_id: nil, tpm_limit: nil, updated_at: nil, updated_by: nil, user_id: nil) # @param token [String, nil] - # @param aliases [Object] + # + # @param aliases [Hash{Symbol=>Object}] + # # @param allowed_cache_controls [Array, nil] + # + # @param allowed_routes [Array, nil] + # + # @param auto_rotate [Boolean, nil] + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param budget_reset_at [Time, nil] - # @param config [Object] + # + # @param config [Hash{Symbol=>Object}] + # # @param created_at [Time, nil] + # # @param created_by [String, nil] + # # @param expires [String, Time, nil] + # # @param key_alias [String, nil] + # # @param key_name [String, nil] - # @param llm_budget_table [Object, nil] + # + # @param key_rotation_at [Time, nil] + # + # @param last_rotation_at [Time, nil] + # + # @param litellm_budget_table [Hash{Symbol=>Object}, nil] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] - # @param metadata [Object] - # @param model_max_budget [Object] - # @param model_spend [Object] + # + # @param metadata [Hash{Symbol=>Object}] + # + # @param model_max_budget [Hash{Symbol=>Object}] + # + # @param model_spend [Hash{Symbol=>Object}] + # # @param models [Array] + # + # @param object_permission [Hanzoai::Models::KeyBlockResponse::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # # @param org_id [String, nil] - # @param permissions [Object] + # + # @param permissions [Hash{Symbol=>Object}] + # + # @param rotation_count [Integer, nil] + # + # @param rotation_interval [String, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] + # # @param rpm_limit [Integer, nil] + # # @param soft_budget_cooldown [Boolean] + # # @param spend [Float] + # # @param team_id [String, nil] + # # @param tpm_limit [Integer, nil] + # # @param updated_at [Time, nil] + # # @param updated_by [String, nil] + # # @param user_id [String, nil] # @see Hanzoai::Models::KeyBlockResponse#expires @@ -193,6 +287,57 @@ module Expires # @!method self.variants # @return [Array(String, Time)] end + + # @see Hanzoai::Models::KeyBlockResponse#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end end end end diff --git a/lib/hanzoai/models/key_delete_params.rb b/lib/hanzoai/models/key_delete_params.rb index bd7942c3..8c68cee9 100644 --- a/lib/hanzoai/models/key_delete_params.rb +++ b/lib/hanzoai/models/key_delete_params.rb @@ -17,14 +17,15 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array, nil] optional :keys, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) + # @!method initialize(key_aliases: nil, keys: nil, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::KeyDeleteParams} for more details. # @@ -32,7 +33,7 @@ class KeyDeleteParams < Hanzoai::Internal::Type::BaseModel # # @param keys [Array, nil] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_generate_params.rb b/lib/hanzoai/models/key_generate_params.rb index b8f504ba..c0f40b63 100644 --- a/lib/hanzoai/models/key_generate_params.rb +++ b/lib/hanzoai/models/key_generate_params.rb @@ -9,8 +9,8 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute allowed_cache_controls # @@ -19,6 +19,31 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute allowed_passthrough_routes + # + # @return [Array, nil] + optional :allowed_passthrough_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute allowed_vector_store_indexes + # + # @return [Array, nil] + optional :allowed_vector_store_indexes, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex] }, + nil?: true + + # @!attribute auto_rotate + # Whether this key should be automatically rotated + # + # @return [Boolean, nil] + optional :auto_rotate, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -36,8 +61,8 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute duration # @@ -64,6 +89,12 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_alias, String, nil?: true + # @!attribute key_type + # Enum for key types that determine what routes a key can access + # + # @return [Symbol, Hanzoai::Models::KeyGenerateParams::KeyType, nil] + optional :key_type, enum: -> { Hanzoai::KeyGenerateParams::KeyType }, nil?: true + # @!attribute max_budget # # @return [Float, nil] @@ -76,39 +107,73 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_rpm_limit # - # @return [Object, nil] - optional :model_rpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_tpm_limit # - # @return [Object, nil] - optional :model_tpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::KeyGenerateParams::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::KeyGenerateParams::ObjectPermission }, nil?: true + + # @!attribute organization_id + # + # @return [String, nil] + optional :organization_id, String, nil?: true + # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute rotation_interval + # How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + # + # @return [String, nil] + optional :rotation_interval, String, nil?: true + + # @!attribute router_settings + # Set of params that you can modify via `router.update_settings()`. + # + # @return [Hanzoai::Models::KeyGenerateParams::RouterSettings, nil] + optional :router_settings, -> { Hanzoai::KeyGenerateParams::RouterSettings }, nil?: true # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true + # @!attribute rpm_limit_type + # + # @return [Symbol, Hanzoai::Models::KeyGenerateParams::RpmLimitType, nil] + optional :rpm_limit_type, enum: -> { Hanzoai::KeyGenerateParams::RpmLimitType }, nil?: true + # @!attribute send_invite_email # # @return [Boolean, nil] @@ -139,33 +204,47 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute tpm_limit_type + # + # @return [Symbol, Hanzoai::Models::KeyGenerateParams::TpmLimitType, nil] + optional :tpm_limit_type, enum: -> { Hanzoai::KeyGenerateParams::TpmLimitType }, nil?: true + # @!attribute user_id # # @return [String, nil] optional :user_id, String, nil?: true - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # @!method initialize(aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, key_type: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, permissions: nil, prompts: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, tpm_limit_type: nil, user_id: nil, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::KeyGenerateParams} for more details. # - # @param aliases [Object, nil] + # @param aliases [Hash{Symbol=>Object}, nil] # # @param allowed_cache_controls [Array, nil] # + # @param allowed_passthrough_routes [Array, nil] + # + # @param allowed_routes [Array, nil] + # + # @param allowed_vector_store_indexes [Array, nil] + # + # @param auto_rotate [Boolean, nil] Whether this key should be automatically rotated + # # @param blocked [Boolean, nil] # # @param budget_duration [String, nil] # # @param budget_id [String, nil] # - # @param config [Object, nil] + # @param config [Hash{Symbol=>Object}, nil] # # @param duration [String, nil] # @@ -177,24 +256,38 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # # @param key_alias [String, nil] # + # @param key_type [Symbol, Hanzoai::Models::KeyGenerateParams::KeyType, nil] Enum for key types that determine what routes a key can access + # # @param max_budget [Float, nil] # # @param max_parallel_requests [Integer, nil] # - # @param metadata [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] # - # @param model_max_budget [Object, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] # - # @param model_rpm_limit [Object, nil] + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] # - # @param model_tpm_limit [Object, nil] + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] # # @param models [Array, nil] # - # @param permissions [Object, nil] + # @param object_permission [Hanzoai::Models::KeyGenerateParams::ObjectPermission, nil] + # + # @param organization_id [String, nil] + # + # @param permissions [Hash{Symbol=>Object}, nil] + # + # @param prompts [Array, nil] + # + # @param rotation_interval [String, nil] How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + # + # @param router_settings [Hanzoai::Models::KeyGenerateParams::RouterSettings, nil] Set of params that you can modify via `router.update_settings()`. # # @param rpm_limit [Integer, nil] # + # @param rpm_limit_type [Symbol, Hanzoai::Models::KeyGenerateParams::RpmLimitType, nil] + # # @param send_invite_email [Boolean, nil] # # @param soft_budget [Float, nil] @@ -207,11 +300,221 @@ class KeyGenerateParams < Hanzoai::Internal::Type::BaseModel # # @param tpm_limit [Integer, nil] # + # @param tpm_limit_type [Symbol, Hanzoai::Models::KeyGenerateParams::TpmLimitType, nil] + # # @param user_id [String, nil] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + # @!attribute index_name + # + # @return [String] + required :index_name, String + + # @!attribute index_permissions + # + # @return [Array] + required :index_permissions, + -> { Hanzoai::Internal::Type::ArrayOf[enum: Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission] } + + # @!method initialize(index_name:, index_permissions:) + # @param index_name [String] + # @param index_permissions [Array] + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ = :read + WRITE = :write + + # @!method self.values + # @return [Array] + end + end + + # Enum for key types that determine what routes a key can access + module KeyType + extend Hanzoai::Internal::Type::Enum + + LLM_API = :llm_api + MANAGEMENT = :management + READ_ONLY = :read_only + DEFAULT = :default + + # @!method self.values + # @return [Array] + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + # @!attribute allowed_fails + # + # @return [Integer, nil] + optional :allowed_fails, Integer, nil?: true + + # @!attribute context_window_fallbacks + # + # @return [ArrayObject}>, nil] + optional :context_window_fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute cooldown_time + # + # @return [Float, nil] + optional :cooldown_time, Float, nil?: true + + # @!attribute fallbacks + # + # @return [ArrayObject}>, nil] + optional :fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute max_retries + # + # @return [Integer, nil] + optional :max_retries, Integer, nil?: true + + # @!attribute model_group_alias + # + # @return [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + optional :model_group_alias, + -> { + Hanzoai::Internal::Type::HashOf[union: Hanzoai::KeyGenerateParams::RouterSettings::ModelGroupAlias] + }, + nil?: true + + # @!attribute model_group_retry_policy + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_group_retry_policy, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute retry_after + # + # @return [Float, nil] + optional :retry_after, Float, nil?: true + + # @!attribute routing_strategy + # + # @return [String, nil] + optional :routing_strategy, String, nil?: true + + # @!attribute routing_strategy_args + # + # @return [Hash{Symbol=>Object}, nil] + optional :routing_strategy_args, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute timeout + # + # @return [Float, nil] + optional :timeout, Float, nil?: true + + # @!method initialize(allowed_fails: nil, context_window_fallbacks: nil, cooldown_time: nil, fallbacks: nil, max_retries: nil, model_group_alias: nil, model_group_retry_policy: nil, num_retries: nil, retry_after: nil, routing_strategy: nil, routing_strategy_args: nil, timeout: nil) + # Set of params that you can modify via `router.update_settings()`. + # + # @param allowed_fails [Integer, nil] + # @param context_window_fallbacks [ArrayObject}>, nil] + # @param cooldown_time [Float, nil] + # @param fallbacks [ArrayObject}>, nil] + # @param max_retries [Integer, nil] + # @param model_group_alias [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + # @param model_group_retry_policy [Hash{Symbol=>Object}, nil] + # @param num_retries [Integer, nil] + # @param retry_after [Float, nil] + # @param routing_strategy [String, nil] + # @param routing_strategy_args [Hash{Symbol=>Object}, nil] + # @param timeout [Float, nil] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::KeyGenerateParams::RouterSettings::ModelGroupAlias::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end end end end diff --git a/lib/hanzoai/models/key_list_params.rb b/lib/hanzoai/models/key_list_params.rb index 5b114a54..8e86f8bc 100644 --- a/lib/hanzoai/models/key_list_params.rb +++ b/lib/hanzoai/models/key_list_params.rb @@ -7,6 +7,18 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + # @!attribute expand + # Expand related objects (e.g. 'user') + # + # @return [Array, nil] + optional :expand, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute include_created_by_keys + # Include keys created by the user + # + # @return [Boolean, nil] + optional :include_created_by_keys, Hanzoai::Internal::Type::Boolean + # @!attribute include_team_keys # Include all keys for teams that user is an admin of. # @@ -19,6 +31,12 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_alias, String, nil?: true + # @!attribute key_hash + # Filter keys by key hash + # + # @return [String, nil] + optional :key_hash, String, nil?: true + # @!attribute organization_id # Filter keys by organization ID # @@ -43,6 +61,24 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :size, Integer + # @!attribute sort_by + # Column to sort by (e.g. 'user_id', 'created_at', 'spend') + # + # @return [String, nil] + optional :sort_by, String, nil?: true + + # @!attribute sort_order + # Sort order ('asc' or 'desc') + # + # @return [String, nil] + optional :sort_order, String + + # @!attribute status + # Filter by status (e.g. 'deleted') + # + # @return [String, nil] + optional :status, String, nil?: true + # @!attribute team_id # Filter keys by team ID # @@ -55,11 +91,17 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!method initialize(include_team_keys: nil, key_alias: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, team_id: nil, user_id: nil, request_options: {}) + # @!method initialize(expand: nil, include_created_by_keys: nil, include_team_keys: nil, key_alias: nil, key_hash: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, sort_by: nil, sort_order: nil, status: nil, team_id: nil, user_id: nil, request_options: {}) + # @param expand [Array, nil] Expand related objects (e.g. 'user') + # + # @param include_created_by_keys [Boolean] Include keys created by the user + # # @param include_team_keys [Boolean] Include all keys for teams that user is an admin of. # # @param key_alias [String, nil] Filter keys by key alias # + # @param key_hash [String, nil] Filter keys by key hash + # # @param organization_id [String, nil] Filter keys by organization ID # # @param page [Integer] Page number @@ -68,6 +110,12 @@ class KeyListParams < Hanzoai::Internal::Type::BaseModel # # @param size [Integer] Page size # + # @param sort_by [String, nil] Column to sort by (e.g. 'user_id', 'created_at', 'spend') + # + # @param sort_order [String] Sort order ('asc' or 'desc') + # + # @param status [String, nil] Filter by status (e.g. 'deleted') + # # @param team_id [String, nil] Filter keys by team ID # # @param user_id [String, nil] Filter keys by user ID diff --git a/lib/hanzoai/models/key_list_response.rb b/lib/hanzoai/models/key_list_response.rb index db7264ba..87fc6b4e 100644 --- a/lib/hanzoai/models/key_list_response.rb +++ b/lib/hanzoai/models/key_list_response.rb @@ -11,7 +11,7 @@ class KeyListResponse < Hanzoai::Internal::Type::BaseModel # @!attribute keys # - # @return [Array, nil] + # @return [Array, nil] optional :keys, -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Models::KeyListResponse::Key] } # @!attribute total_count @@ -26,7 +26,7 @@ class KeyListResponse < Hanzoai::Internal::Type::BaseModel # @!method initialize(current_page: nil, keys: nil, total_count: nil, total_pages: nil) # @param current_page [Integer, nil] - # @param keys [Array] + # @param keys [Array] # @param total_count [Integer, nil] # @param total_pages [Integer, nil] @@ -39,6 +39,10 @@ module Key # Return the row in the db variant -> { Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth } + # Recording of deleted keys for audit purposes. Mirrors LiteLLM_VerificationToken + # plus metadata captured at deletion time. + variant -> { Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken } + class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute token # @@ -47,8 +51,8 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute allowed_cache_controls # @@ -64,11 +68,23 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel enum: -> { Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion }, nil?: true + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + # @!attribute api_key # # @return [String, nil] optional :api_key, String, nil?: true + # @!attribute auto_rotate + # + # @return [Boolean, nil] + optional :auto_rotate, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -86,8 +102,8 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute created_at # @@ -136,15 +152,27 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_name, String, nil?: true + # @!attribute key_rotation_at + # + # @return [Time, nil] + optional :key_rotation_at, Time, nil?: true + # @!attribute last_refreshed_at # # @return [Float, nil] optional :last_refreshed_at, Float, nil?: true - # @!attribute llm_budget_table + # @!attribute last_rotation_at # - # @return [Object, nil] - optional :llm_budget_table, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Time, nil] + optional :last_rotation_at, Time, nil?: true + + # @!attribute litellm_budget_table + # + # @return [Hash{Symbol=>Object}, nil] + optional :litellm_budget_table, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute max_budget # @@ -158,29 +186,64 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute model_spend # - # @return [Object, nil] - optional :model_spend, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :model_spend, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission }, + nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true + # @!attribute org_id # # @return [String, nil] optional :org_id, String, nil?: true + # @!attribute organization_max_budget + # + # @return [Float, nil] + optional :organization_max_budget, Float, nil?: true + + # @!attribute organization_metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :organization_metadata, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute organization_rpm_limit + # + # @return [Integer, nil] + optional :organization_rpm_limit, Integer, nil?: true + + # @!attribute organization_tpm_limit + # + # @return [Integer, nil] + optional :organization_tpm_limit, Integer, nil?: true + # @!attribute parent_otel_span # # @return [Object, nil] @@ -188,8 +251,30 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute request_route + # + # @return [String, nil] + optional :request_route, String, nil?: true + + # @!attribute rotation_count + # + # @return [Integer, nil] + optional :rotation_count, Integer, nil?: true + + # @!attribute rotation_interval + # + # @return [String, nil] + optional :rotation_interval, String, nil?: true + + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute rpm_limit # @@ -241,26 +326,45 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [Hanzoai::Models::Member, nil] optional :team_member, -> { Hanzoai::Member }, nil?: true + # @!attribute team_member_rpm_limit + # + # @return [Integer, nil] + optional :team_member_rpm_limit, Integer, nil?: true + # @!attribute team_member_spend # # @return [Float, nil] optional :team_member_spend, Float, nil?: true + # @!attribute team_member_tpm_limit + # + # @return [Integer, nil] + optional :team_member_tpm_limit, Integer, nil?: true + # @!attribute team_metadata # - # @return [Object, nil] - optional :team_metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :team_metadata, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute team_model_aliases # - # @return [Object, nil] - optional :team_model_aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :team_model_aliases, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute team_models # # @return [Array, nil] optional :team_models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute team_object_permission_id + # + # @return [String, nil] + optional :team_object_permission_id, String, nil?: true + # @!attribute team_rpm_limit # # @return [Integer, nil] @@ -296,6 +400,11 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :updated_by, String, nil?: true + # @!attribute user + # + # @return [Object, nil] + optional :user, Hanzoai::Internal::Type::Unknown + # @!attribute user_email # # @return [String, nil] @@ -306,6 +415,11 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true + # @!attribute user_max_budget + # + # @return [Float, nil] + optional :user_max_budget, Float, nil?: true + # @!attribute user_role # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can # login, view all own keys, view all spend ORG_ADMIN: admin over a specific @@ -319,22 +433,25 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # Customer Roles: CUSTOMER: External users -> these are customers # - # @return [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] - optional :user_role, - enum: -> { Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole }, - nil?: true + # @return [Symbol, Hanzoai::Models::UserRoles, nil] + optional :user_role, enum: -> { Hanzoai::UserRoles }, nil?: true # @!attribute user_rpm_limit # # @return [Integer, nil] optional :user_rpm_limit, Integer, nil?: true + # @!attribute user_spend + # + # @return [Float, nil] + optional :user_spend, Float, nil?: true + # @!attribute user_tpm_limit # # @return [Integer, nil] optional :user_tpm_limit, Integer, nil?: true - # @!method initialize(token: nil, aliases: nil, allowed_cache_controls: nil, allowed_model_region: nil, api_key: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, end_user_id: nil, end_user_max_budget: nil, end_user_rpm_limit: nil, end_user_tpm_limit: nil, expires: nil, key_alias: nil, key_name: nil, last_refreshed_at: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, org_id: nil, parent_otel_span: nil, permissions: nil, rpm_limit: nil, rpm_limit_per_model: nil, soft_budget: nil, soft_budget_cooldown: nil, spend: nil, team_alias: nil, team_blocked: nil, team_id: nil, team_max_budget: nil, team_member: nil, team_member_spend: nil, team_metadata: nil, team_model_aliases: nil, team_models: nil, team_rpm_limit: nil, team_spend: nil, team_tpm_limit: nil, tpm_limit: nil, tpm_limit_per_model: nil, updated_at: nil, updated_by: nil, user_email: nil, user_id: nil, user_role: nil, user_rpm_limit: nil, user_tpm_limit: nil) + # @!method initialize(token: nil, aliases: nil, allowed_cache_controls: nil, allowed_model_region: nil, allowed_routes: nil, api_key: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, end_user_id: nil, end_user_max_budget: nil, end_user_rpm_limit: nil, end_user_tpm_limit: nil, expires: nil, key_alias: nil, key_name: nil, key_rotation_at: nil, last_refreshed_at: nil, last_rotation_at: nil, litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, object_permission: nil, object_permission_id: nil, org_id: nil, organization_max_budget: nil, organization_metadata: nil, organization_rpm_limit: nil, organization_tpm_limit: nil, parent_otel_span: nil, permissions: nil, request_route: nil, rotation_count: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, rpm_limit_per_model: nil, soft_budget: nil, soft_budget_cooldown: nil, spend: nil, team_alias: nil, team_blocked: nil, team_id: nil, team_max_budget: nil, team_member: nil, team_member_rpm_limit: nil, team_member_spend: nil, team_member_tpm_limit: nil, team_metadata: nil, team_model_aliases: nil, team_models: nil, team_object_permission_id: nil, team_rpm_limit: nil, team_spend: nil, team_tpm_limit: nil, tpm_limit: nil, tpm_limit_per_model: nil, updated_at: nil, updated_by: nil, user: nil, user_email: nil, user_id: nil, user_max_budget: nil, user_role: nil, user_rpm_limit: nil, user_spend: nil, user_tpm_limit: nil) # Some parameter documentations has been truncated, see # {Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth} for more details. # @@ -342,21 +459,25 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # @param token [String, nil] # - # @param aliases [Object] + # @param aliases [Hash{Symbol=>Object}] # # @param allowed_cache_controls [Array, nil] # # @param allowed_model_region [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion, nil] # + # @param allowed_routes [Array, nil] + # # @param api_key [String, nil] # + # @param auto_rotate [Boolean, nil] + # # @param blocked [Boolean, nil] # # @param budget_duration [String, nil] # # @param budget_reset_at [Time, nil] # - # @param config [Object] + # @param config [Hash{Symbol=>Object}] # # @param created_at [Time, nil] # @@ -376,27 +497,51 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # @param key_name [String, nil] # + # @param key_rotation_at [Time, nil] + # # @param last_refreshed_at [Float, nil] # - # @param llm_budget_table [Object, nil] + # @param last_rotation_at [Time, nil] + # + # @param litellm_budget_table [Hash{Symbol=>Object}, nil] # # @param max_budget [Float, nil] # # @param max_parallel_requests [Integer, nil] # - # @param metadata [Object] + # @param metadata [Hash{Symbol=>Object}] # - # @param model_max_budget [Object] + # @param model_max_budget [Hash{Symbol=>Object}] # - # @param model_spend [Object] + # @param model_spend [Hash{Symbol=>Object}] # # @param models [Array] # + # @param object_permission [Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # # @param org_id [String, nil] # + # @param organization_max_budget [Float, nil] + # + # @param organization_metadata [Hash{Symbol=>Object}, nil] + # + # @param organization_rpm_limit [Integer, nil] + # + # @param organization_tpm_limit [Integer, nil] + # # @param parent_otel_span [Object] # - # @param permissions [Object] + # @param permissions [Hash{Symbol=>Object}] + # + # @param request_route [String, nil] + # + # @param rotation_count [Integer, nil] + # + # @param rotation_interval [String, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] # # @param rpm_limit [Integer, nil] # @@ -418,14 +563,20 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # @param team_member [Hanzoai::Models::Member, nil] # + # @param team_member_rpm_limit [Integer, nil] + # # @param team_member_spend [Float, nil] # - # @param team_metadata [Object, nil] + # @param team_member_tpm_limit [Integer, nil] # - # @param team_model_aliases [Object, nil] + # @param team_metadata [Hash{Symbol=>Object}, nil] + # + # @param team_model_aliases [Hash{Symbol=>Object}, nil] # # @param team_models [Array] # + # @param team_object_permission_id [String, nil] + # # @param team_rpm_limit [Integer, nil] # # @param team_spend [Float, nil] @@ -440,14 +591,20 @@ class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel # # @param updated_by [String, nil] # + # @param user [Object] + # # @param user_email [String, nil] # # @param user_id [String, nil] # - # @param user_role [Symbol, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole, nil] Admin Roles: + # @param user_max_budget [Float, nil] + # + # @param user_role [Symbol, Hanzoai::Models::UserRoles, nil] Admin Roles: # # @param user_rpm_limit [Integer, nil] # + # @param user_spend [Float, nil] + # # @param user_tpm_limit [Integer, nil] # @see Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth#allowed_model_region @@ -473,37 +630,443 @@ module Expires # @return [Array(String, Time)] end - # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization + # @see Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + end + + class LiteLlmDeletedVerificationToken < Hanzoai::Internal::Type::BaseModel + # @!attribute id # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend + # @return [String, nil] + optional :id, String, nil?: true + + # @!attribute token # - # Team Roles: TEAM: used for JWT auth + # @return [String, nil] + optional :token, String, nil?: true + + # @!attribute aliases # - # Customer Roles: CUSTOMER: External users -> these are customers + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute allowed_cache_controls # - # @see Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth#user_role - module UserRole - extend Hanzoai::Internal::Type::Enum + # @return [Array, nil] + optional :allowed_cache_controls, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true - PROXY_ADMIN = :proxy_admin - PROXY_ADMIN_VIEWER = :proxy_admin_viewer - ORG_ADMIN = :org_admin - INTERNAL_USER = :internal_user - INTERNAL_USER_VIEWER = :internal_user_viewer - TEAM = :team - CUSTOMER = :customer + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true - # @!method self.values - # @return [Array] + # @!attribute auto_rotate + # + # @return [Boolean, nil] + optional :auto_rotate, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute blocked + # + # @return [Boolean, nil] + optional :blocked, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute budget_duration + # + # @return [String, nil] + optional :budget_duration, String, nil?: true + + # @!attribute budget_reset_at + # + # @return [Time, nil] + optional :budget_reset_at, Time, nil?: true + + # @!attribute config + # + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true + + # @!attribute created_by + # + # @return [String, nil] + optional :created_by, String, nil?: true + + # @!attribute deleted_at + # + # @return [Time, nil] + optional :deleted_at, Time, nil?: true + + # @!attribute deleted_by + # + # @return [String, nil] + optional :deleted_by, String, nil?: true + + # @!attribute deleted_by_api_key + # + # @return [String, nil] + optional :deleted_by_api_key, String, nil?: true + + # @!attribute expires + # + # @return [String, Time, nil] + optional :expires, + union: -> { Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::Expires }, + nil?: true + + # @!attribute key_alias + # + # @return [String, nil] + optional :key_alias, String, nil?: true + + # @!attribute key_name + # + # @return [String, nil] + optional :key_name, String, nil?: true + + # @!attribute key_rotation_at + # + # @return [Time, nil] + optional :key_rotation_at, Time, nil?: true + + # @!attribute last_rotation_at + # + # @return [Time, nil] + optional :last_rotation_at, Time, nil?: true + + # @!attribute litellm_budget_table + # + # @return [Hash{Symbol=>Object}, nil] + optional :litellm_budget_table, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute litellm_changed_by + # + # @return [String, nil] + optional :litellm_changed_by, String, nil?: true + + # @!attribute max_budget + # + # @return [Float, nil] + optional :max_budget, Float, nil?: true + + # @!attribute max_parallel_requests + # + # @return [Integer, nil] + optional :max_parallel_requests, Integer, nil?: true + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute model_max_budget + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute model_spend + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_spend, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute models + # + # @return [Array, nil] + optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission }, + nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true + + # @!attribute org_id + # + # @return [String, nil] + optional :org_id, String, nil?: true + + # @!attribute permissions + # + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute rotation_count + # + # @return [Integer, nil] + optional :rotation_count, Integer, nil?: true + + # @!attribute rotation_interval + # + # @return [String, nil] + optional :rotation_interval, String, nil?: true + + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute rpm_limit + # + # @return [Integer, nil] + optional :rpm_limit, Integer, nil?: true + + # @!attribute soft_budget_cooldown + # + # @return [Boolean, nil] + optional :soft_budget_cooldown, Hanzoai::Internal::Type::Boolean + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float + + # @!attribute team_id + # + # @return [String, nil] + optional :team_id, String, nil?: true + + # @!attribute tpm_limit + # + # @return [Integer, nil] + optional :tpm_limit, Integer, nil?: true + + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!attribute updated_by + # + # @return [String, nil] + optional :updated_by, String, nil?: true + + # @!attribute user_id + # + # @return [String, nil] + optional :user_id, String, nil?: true + + # @!method initialize(id: nil, token: nil, aliases: nil, allowed_cache_controls: nil, allowed_routes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, config: nil, created_at: nil, created_by: nil, deleted_at: nil, deleted_by: nil, deleted_by_api_key: nil, expires: nil, key_alias: nil, key_name: nil, key_rotation_at: nil, last_rotation_at: nil, litellm_budget_table: nil, litellm_changed_by: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, object_permission: nil, object_permission_id: nil, org_id: nil, permissions: nil, rotation_count: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, soft_budget_cooldown: nil, spend: nil, team_id: nil, tpm_limit: nil, updated_at: nil, updated_by: nil, user_id: nil) + # Recording of deleted keys for audit purposes. Mirrors LiteLLM_VerificationToken + # plus metadata captured at deletion time. + # + # @param id [String, nil] + # + # @param token [String, nil] + # + # @param aliases [Hash{Symbol=>Object}] + # + # @param allowed_cache_controls [Array, nil] + # + # @param allowed_routes [Array, nil] + # + # @param auto_rotate [Boolean, nil] + # + # @param blocked [Boolean, nil] + # + # @param budget_duration [String, nil] + # + # @param budget_reset_at [Time, nil] + # + # @param config [Hash{Symbol=>Object}] + # + # @param created_at [Time, nil] + # + # @param created_by [String, nil] + # + # @param deleted_at [Time, nil] + # + # @param deleted_by [String, nil] + # + # @param deleted_by_api_key [String, nil] + # + # @param expires [String, Time, nil] + # + # @param key_alias [String, nil] + # + # @param key_name [String, nil] + # + # @param key_rotation_at [Time, nil] + # + # @param last_rotation_at [Time, nil] + # + # @param litellm_budget_table [Hash{Symbol=>Object}, nil] + # + # @param litellm_changed_by [String, nil] + # + # @param max_budget [Float, nil] + # + # @param max_parallel_requests [Integer, nil] + # + # @param metadata [Hash{Symbol=>Object}] + # + # @param model_max_budget [Hash{Symbol=>Object}] + # + # @param model_spend [Hash{Symbol=>Object}] + # + # @param models [Array] + # + # @param object_permission [Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # + # @param org_id [String, nil] + # + # @param permissions [Hash{Symbol=>Object}] + # + # @param rotation_count [Integer, nil] + # + # @param rotation_interval [String, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] + # + # @param rpm_limit [Integer, nil] + # + # @param soft_budget_cooldown [Boolean] + # + # @param spend [Float] + # + # @param team_id [String, nil] + # + # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] + # + # @param updated_by [String, nil] + # + # @param user_id [String, nil] + + # @see Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken#expires + module Expires + extend Hanzoai::Internal::Type::Union + + variant String + + variant Time + + # @!method self.variants + # @return [Array(String, Time)] + end + + # @see Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] end end # @!method self.variants - # @return [Array(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth)] + # @return [Array(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth, Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken)] end end end diff --git a/lib/hanzoai/models/key_regenerate_by_key_params.rb b/lib/hanzoai/models/key_regenerate_by_key_params.rb index 9f1f3e5a..33275a19 100644 --- a/lib/hanzoai/models/key_regenerate_by_key_params.rb +++ b/lib/hanzoai/models/key_regenerate_by_key_params.rb @@ -7,18 +7,19 @@ class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(llm_changed_by: nil, request_options: {}) + # @!method initialize(litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::KeyRegenerateByKeyParams} for more details. # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_unblock_params.rb b/lib/hanzoai/models/key_unblock_params.rb index 0a0b330f..102b674f 100644 --- a/lib/hanzoai/models/key_unblock_params.rb +++ b/lib/hanzoai/models/key_unblock_params.rb @@ -7,18 +7,19 @@ class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(llm_changed_by: nil, request_options: {}) + # @!method initialize(litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::KeyUnblockParams} for more details. # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/key_update_params.rb b/lib/hanzoai/models/key_update_params.rb index 4806241b..3f598855 100644 --- a/lib/hanzoai/models/key_update_params.rb +++ b/lib/hanzoai/models/key_update_params.rb @@ -14,8 +14,8 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute allowed_cache_controls # @@ -24,6 +24,30 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute allowed_passthrough_routes + # + # @return [Array, nil] + optional :allowed_passthrough_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute allowed_vector_store_indexes + # + # @return [Array, nil] + optional :allowed_vector_store_indexes, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex] }, + nil?: true + + # @!attribute auto_rotate + # + # @return [Boolean, nil] + optional :auto_rotate, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -41,8 +65,8 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute duration # @@ -76,39 +100,67 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_rpm_limit # - # @return [Object, nil] - optional :model_rpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_tpm_limit # - # @return [Object, nil] - optional :model_tpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::KeyUpdateParams::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::KeyUpdateParams::ObjectPermission }, nil?: true + # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute rotation_interval + # + # @return [String, nil] + optional :rotation_interval, String, nil?: true + + # @!attribute router_settings + # Set of params that you can modify via `router.update_settings()`. + # + # @return [Hanzoai::Models::KeyUpdateParams::RouterSettings, nil] + optional :router_settings, -> { Hanzoai::KeyUpdateParams::RouterSettings }, nil?: true # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true + # @!attribute rpm_limit_type + # + # @return [Symbol, Hanzoai::Models::KeyUpdateParams::RpmLimitType, nil] + optional :rpm_limit_type, enum: -> { Hanzoai::KeyUpdateParams::RpmLimitType }, nil?: true + # @!attribute spend # # @return [Float, nil] @@ -139,35 +191,49 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute tpm_limit_type + # + # @return [Symbol, Hanzoai::Models::KeyUpdateParams::TpmLimitType, nil] + optional :tpm_limit_type, enum: -> { Hanzoai::KeyUpdateParams::TpmLimitType }, nil?: true + # @!attribute user_id # # @return [String, nil] optional :user_id, String, nil?: true - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(key:, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # @!method initialize(key:, aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, permissions: nil, prompts: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, tpm_limit_type: nil, user_id: nil, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::KeyUpdateParams} for more details. # # @param key [String] # - # @param aliases [Object, nil] + # @param aliases [Hash{Symbol=>Object}, nil] # # @param allowed_cache_controls [Array, nil] # + # @param allowed_passthrough_routes [Array, nil] + # + # @param allowed_routes [Array, nil] + # + # @param allowed_vector_store_indexes [Array, nil] + # + # @param auto_rotate [Boolean, nil] + # # @param blocked [Boolean, nil] # # @param budget_duration [String, nil] # # @param budget_id [String, nil] # - # @param config [Object, nil] + # @param config [Hash{Symbol=>Object}, nil] # # @param duration [String, nil] # @@ -181,20 +247,30 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # # @param max_parallel_requests [Integer, nil] # - # @param metadata [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] # - # @param model_max_budget [Object, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] # - # @param model_rpm_limit [Object, nil] + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] # - # @param model_tpm_limit [Object, nil] + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] # # @param models [Array, nil] # - # @param permissions [Object, nil] + # @param object_permission [Hanzoai::Models::KeyUpdateParams::ObjectPermission, nil] + # + # @param permissions [Hash{Symbol=>Object}, nil] + # + # @param prompts [Array, nil] + # + # @param rotation_interval [String, nil] + # + # @param router_settings [Hanzoai::Models::KeyUpdateParams::RouterSettings, nil] Set of params that you can modify via `router.update_settings()`. # # @param rpm_limit [Integer, nil] # + # @param rpm_limit_type [Symbol, Hanzoai::Models::KeyUpdateParams::RpmLimitType, nil] + # # @param spend [Float, nil] # # @param tags [Array, nil] @@ -207,11 +283,208 @@ class KeyUpdateParams < Hanzoai::Internal::Type::BaseModel # # @param tpm_limit [Integer, nil] # + # @param tpm_limit_type [Symbol, Hanzoai::Models::KeyUpdateParams::TpmLimitType, nil] + # # @param user_id [String, nil] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + # @!attribute index_name + # + # @return [String] + required :index_name, String + + # @!attribute index_permissions + # + # @return [Array] + required :index_permissions, + -> { Hanzoai::Internal::Type::ArrayOf[enum: Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission] } + + # @!method initialize(index_name:, index_permissions:) + # @param index_name [String] + # @param index_permissions [Array] + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ = :read + WRITE = :write + + # @!method self.values + # @return [Array] + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + # @!attribute allowed_fails + # + # @return [Integer, nil] + optional :allowed_fails, Integer, nil?: true + + # @!attribute context_window_fallbacks + # + # @return [ArrayObject}>, nil] + optional :context_window_fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute cooldown_time + # + # @return [Float, nil] + optional :cooldown_time, Float, nil?: true + + # @!attribute fallbacks + # + # @return [ArrayObject}>, nil] + optional :fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute max_retries + # + # @return [Integer, nil] + optional :max_retries, Integer, nil?: true + + # @!attribute model_group_alias + # + # @return [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + optional :model_group_alias, + -> { + Hanzoai::Internal::Type::HashOf[union: Hanzoai::KeyUpdateParams::RouterSettings::ModelGroupAlias] + }, + nil?: true + + # @!attribute model_group_retry_policy + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_group_retry_policy, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute retry_after + # + # @return [Float, nil] + optional :retry_after, Float, nil?: true + + # @!attribute routing_strategy + # + # @return [String, nil] + optional :routing_strategy, String, nil?: true + + # @!attribute routing_strategy_args + # + # @return [Hash{Symbol=>Object}, nil] + optional :routing_strategy_args, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute timeout + # + # @return [Float, nil] + optional :timeout, Float, nil?: true + + # @!method initialize(allowed_fails: nil, context_window_fallbacks: nil, cooldown_time: nil, fallbacks: nil, max_retries: nil, model_group_alias: nil, model_group_retry_policy: nil, num_retries: nil, retry_after: nil, routing_strategy: nil, routing_strategy_args: nil, timeout: nil) + # Set of params that you can modify via `router.update_settings()`. + # + # @param allowed_fails [Integer, nil] + # @param context_window_fallbacks [ArrayObject}>, nil] + # @param cooldown_time [Float, nil] + # @param fallbacks [ArrayObject}>, nil] + # @param max_retries [Integer, nil] + # @param model_group_alias [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + # @param model_group_retry_policy [Hash{Symbol=>Object}, nil] + # @param num_retries [Integer, nil] + # @param retry_after [Float, nil] + # @param routing_strategy [String, nil] + # @param routing_strategy_args [Hash{Symbol=>Object}, nil] + # @param timeout [Float, nil] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::KeyUpdateParams::RouterSettings::ModelGroupAlias::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end end end end diff --git a/lib/hanzoai/models/lite_llm_end_user_table.rb b/lib/hanzoai/models/lite_llm_end_user_table.rb new file mode 100644 index 00000000..92939032 --- /dev/null +++ b/lib/hanzoai/models/lite_llm_end_user_table.rb @@ -0,0 +1,74 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @see Hanzoai::Resources::Customer#retrieve_info + class LiteLlmEndUserTable < Hanzoai::Internal::Type::BaseModel + # @!attribute blocked + # + # @return [Boolean] + required :blocked, Hanzoai::Internal::Type::Boolean + + # @!attribute user_id + # + # @return [String] + required :user_id, String + + # @!attribute alias_ + # + # @return [String, nil] + optional :alias_, String, api_name: :alias, nil?: true + + # @!attribute allowed_model_region + # + # @return [Symbol, Hanzoai::Models::LiteLlmEndUserTable::AllowedModelRegion, nil] + optional :allowed_model_region, + enum: -> { + Hanzoai::LiteLlmEndUserTable::AllowedModelRegion + }, + nil?: true + + # @!attribute default_model + # + # @return [String, nil] + optional :default_model, String, nil?: true + + # @!attribute litellm_budget_table + # Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @return [Hanzoai::Models::BudgetTable, nil] + optional :litellm_budget_table, -> { Hanzoai::BudgetTable }, nil?: true + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float + + # @!method initialize(blocked:, user_id:, alias_: nil, allowed_model_region: nil, default_model: nil, litellm_budget_table: nil, spend: nil) + # @param blocked [Boolean] + # + # @param user_id [String] + # + # @param alias_ [String, nil] + # + # @param allowed_model_region [Symbol, Hanzoai::Models::LiteLlmEndUserTable::AllowedModelRegion, nil] + # + # @param default_model [String, nil] + # + # @param litellm_budget_table [Hanzoai::Models::BudgetTable, nil] Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @param spend [Float] + + # @see Hanzoai::Models::LiteLlmEndUserTable#allowed_model_region + module AllowedModelRegion + extend Hanzoai::Internal::Type::Enum + + EU = :eu + US = :us + + # @!method self.values + # @return [Array] + end + end + end +end diff --git a/lib/hanzoai/models/member.rb b/lib/hanzoai/models/member.rb index a2b76119..98dc09cf 100644 --- a/lib/hanzoai/models/member.rb +++ b/lib/hanzoai/models/member.rb @@ -4,25 +4,38 @@ module Hanzoai module Models class Member < Hanzoai::Internal::Type::BaseModel # @!attribute role + # The role of the user within the team. 'admin' users can manage team settings and + # members, 'user' is a regular team member # # @return [Symbol, Hanzoai::Models::Member::Role] required :role, enum: -> { Hanzoai::Member::Role } # @!attribute user_email + # The email address of the user to add. Either user_id or user_email must be + # provided # # @return [String, nil] optional :user_email, String, nil?: true # @!attribute user_id + # The unique ID of the user to add. Either user_id or user_email must be provided # # @return [String, nil] optional :user_id, String, nil?: true # @!method initialize(role:, user_email: nil, user_id: nil) - # @param role [Symbol, Hanzoai::Models::Member::Role] - # @param user_email [String, nil] - # @param user_id [String, nil] + # Some parameter documentations has been truncated, see {Hanzoai::Models::Member} + # for more details. + # + # @param role [Symbol, Hanzoai::Models::Member::Role] The role of the user within the team. 'admin' users can manage team settings and + # + # @param user_email [String, nil] The email address of the user to add. Either user_id or user_email must be provi + # + # @param user_id [String, nil] The unique ID of the user to add. Either user_id or user_email must be provided + # The role of the user within the team. 'admin' users can manage team settings and + # members, 'user' is a regular team member + # # @see Hanzoai::Models::Member#role module Role extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/model/info_list_params.rb b/lib/hanzoai/models/model/info_list_params.rb index bdf34c57..5a075ec6 100644 --- a/lib/hanzoai/models/model/info_list_params.rb +++ b/lib/hanzoai/models/model/info_list_params.rb @@ -8,13 +8,13 @@ class InfoListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute llm_model_id + # @!attribute litellm_model_id # # @return [String, nil] - optional :llm_model_id, String, nil?: true + optional :litellm_model_id, String, nil?: true - # @!method initialize(llm_model_id: nil, request_options: {}) - # @param llm_model_id [String, nil] + # @!method initialize(litellm_model_id: nil, request_options: {}) + # @param litellm_model_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/model/update_deployment.rb b/lib/hanzoai/models/model/update_deployment.rb index 21eae39f..df64307d 100644 --- a/lib/hanzoai/models/model/update_deployment.rb +++ b/lib/hanzoai/models/model/update_deployment.rb @@ -4,10 +4,10 @@ module Hanzoai module Models module Model class UpdateDeployment < Hanzoai::Internal::Type::BaseModel - # @!attribute llm_params + # @!attribute litellm_params # - # @return [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] - optional :llm_params, -> { Hanzoai::Model::UpdateDeployment::LlmParams }, nil?: true + # @return [Hanzoai::Models::Model::UpdateDeployment::LitellmParams, nil] + optional :litellm_params, -> { Hanzoai::Model::UpdateDeployment::LitellmParams }, nil?: true # @!attribute model_info # @@ -19,13 +19,13 @@ class UpdateDeployment < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :model_name, String, nil?: true - # @!method initialize(llm_params: nil, model_info: nil, model_name: nil) - # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] + # @!method initialize(litellm_params: nil, model_info: nil, model_name: nil) + # @param litellm_params [Hanzoai::Models::Model::UpdateDeployment::LitellmParams, nil] # @param model_info [Hanzoai::Models::ModelInfo, nil] # @param model_name [String, nil] - # @see Hanzoai::Models::Model::UpdateDeployment#llm_params - class LlmParams < Hanzoai::Internal::Type::BaseModel + # @see Hanzoai::Models::Model::UpdateDeployment#litellm_params + class LitellmParams < Hanzoai::Internal::Type::BaseModel # @!attribute api_base # # @return [String, nil] @@ -41,11 +41,36 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :api_version, String, nil?: true + # @!attribute auto_router_config + # + # @return [String, nil] + optional :auto_router_config, String, nil?: true + + # @!attribute auto_router_config_path + # + # @return [String, nil] + optional :auto_router_config_path, String, nil?: true + + # @!attribute auto_router_default_model + # + # @return [String, nil] + optional :auto_router_default_model, String, nil?: true + + # @!attribute auto_router_embedding_model + # + # @return [String, nil] + optional :auto_router_embedding_model, String, nil?: true + # @!attribute aws_access_key_id # # @return [String, nil] optional :aws_access_key_id, String, nil?: true + # @!attribute aws_bedrock_runtime_endpoint + # + # @return [String, nil] + optional :aws_bedrock_runtime_endpoint, String, nil?: true + # @!attribute aws_region_name # # @return [String, nil] @@ -61,12 +86,62 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :budget_duration, String, nil?: true + # @!attribute cache_creation_input_audio_token_cost + # + # @return [Float, nil] + optional :cache_creation_input_audio_token_cost, Float, nil?: true + + # @!attribute cache_creation_input_token_cost + # + # @return [Float, nil] + optional :cache_creation_input_token_cost, Float, nil?: true + + # @!attribute cache_creation_input_token_cost_above_1hr + # + # @return [Float, nil] + optional :cache_creation_input_token_cost_above_1hr, Float, nil?: true + + # @!attribute cache_creation_input_token_cost_above_200k_tokens + # + # @return [Float, nil] + optional :cache_creation_input_token_cost_above_200k_tokens, Float, nil?: true + + # @!attribute cache_read_input_audio_token_cost + # + # @return [Float, nil] + optional :cache_read_input_audio_token_cost, Float, nil?: true + + # @!attribute cache_read_input_token_cost + # + # @return [Float, nil] + optional :cache_read_input_token_cost, Float, nil?: true + + # @!attribute cache_read_input_token_cost_above_200k_tokens + # + # @return [Float, nil] + optional :cache_read_input_token_cost_above_200k_tokens, Float, nil?: true + + # @!attribute cache_read_input_token_cost_flex + # + # @return [Float, nil] + optional :cache_read_input_token_cost_flex, Float, nil?: true + + # @!attribute cache_read_input_token_cost_priority + # + # @return [Float, nil] + optional :cache_read_input_token_cost_priority, Float, nil?: true + + # @!attribute citation_cost_per_token + # + # @return [Float, nil] + optional :citation_cost_per_token, Float, nil?: true + # @!attribute configurable_clientside_auth_params # - # @return [Array, nil] + # @return [Array, nil] optional :configurable_clientside_auth_params, -> { - Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Model::UpdateDeployment::LlmParams::ConfigurableClientsideAuthParam] + Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam] }, nil?: true @@ -75,6 +150,56 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :custom_llm_provider, String, nil?: true + # @!attribute gcs_bucket_name + # + # @return [String, nil] + optional :gcs_bucket_name, String, nil?: true + + # @!attribute input_cost_per_audio_per_second + # + # @return [Float, nil] + optional :input_cost_per_audio_per_second, Float, nil?: true + + # @!attribute input_cost_per_audio_per_second_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_audio_per_second_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_audio_token + # + # @return [Float, nil] + optional :input_cost_per_audio_token, Float, nil?: true + + # @!attribute input_cost_per_character + # + # @return [Float, nil] + optional :input_cost_per_character, Float, nil?: true + + # @!attribute input_cost_per_character_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_character_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_image + # + # @return [Float, nil] + optional :input_cost_per_image, Float, nil?: true + + # @!attribute input_cost_per_image_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_image_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_pixel + # + # @return [Float, nil] + optional :input_cost_per_pixel, Float, nil?: true + + # @!attribute input_cost_per_query + # + # @return [Float, nil] + optional :input_cost_per_query, Float, nil?: true + # @!attribute input_cost_per_second # # @return [Float, nil] @@ -85,10 +210,65 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :input_cost_per_token, Float, nil?: true - # @!attribute llm_trace_id + # @!attribute input_cost_per_token_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_token_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_token_above_200k_tokens + # + # @return [Float, nil] + optional :input_cost_per_token_above_200k_tokens, Float, nil?: true + + # @!attribute input_cost_per_token_batches + # + # @return [Float, nil] + optional :input_cost_per_token_batches, Float, nil?: true + + # @!attribute input_cost_per_token_cache_hit + # + # @return [Float, nil] + optional :input_cost_per_token_cache_hit, Float, nil?: true + + # @!attribute input_cost_per_token_flex + # + # @return [Float, nil] + optional :input_cost_per_token_flex, Float, nil?: true + + # @!attribute input_cost_per_token_priority + # + # @return [Float, nil] + optional :input_cost_per_token_priority, Float, nil?: true + + # @!attribute input_cost_per_video_per_second + # + # @return [Float, nil] + optional :input_cost_per_video_per_second, Float, nil?: true + + # @!attribute input_cost_per_video_per_second_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_video_per_second_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_video_per_second_above_15s_interval + # + # @return [Float, nil] + optional :input_cost_per_video_per_second_above_15s_interval, Float, nil?: true + + # @!attribute input_cost_per_video_per_second_above_8s_interval + # + # @return [Float, nil] + optional :input_cost_per_video_per_second_above_8s_interval, Float, nil?: true + + # @!attribute litellm_credential_name # # @return [String, nil] - optional :llm_trace_id, String, nil?: true + optional :litellm_credential_name, String, nil?: true + + # @!attribute litellm_trace_id + # + # @return [String, nil] + optional :litellm_trace_id, String, nil?: true # @!attribute max_budget # @@ -110,6 +290,18 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Boolean, nil] optional :merge_reasoning_content_in_choices, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute milvus_text_field + # + # @return [String, nil] + optional :milvus_text_field, String, nil?: true + + # @!attribute mock_response + # + # @return [String, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse, Object, nil] + optional :mock_response, + union: -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse }, + nil?: true + # @!attribute model # # @return [String, nil] @@ -117,14 +309,54 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @!attribute model_info # - # @return [Object, nil] - optional :model_info, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_info, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute organization # # @return [String, nil] optional :organization, String, nil?: true + # @!attribute output_cost_per_audio_per_second + # + # @return [Float, nil] + optional :output_cost_per_audio_per_second, Float, nil?: true + + # @!attribute output_cost_per_audio_token + # + # @return [Float, nil] + optional :output_cost_per_audio_token, Float, nil?: true + + # @!attribute output_cost_per_character + # + # @return [Float, nil] + optional :output_cost_per_character, Float, nil?: true + + # @!attribute output_cost_per_character_above_128k_tokens + # + # @return [Float, nil] + optional :output_cost_per_character_above_128k_tokens, Float, nil?: true + + # @!attribute output_cost_per_image + # + # @return [Float, nil] + optional :output_cost_per_image, Float, nil?: true + + # @!attribute output_cost_per_image_token + # + # @return [Float, nil] + optional :output_cost_per_image_token, Float, nil?: true + + # @!attribute output_cost_per_pixel + # + # @return [Float, nil] + optional :output_cost_per_pixel, Float, nil?: true + + # @!attribute output_cost_per_reasoning_token + # + # @return [Float, nil] + optional :output_cost_per_reasoning_token, Float, nil?: true + # @!attribute output_cost_per_second # # @return [Float, nil] @@ -135,6 +367,36 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :output_cost_per_token, Float, nil?: true + # @!attribute output_cost_per_token_above_128k_tokens + # + # @return [Float, nil] + optional :output_cost_per_token_above_128k_tokens, Float, nil?: true + + # @!attribute output_cost_per_token_above_200k_tokens + # + # @return [Float, nil] + optional :output_cost_per_token_above_200k_tokens, Float, nil?: true + + # @!attribute output_cost_per_token_batches + # + # @return [Float, nil] + optional :output_cost_per_token_batches, Float, nil?: true + + # @!attribute output_cost_per_token_flex + # + # @return [Float, nil] + optional :output_cost_per_token_flex, Float, nil?: true + + # @!attribute output_cost_per_token_priority + # + # @return [Float, nil] + optional :output_cost_per_token_priority, Float, nil?: true + + # @!attribute output_cost_per_video_per_second + # + # @return [Float, nil] + optional :output_cost_per_video_per_second, Float, nil?: true + # @!attribute region_name # # @return [String, nil] @@ -145,17 +407,45 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :rpm, Integer, nil?: true + # @!attribute s3_bucket_name + # + # @return [String, nil] + optional :s3_bucket_name, String, nil?: true + + # @!attribute s3_encryption_key_id + # + # @return [String, nil] + optional :s3_encryption_key_id, String, nil?: true + + # @!attribute search_context_cost_per_query + # + # @return [Hash{Symbol=>Object}, nil] + optional :search_context_cost_per_query, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + # @!attribute stream_timeout # # @return [Float, String, nil] optional :stream_timeout, - union: -> { Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout }, + union: -> { Hanzoai::Model::UpdateDeployment::LitellmParams::StreamTimeout }, + nil?: true + + # @!attribute tiered_pricing + # + # @return [ArrayObject}>, nil] + optional :tiered_pricing, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], nil?: true # @!attribute timeout # # @return [Float, String, nil] - optional :timeout, union: -> { Hanzoai::Model::UpdateDeployment::LlmParams::Timeout }, nil?: true + optional :timeout, + union: -> { + Hanzoai::Model::UpdateDeployment::LitellmParams::Timeout + }, + nil?: true # @!attribute tpm # @@ -167,11 +457,21 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Boolean, nil] optional :use_in_pass_through, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute use_litellm_proxy + # + # @return [Boolean, nil] + optional :use_litellm_proxy, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute vector_store_id + # + # @return [String, nil] + optional :vector_store_id, String, nil?: true + # @!attribute vertex_credentials # - # @return [Object, String, nil] + # @return [String, Hash{Symbol=>Object}, nil] optional :vertex_credentials, - union: -> { Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials }, + union: -> { Hanzoai::Model::UpdateDeployment::LitellmParams::VertexCredentials }, nil?: true # @!attribute vertex_location @@ -189,35 +489,93 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :watsonx_region_name, String, nil?: true - # @!method initialize(api_base: nil, api_key: nil, api_version: nil, aws_access_key_id: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, input_cost_per_second: nil, input_cost_per_token: nil, llm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, model: nil, model_info: nil, organization: nil, output_cost_per_second: nil, output_cost_per_token: nil, region_name: nil, rpm: nil, stream_timeout: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, watsonx_region_name: nil) + # @!method initialize(api_base: nil, api_key: nil, api_version: nil, auto_router_config: nil, auto_router_config_path: nil, auto_router_default_model: nil, auto_router_embedding_model: nil, aws_access_key_id: nil, aws_bedrock_runtime_endpoint: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, cache_creation_input_audio_token_cost: nil, cache_creation_input_token_cost: nil, cache_creation_input_token_cost_above_1hr: nil, cache_creation_input_token_cost_above_200k_tokens: nil, cache_read_input_audio_token_cost: nil, cache_read_input_token_cost: nil, cache_read_input_token_cost_above_200k_tokens: nil, cache_read_input_token_cost_flex: nil, cache_read_input_token_cost_priority: nil, citation_cost_per_token: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, gcs_bucket_name: nil, input_cost_per_audio_per_second: nil, input_cost_per_audio_per_second_above_128k_tokens: nil, input_cost_per_audio_token: nil, input_cost_per_character: nil, input_cost_per_character_above_128k_tokens: nil, input_cost_per_image: nil, input_cost_per_image_above_128k_tokens: nil, input_cost_per_pixel: nil, input_cost_per_query: nil, input_cost_per_second: nil, input_cost_per_token: nil, input_cost_per_token_above_128k_tokens: nil, input_cost_per_token_above_200k_tokens: nil, input_cost_per_token_batches: nil, input_cost_per_token_cache_hit: nil, input_cost_per_token_flex: nil, input_cost_per_token_priority: nil, input_cost_per_video_per_second: nil, input_cost_per_video_per_second_above_128k_tokens: nil, input_cost_per_video_per_second_above_15s_interval: nil, input_cost_per_video_per_second_above_8s_interval: nil, litellm_credential_name: nil, litellm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, milvus_text_field: nil, mock_response: nil, model: nil, model_info: nil, organization: nil, output_cost_per_audio_per_second: nil, output_cost_per_audio_token: nil, output_cost_per_character: nil, output_cost_per_character_above_128k_tokens: nil, output_cost_per_image: nil, output_cost_per_image_token: nil, output_cost_per_pixel: nil, output_cost_per_reasoning_token: nil, output_cost_per_second: nil, output_cost_per_token: nil, output_cost_per_token_above_128k_tokens: nil, output_cost_per_token_above_200k_tokens: nil, output_cost_per_token_batches: nil, output_cost_per_token_flex: nil, output_cost_per_token_priority: nil, output_cost_per_video_per_second: nil, region_name: nil, rpm: nil, s3_bucket_name: nil, s3_encryption_key_id: nil, search_context_cost_per_query: nil, stream_timeout: nil, tiered_pricing: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, use_litellm_proxy: nil, vector_store_id: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, watsonx_region_name: nil) # @param api_base [String, nil] # @param api_key [String, nil] # @param api_version [String, nil] + # @param auto_router_config [String, nil] + # @param auto_router_config_path [String, nil] + # @param auto_router_default_model [String, nil] + # @param auto_router_embedding_model [String, nil] # @param aws_access_key_id [String, nil] + # @param aws_bedrock_runtime_endpoint [String, nil] # @param aws_region_name [String, nil] # @param aws_secret_access_key [String, nil] # @param budget_duration [String, nil] - # @param configurable_clientside_auth_params [Array, nil] + # @param cache_creation_input_audio_token_cost [Float, nil] + # @param cache_creation_input_token_cost [Float, nil] + # @param cache_creation_input_token_cost_above_1hr [Float, nil] + # @param cache_creation_input_token_cost_above_200k_tokens [Float, nil] + # @param cache_read_input_audio_token_cost [Float, nil] + # @param cache_read_input_token_cost [Float, nil] + # @param cache_read_input_token_cost_above_200k_tokens [Float, nil] + # @param cache_read_input_token_cost_flex [Float, nil] + # @param cache_read_input_token_cost_priority [Float, nil] + # @param citation_cost_per_token [Float, nil] + # @param configurable_clientside_auth_params [Array, nil] # @param custom_llm_provider [String, nil] + # @param gcs_bucket_name [String, nil] + # @param input_cost_per_audio_per_second [Float, nil] + # @param input_cost_per_audio_per_second_above_128k_tokens [Float, nil] + # @param input_cost_per_audio_token [Float, nil] + # @param input_cost_per_character [Float, nil] + # @param input_cost_per_character_above_128k_tokens [Float, nil] + # @param input_cost_per_image [Float, nil] + # @param input_cost_per_image_above_128k_tokens [Float, nil] + # @param input_cost_per_pixel [Float, nil] + # @param input_cost_per_query [Float, nil] # @param input_cost_per_second [Float, nil] # @param input_cost_per_token [Float, nil] - # @param llm_trace_id [String, nil] + # @param input_cost_per_token_above_128k_tokens [Float, nil] + # @param input_cost_per_token_above_200k_tokens [Float, nil] + # @param input_cost_per_token_batches [Float, nil] + # @param input_cost_per_token_cache_hit [Float, nil] + # @param input_cost_per_token_flex [Float, nil] + # @param input_cost_per_token_priority [Float, nil] + # @param input_cost_per_video_per_second [Float, nil] + # @param input_cost_per_video_per_second_above_128k_tokens [Float, nil] + # @param input_cost_per_video_per_second_above_15s_interval [Float, nil] + # @param input_cost_per_video_per_second_above_8s_interval [Float, nil] + # @param litellm_credential_name [String, nil] + # @param litellm_trace_id [String, nil] # @param max_budget [Float, nil] # @param max_file_size_mb [Float, nil] # @param max_retries [Integer, nil] # @param merge_reasoning_content_in_choices [Boolean, nil] + # @param milvus_text_field [String, nil] + # @param mock_response [String, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse, Object, nil] # @param model [String, nil] - # @param model_info [Object, nil] + # @param model_info [Hash{Symbol=>Object}, nil] # @param organization [String, nil] + # @param output_cost_per_audio_per_second [Float, nil] + # @param output_cost_per_audio_token [Float, nil] + # @param output_cost_per_character [Float, nil] + # @param output_cost_per_character_above_128k_tokens [Float, nil] + # @param output_cost_per_image [Float, nil] + # @param output_cost_per_image_token [Float, nil] + # @param output_cost_per_pixel [Float, nil] + # @param output_cost_per_reasoning_token [Float, nil] # @param output_cost_per_second [Float, nil] # @param output_cost_per_token [Float, nil] + # @param output_cost_per_token_above_128k_tokens [Float, nil] + # @param output_cost_per_token_above_200k_tokens [Float, nil] + # @param output_cost_per_token_batches [Float, nil] + # @param output_cost_per_token_flex [Float, nil] + # @param output_cost_per_token_priority [Float, nil] + # @param output_cost_per_video_per_second [Float, nil] # @param region_name [String, nil] # @param rpm [Integer, nil] + # @param s3_bucket_name [String, nil] + # @param s3_encryption_key_id [String, nil] + # @param search_context_cost_per_query [Hash{Symbol=>Object}, nil] # @param stream_timeout [Float, String, nil] + # @param tiered_pricing [ArrayObject}>, nil] # @param timeout [Float, String, nil] # @param tpm [Integer, nil] # @param use_in_pass_through [Boolean, nil] - # @param vertex_credentials [Object, String, nil] + # @param use_litellm_proxy [Boolean, nil] + # @param vector_store_id [String, nil] + # @param vertex_credentials [String, Hash{Symbol=>Object}, nil] # @param vertex_location [String, nil] # @param vertex_project [String, nil] # @param watsonx_region_name [String, nil] @@ -227,13 +585,588 @@ module ConfigurableClientsideAuthParam variant String - variant -> { Hanzoai::ConfigurableClientsideParamsCustomAuth } + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput } + + class ConfigurableClientsideParamsCustomAuthInput < Hanzoai::Internal::Type::BaseModel + # @!attribute api_base + # + # @return [String] + required :api_base, String + + # @!method initialize(api_base:) + # @param api_base [String] + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput)] + end + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams#mock_response + module MockResponse + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse } + + variant Hanzoai::Internal::Type::Unknown + + class ModelResponse < Hanzoai::Internal::Type::BaseModel + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute choices + # + # @return [ArrayObject}>] + required :choices, + -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice] } + + # @!attribute created + # + # @return [Integer] + required :created, Integer + + # @!attribute object + # + # @return [String] + required :object, String + + # @!attribute model + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!attribute system_fingerprint + # + # @return [String, nil] + optional :system_fingerprint, String, nil?: true + + # @!method initialize(id:, choices:, created:, object:, model: nil, system_fingerprint: nil) + # @param id [String] + # @param choices [ArrayObject}>] + # @param created [Integer] + # @param object [String] + # @param model [String, nil] + # @param system_fingerprint [String, nil] + + module Choice + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices } + + variant -> { Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::StreamingChoiceMap } + + class Choices < Hanzoai::Internal::Type::BaseModel + # @!attribute finish_reason + # + # @return [String] + required :finish_reason, String + + # @!attribute index + # + # @return [Integer] + required :index, Integer + + # @!attribute message + # + # @return [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message] + required :message, + -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message } + + # @!attribute logprobs + # + # @return [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, Object, nil] + optional :logprobs, + union: -> { + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs + }, + nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(finish_reason:, index:, message:, logprobs: nil, provider_specific_fields: nil) + # @param finish_reason [String] + # @param index [Integer] + # @param message [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message] + # @param logprobs [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, Object, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices#message + class Message < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, nil] + required :content, String, nil?: true + + # @!attribute function_call + # + # @return [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall, nil] + required :function_call, + -> { + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall + }, + nil?: true + + # @!attribute role + # + # @return [Symbol, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role] + required :role, + enum: -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role } + + # @!attribute tool_calls + # + # @return [ArrayObject}>, nil] + required :tool_calls, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute annotations + # + # @return [Array, nil] + optional :annotations, + -> do + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation + ] + end, + nil?: true + + # @!attribute audio + # + # @return [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio, nil] + optional :audio, + -> { + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio + }, + nil?: true + + # @!attribute images + # + # @return [Array, nil] + optional :images, + -> do + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image + ] + end, + nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute reasoning_content + # + # @return [String, nil] + optional :reasoning_content, String, nil?: true + + # @!attribute thinking_blocks + # + # @return [Array, nil] + optional :thinking_blocks, + -> do + Hanzoai::Internal::Type::ArrayOf[ + union: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock + ] + end, + nil?: true + + # @!method initialize(content:, function_call:, role:, tool_calls:, annotations: nil, audio: nil, images: nil, provider_specific_fields: nil, reasoning_content: nil, thinking_blocks: nil) + # @param content [String, nil] + # @param function_call [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall, nil] + # @param role [Symbol, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role] + # @param tool_calls [ArrayObject}>, nil] + # @param annotations [Array, nil] + # @param audio [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio, nil] + # @param images [Array, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + # @param reasoning_content [String, nil] + # @param thinking_blocks [Array, nil] + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message#function_call + class FunctionCall < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String] + required :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!method initialize(arguments:, name: nil) + # @param arguments [String] + # @param name [String, nil] + end + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message#role + module Role + extend Hanzoai::Internal::Type::Enum + + ASSISTANT = :assistant + USER = :user + SYSTEM = :system + TOOL = :tool + FUNCTION = :function + + # @!method self.values + # @return [Array] + end + + class Annotation < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type, nil] + optional :type, + enum: -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type } + + # @!attribute url_citation + # + # @return [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation, nil] + optional :url_citation, + -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation } + + # @!method initialize(type: nil, url_citation: nil) + # @param type [Symbol, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type] + # @param url_citation [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation] + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation#type + module Type + extend Hanzoai::Internal::Type::Enum + + URL_CITATION = :url_citation + + # @!method self.values + # @return [Array] + end + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation#url_citation + class URLCitation < Hanzoai::Internal::Type::BaseModel + # @!attribute end_index + # + # @return [Integer, nil] + optional :end_index, Integer + + # @!attribute start_index + # + # @return [Integer, nil] + optional :start_index, Integer + + # @!attribute title + # + # @return [String, nil] + optional :title, String + + # @!attribute url + # + # @return [String, nil] + optional :url, String + + # @!method initialize(end_index: nil, start_index: nil, title: nil, url: nil) + # @param end_index [Integer] + # @param start_index [Integer] + # @param title [String] + # @param url [String] + end + end + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message#audio + class Audio < Hanzoai::Internal::Type::BaseModel + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute expires_at + # + # @return [Integer] + required :expires_at, Integer + + # @!attribute transcript + # + # @return [String] + required :transcript, String + + # @!method initialize(id:, data:, expires_at:, transcript:) + # @param id [String] + # @param data [String] + # @param expires_at [Integer] + # @param transcript [String] + end + + class Image < Hanzoai::Internal::Type::BaseModel + # @!attribute image_url + # + # @return [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL] + required :image_url, + -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL } + + # @!attribute index + # + # @return [Integer] + required :index, Integer + + # @!attribute type + # + # @return [Symbol, :image_url] + required :type, const: :image_url + + # @!method initialize(image_url:, index:, type: :image_url) + # @param image_url [Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL] + # @param index [Integer] + # @param type [Symbol, :image_url] + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image#image_url + class ImageURL < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String, nil?: true + + # @!method initialize(url:, detail: nil) + # @param url [String] + # @param detail [String, nil] + end + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock } + + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :redacted_thinking] + required :type, const: :redacted_thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute data + # + # @return [String, nil] + optional :data, String + + # @!method initialize(cache_control: nil, data: nil, type: :redacted_thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param data [String] + # @param type [Symbol, :redacted_thinking] + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock)] + end + end + + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices#logprobs + module Logprobs + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs } + + variant Hanzoai::Internal::Type::Unknown + + class ChoiceLogprobs < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [Array, nil] + optional :content, + -> do + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content + ] + end, + nil?: true + + # @!method initialize(content: nil) + # @param content [Array, nil] + + class Content < Hanzoai::Internal::Type::BaseModel + # @!attribute token + # + # @return [String] + required :token, String + + # @!attribute logprob + # + # @return [Float] + required :logprob, Float + + # @!attribute top_logprobs + # + # @return [Array] + required :top_logprobs, + -> do + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob + ] + end + + # @!attribute bytes + # + # @return [Array, nil] + optional :bytes, Hanzoai::Internal::Type::ArrayOf[Integer], nil?: true + + # @!method initialize(token:, logprob:, top_logprobs:, bytes: nil) + # @param token [String] + # @param logprob [Float] + # @param top_logprobs [Array] + # @param bytes [Array, nil] + + class TopLogprob < Hanzoai::Internal::Type::BaseModel + # @!attribute token + # + # @return [String] + required :token, String + + # @!attribute logprob + # + # @return [Float] + required :logprob, Float + + # @!attribute bytes + # + # @return [Array, nil] + optional :bytes, Hanzoai::Internal::Type::ArrayOf[Integer], nil?: true + + # @!method initialize(token:, logprob:, bytes: nil) + # @param token [String] + # @param logprob [Float] + # @param bytes [Array, nil] + end + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, Object)] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + StreamingChoiceMap = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end # @!method self.variants - # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] + # @return [Array(String, Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse, Object)] end - # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#stream_timeout + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams#stream_timeout module StreamTimeout extend Hanzoai::Internal::Type::Union @@ -245,7 +1178,7 @@ module StreamTimeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#timeout + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams#timeout module Timeout extend Hanzoai::Internal::Type::Union @@ -257,16 +1190,19 @@ module Timeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::Model::UpdateDeployment::LlmParams#vertex_credentials + # @see Hanzoai::Models::Model::UpdateDeployment::LitellmParams#vertex_credentials module VertexCredentials extend Hanzoai::Internal::Type::Union - variant Hanzoai::Internal::Type::Unknown - variant String + variant -> { Hanzoai::Models::Model::UpdateDeployment::LitellmParams::VertexCredentials::UnionMember1Map } + # @!method self.variants - # @return [Array(Object, String)] + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end end end diff --git a/lib/hanzoai/models/model_create_params.rb b/lib/hanzoai/models/model_create_params.rb index d9e7583e..6a37d67f 100644 --- a/lib/hanzoai/models/model_create_params.rb +++ b/lib/hanzoai/models/model_create_params.rb @@ -7,11 +7,11 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute llm_params - # LLM Params with 'model' requirement - used for completions + # @!attribute litellm_params + # LiteLLM Params with 'model' requirement - used for completions # - # @return [Hanzoai::Models::ModelCreateParams::LlmParams] - required :llm_params, -> { Hanzoai::ModelCreateParams::LlmParams } + # @return [Hanzoai::Models::ModelCreateParams::LitellmParams] + required :litellm_params, -> { Hanzoai::ModelCreateParams::LitellmParams } # @!attribute model_info # @@ -23,8 +23,8 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :model_name, String - # @!method initialize(llm_params:, model_info:, model_name:, request_options: {}) - # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # @!method initialize(litellm_params:, model_info:, model_name:, request_options: {}) + # @param litellm_params [Hanzoai::Models::ModelCreateParams::LitellmParams] LiteLLM Params with 'model' requirement - used for completions # # @param model_info [Hanzoai::Models::ModelInfo] # @@ -32,7 +32,7 @@ class ModelCreateParams < Hanzoai::Internal::Type::BaseModel # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - class LlmParams < Hanzoai::Internal::Type::BaseModel + class LitellmParams < Hanzoai::Internal::Type::BaseModel # @!attribute model # # @return [String] @@ -53,11 +53,36 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :api_version, String, nil?: true + # @!attribute auto_router_config + # + # @return [String, nil] + optional :auto_router_config, String, nil?: true + + # @!attribute auto_router_config_path + # + # @return [String, nil] + optional :auto_router_config_path, String, nil?: true + + # @!attribute auto_router_default_model + # + # @return [String, nil] + optional :auto_router_default_model, String, nil?: true + + # @!attribute auto_router_embedding_model + # + # @return [String, nil] + optional :auto_router_embedding_model, String, nil?: true + # @!attribute aws_access_key_id # # @return [String, nil] optional :aws_access_key_id, String, nil?: true + # @!attribute aws_bedrock_runtime_endpoint + # + # @return [String, nil] + optional :aws_bedrock_runtime_endpoint, String, nil?: true + # @!attribute aws_region_name # # @return [String, nil] @@ -73,12 +98,62 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :budget_duration, String, nil?: true + # @!attribute cache_creation_input_audio_token_cost + # + # @return [Float, nil] + optional :cache_creation_input_audio_token_cost, Float, nil?: true + + # @!attribute cache_creation_input_token_cost + # + # @return [Float, nil] + optional :cache_creation_input_token_cost, Float, nil?: true + + # @!attribute cache_creation_input_token_cost_above_1hr + # + # @return [Float, nil] + optional :cache_creation_input_token_cost_above_1hr, Float, nil?: true + + # @!attribute cache_creation_input_token_cost_above_200k_tokens + # + # @return [Float, nil] + optional :cache_creation_input_token_cost_above_200k_tokens, Float, nil?: true + + # @!attribute cache_read_input_audio_token_cost + # + # @return [Float, nil] + optional :cache_read_input_audio_token_cost, Float, nil?: true + + # @!attribute cache_read_input_token_cost + # + # @return [Float, nil] + optional :cache_read_input_token_cost, Float, nil?: true + + # @!attribute cache_read_input_token_cost_above_200k_tokens + # + # @return [Float, nil] + optional :cache_read_input_token_cost_above_200k_tokens, Float, nil?: true + + # @!attribute cache_read_input_token_cost_flex + # + # @return [Float, nil] + optional :cache_read_input_token_cost_flex, Float, nil?: true + + # @!attribute cache_read_input_token_cost_priority + # + # @return [Float, nil] + optional :cache_read_input_token_cost_priority, Float, nil?: true + + # @!attribute citation_cost_per_token + # + # @return [Float, nil] + optional :citation_cost_per_token, Float, nil?: true + # @!attribute configurable_clientside_auth_params # - # @return [Array, nil] + # @return [Array, nil] optional :configurable_clientside_auth_params, -> { - Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::ModelCreateParams::LlmParams::ConfigurableClientsideAuthParam] + Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam] }, nil?: true @@ -87,6 +162,56 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :custom_llm_provider, String, nil?: true + # @!attribute gcs_bucket_name + # + # @return [String, nil] + optional :gcs_bucket_name, String, nil?: true + + # @!attribute input_cost_per_audio_per_second + # + # @return [Float, nil] + optional :input_cost_per_audio_per_second, Float, nil?: true + + # @!attribute input_cost_per_audio_per_second_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_audio_per_second_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_audio_token + # + # @return [Float, nil] + optional :input_cost_per_audio_token, Float, nil?: true + + # @!attribute input_cost_per_character + # + # @return [Float, nil] + optional :input_cost_per_character, Float, nil?: true + + # @!attribute input_cost_per_character_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_character_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_image + # + # @return [Float, nil] + optional :input_cost_per_image, Float, nil?: true + + # @!attribute input_cost_per_image_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_image_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_pixel + # + # @return [Float, nil] + optional :input_cost_per_pixel, Float, nil?: true + + # @!attribute input_cost_per_query + # + # @return [Float, nil] + optional :input_cost_per_query, Float, nil?: true + # @!attribute input_cost_per_second # # @return [Float, nil] @@ -97,10 +222,65 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :input_cost_per_token, Float, nil?: true - # @!attribute llm_trace_id + # @!attribute input_cost_per_token_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_token_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_token_above_200k_tokens + # + # @return [Float, nil] + optional :input_cost_per_token_above_200k_tokens, Float, nil?: true + + # @!attribute input_cost_per_token_batches + # + # @return [Float, nil] + optional :input_cost_per_token_batches, Float, nil?: true + + # @!attribute input_cost_per_token_cache_hit + # + # @return [Float, nil] + optional :input_cost_per_token_cache_hit, Float, nil?: true + + # @!attribute input_cost_per_token_flex + # + # @return [Float, nil] + optional :input_cost_per_token_flex, Float, nil?: true + + # @!attribute input_cost_per_token_priority + # + # @return [Float, nil] + optional :input_cost_per_token_priority, Float, nil?: true + + # @!attribute input_cost_per_video_per_second + # + # @return [Float, nil] + optional :input_cost_per_video_per_second, Float, nil?: true + + # @!attribute input_cost_per_video_per_second_above_128k_tokens + # + # @return [Float, nil] + optional :input_cost_per_video_per_second_above_128k_tokens, Float, nil?: true + + # @!attribute input_cost_per_video_per_second_above_15s_interval + # + # @return [Float, nil] + optional :input_cost_per_video_per_second_above_15s_interval, Float, nil?: true + + # @!attribute input_cost_per_video_per_second_above_8s_interval + # + # @return [Float, nil] + optional :input_cost_per_video_per_second_above_8s_interval, Float, nil?: true + + # @!attribute litellm_credential_name # # @return [String, nil] - optional :llm_trace_id, String, nil?: true + optional :litellm_credential_name, String, nil?: true + + # @!attribute litellm_trace_id + # + # @return [String, nil] + optional :litellm_trace_id, String, nil?: true # @!attribute max_budget # @@ -122,16 +302,70 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Boolean, nil] optional :merge_reasoning_content_in_choices, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute milvus_text_field + # + # @return [String, nil] + optional :milvus_text_field, String, nil?: true + + # @!attribute mock_response + # + # @return [String, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse, Object, nil] + optional :mock_response, + union: -> { + Hanzoai::ModelCreateParams::LitellmParams::MockResponse + }, + nil?: true + # @!attribute model_info # - # @return [Object, nil] - optional :model_info, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_info, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute organization # # @return [String, nil] optional :organization, String, nil?: true + # @!attribute output_cost_per_audio_per_second + # + # @return [Float, nil] + optional :output_cost_per_audio_per_second, Float, nil?: true + + # @!attribute output_cost_per_audio_token + # + # @return [Float, nil] + optional :output_cost_per_audio_token, Float, nil?: true + + # @!attribute output_cost_per_character + # + # @return [Float, nil] + optional :output_cost_per_character, Float, nil?: true + + # @!attribute output_cost_per_character_above_128k_tokens + # + # @return [Float, nil] + optional :output_cost_per_character_above_128k_tokens, Float, nil?: true + + # @!attribute output_cost_per_image + # + # @return [Float, nil] + optional :output_cost_per_image, Float, nil?: true + + # @!attribute output_cost_per_image_token + # + # @return [Float, nil] + optional :output_cost_per_image_token, Float, nil?: true + + # @!attribute output_cost_per_pixel + # + # @return [Float, nil] + optional :output_cost_per_pixel, Float, nil?: true + + # @!attribute output_cost_per_reasoning_token + # + # @return [Float, nil] + optional :output_cost_per_reasoning_token, Float, nil?: true + # @!attribute output_cost_per_second # # @return [Float, nil] @@ -142,6 +376,36 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :output_cost_per_token, Float, nil?: true + # @!attribute output_cost_per_token_above_128k_tokens + # + # @return [Float, nil] + optional :output_cost_per_token_above_128k_tokens, Float, nil?: true + + # @!attribute output_cost_per_token_above_200k_tokens + # + # @return [Float, nil] + optional :output_cost_per_token_above_200k_tokens, Float, nil?: true + + # @!attribute output_cost_per_token_batches + # + # @return [Float, nil] + optional :output_cost_per_token_batches, Float, nil?: true + + # @!attribute output_cost_per_token_flex + # + # @return [Float, nil] + optional :output_cost_per_token_flex, Float, nil?: true + + # @!attribute output_cost_per_token_priority + # + # @return [Float, nil] + optional :output_cost_per_token_priority, Float, nil?: true + + # @!attribute output_cost_per_video_per_second + # + # @return [Float, nil] + optional :output_cost_per_video_per_second, Float, nil?: true + # @!attribute region_name # # @return [String, nil] @@ -152,19 +416,41 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :rpm, Integer, nil?: true + # @!attribute s3_bucket_name + # + # @return [String, nil] + optional :s3_bucket_name, String, nil?: true + + # @!attribute s3_encryption_key_id + # + # @return [String, nil] + optional :s3_encryption_key_id, String, nil?: true + + # @!attribute search_context_cost_per_query + # + # @return [Hash{Symbol=>Object}, nil] + optional :search_context_cost_per_query, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + # @!attribute stream_timeout # # @return [Float, String, nil] optional :stream_timeout, - union: -> { - Hanzoai::ModelCreateParams::LlmParams::StreamTimeout - }, + union: -> { Hanzoai::ModelCreateParams::LitellmParams::StreamTimeout }, + nil?: true + + # @!attribute tiered_pricing + # + # @return [ArrayObject}>, nil] + optional :tiered_pricing, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], nil?: true # @!attribute timeout # # @return [Float, String, nil] - optional :timeout, union: -> { Hanzoai::ModelCreateParams::LlmParams::Timeout }, nil?: true + optional :timeout, union: -> { Hanzoai::ModelCreateParams::LitellmParams::Timeout }, nil?: true # @!attribute tpm # @@ -176,11 +462,21 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [Boolean, nil] optional :use_in_pass_through, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute use_litellm_proxy + # + # @return [Boolean, nil] + optional :use_litellm_proxy, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute vector_store_id + # + # @return [String, nil] + optional :vector_store_id, String, nil?: true + # @!attribute vertex_credentials # - # @return [Object, String, nil] + # @return [String, Hash{Symbol=>Object}, nil] optional :vertex_credentials, - union: -> { Hanzoai::ModelCreateParams::LlmParams::VertexCredentials }, + union: -> { Hanzoai::ModelCreateParams::LitellmParams::VertexCredentials }, nil?: true # @!attribute vertex_location @@ -198,37 +494,95 @@ class LlmParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :watsonx_region_name, String, nil?: true - # @!method initialize(model:, api_base: nil, api_key: nil, api_version: nil, aws_access_key_id: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, input_cost_per_second: nil, input_cost_per_token: nil, llm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, model_info: nil, organization: nil, output_cost_per_second: nil, output_cost_per_token: nil, region_name: nil, rpm: nil, stream_timeout: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, watsonx_region_name: nil) - # LLM Params with 'model' requirement - used for completions + # @!method initialize(model:, api_base: nil, api_key: nil, api_version: nil, auto_router_config: nil, auto_router_config_path: nil, auto_router_default_model: nil, auto_router_embedding_model: nil, aws_access_key_id: nil, aws_bedrock_runtime_endpoint: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, cache_creation_input_audio_token_cost: nil, cache_creation_input_token_cost: nil, cache_creation_input_token_cost_above_1hr: nil, cache_creation_input_token_cost_above_200k_tokens: nil, cache_read_input_audio_token_cost: nil, cache_read_input_token_cost: nil, cache_read_input_token_cost_above_200k_tokens: nil, cache_read_input_token_cost_flex: nil, cache_read_input_token_cost_priority: nil, citation_cost_per_token: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, gcs_bucket_name: nil, input_cost_per_audio_per_second: nil, input_cost_per_audio_per_second_above_128k_tokens: nil, input_cost_per_audio_token: nil, input_cost_per_character: nil, input_cost_per_character_above_128k_tokens: nil, input_cost_per_image: nil, input_cost_per_image_above_128k_tokens: nil, input_cost_per_pixel: nil, input_cost_per_query: nil, input_cost_per_second: nil, input_cost_per_token: nil, input_cost_per_token_above_128k_tokens: nil, input_cost_per_token_above_200k_tokens: nil, input_cost_per_token_batches: nil, input_cost_per_token_cache_hit: nil, input_cost_per_token_flex: nil, input_cost_per_token_priority: nil, input_cost_per_video_per_second: nil, input_cost_per_video_per_second_above_128k_tokens: nil, input_cost_per_video_per_second_above_15s_interval: nil, input_cost_per_video_per_second_above_8s_interval: nil, litellm_credential_name: nil, litellm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, milvus_text_field: nil, mock_response: nil, model_info: nil, organization: nil, output_cost_per_audio_per_second: nil, output_cost_per_audio_token: nil, output_cost_per_character: nil, output_cost_per_character_above_128k_tokens: nil, output_cost_per_image: nil, output_cost_per_image_token: nil, output_cost_per_pixel: nil, output_cost_per_reasoning_token: nil, output_cost_per_second: nil, output_cost_per_token: nil, output_cost_per_token_above_128k_tokens: nil, output_cost_per_token_above_200k_tokens: nil, output_cost_per_token_batches: nil, output_cost_per_token_flex: nil, output_cost_per_token_priority: nil, output_cost_per_video_per_second: nil, region_name: nil, rpm: nil, s3_bucket_name: nil, s3_encryption_key_id: nil, search_context_cost_per_query: nil, stream_timeout: nil, tiered_pricing: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, use_litellm_proxy: nil, vector_store_id: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, watsonx_region_name: nil) + # LiteLLM Params with 'model' requirement - used for completions # # @param model [String] # @param api_base [String, nil] # @param api_key [String, nil] # @param api_version [String, nil] + # @param auto_router_config [String, nil] + # @param auto_router_config_path [String, nil] + # @param auto_router_default_model [String, nil] + # @param auto_router_embedding_model [String, nil] # @param aws_access_key_id [String, nil] + # @param aws_bedrock_runtime_endpoint [String, nil] # @param aws_region_name [String, nil] # @param aws_secret_access_key [String, nil] # @param budget_duration [String, nil] - # @param configurable_clientside_auth_params [Array, nil] + # @param cache_creation_input_audio_token_cost [Float, nil] + # @param cache_creation_input_token_cost [Float, nil] + # @param cache_creation_input_token_cost_above_1hr [Float, nil] + # @param cache_creation_input_token_cost_above_200k_tokens [Float, nil] + # @param cache_read_input_audio_token_cost [Float, nil] + # @param cache_read_input_token_cost [Float, nil] + # @param cache_read_input_token_cost_above_200k_tokens [Float, nil] + # @param cache_read_input_token_cost_flex [Float, nil] + # @param cache_read_input_token_cost_priority [Float, nil] + # @param citation_cost_per_token [Float, nil] + # @param configurable_clientside_auth_params [Array, nil] # @param custom_llm_provider [String, nil] + # @param gcs_bucket_name [String, nil] + # @param input_cost_per_audio_per_second [Float, nil] + # @param input_cost_per_audio_per_second_above_128k_tokens [Float, nil] + # @param input_cost_per_audio_token [Float, nil] + # @param input_cost_per_character [Float, nil] + # @param input_cost_per_character_above_128k_tokens [Float, nil] + # @param input_cost_per_image [Float, nil] + # @param input_cost_per_image_above_128k_tokens [Float, nil] + # @param input_cost_per_pixel [Float, nil] + # @param input_cost_per_query [Float, nil] # @param input_cost_per_second [Float, nil] # @param input_cost_per_token [Float, nil] - # @param llm_trace_id [String, nil] + # @param input_cost_per_token_above_128k_tokens [Float, nil] + # @param input_cost_per_token_above_200k_tokens [Float, nil] + # @param input_cost_per_token_batches [Float, nil] + # @param input_cost_per_token_cache_hit [Float, nil] + # @param input_cost_per_token_flex [Float, nil] + # @param input_cost_per_token_priority [Float, nil] + # @param input_cost_per_video_per_second [Float, nil] + # @param input_cost_per_video_per_second_above_128k_tokens [Float, nil] + # @param input_cost_per_video_per_second_above_15s_interval [Float, nil] + # @param input_cost_per_video_per_second_above_8s_interval [Float, nil] + # @param litellm_credential_name [String, nil] + # @param litellm_trace_id [String, nil] # @param max_budget [Float, nil] # @param max_file_size_mb [Float, nil] # @param max_retries [Integer, nil] # @param merge_reasoning_content_in_choices [Boolean, nil] - # @param model_info [Object, nil] + # @param milvus_text_field [String, nil] + # @param mock_response [String, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse, Object, nil] + # @param model_info [Hash{Symbol=>Object}, nil] # @param organization [String, nil] + # @param output_cost_per_audio_per_second [Float, nil] + # @param output_cost_per_audio_token [Float, nil] + # @param output_cost_per_character [Float, nil] + # @param output_cost_per_character_above_128k_tokens [Float, nil] + # @param output_cost_per_image [Float, nil] + # @param output_cost_per_image_token [Float, nil] + # @param output_cost_per_pixel [Float, nil] + # @param output_cost_per_reasoning_token [Float, nil] # @param output_cost_per_second [Float, nil] # @param output_cost_per_token [Float, nil] + # @param output_cost_per_token_above_128k_tokens [Float, nil] + # @param output_cost_per_token_above_200k_tokens [Float, nil] + # @param output_cost_per_token_batches [Float, nil] + # @param output_cost_per_token_flex [Float, nil] + # @param output_cost_per_token_priority [Float, nil] + # @param output_cost_per_video_per_second [Float, nil] # @param region_name [String, nil] # @param rpm [Integer, nil] + # @param s3_bucket_name [String, nil] + # @param s3_encryption_key_id [String, nil] + # @param search_context_cost_per_query [Hash{Symbol=>Object}, nil] # @param stream_timeout [Float, String, nil] + # @param tiered_pricing [ArrayObject}>, nil] # @param timeout [Float, String, nil] # @param tpm [Integer, nil] # @param use_in_pass_through [Boolean, nil] - # @param vertex_credentials [Object, String, nil] + # @param use_litellm_proxy [Boolean, nil] + # @param vector_store_id [String, nil] + # @param vertex_credentials [String, Hash{Symbol=>Object}, nil] # @param vertex_location [String, nil] # @param vertex_project [String, nil] # @param watsonx_region_name [String, nil] @@ -238,13 +592,586 @@ module ConfigurableClientsideAuthParam variant String - variant -> { Hanzoai::ConfigurableClientsideParamsCustomAuth } + variant -> { Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput } + + class ConfigurableClientsideParamsCustomAuthInput < Hanzoai::Internal::Type::BaseModel + # @!attribute api_base + # + # @return [String] + required :api_base, String + + # @!method initialize(api_base:) + # @param api_base [String] + end # @!method self.variants - # @return [Array(String, Hanzoai::Models::ConfigurableClientsideParamsCustomAuth)] + # @return [Array(String, Hanzoai::Models::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput)] end - # @see Hanzoai::Models::ModelCreateParams::LlmParams#stream_timeout + # @see Hanzoai::Models::ModelCreateParams::LitellmParams#mock_response + module MockResponse + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse } + + variant Hanzoai::Internal::Type::Unknown + + class ModelResponse < Hanzoai::Internal::Type::BaseModel + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute choices + # + # @return [ArrayObject}>] + required :choices, + -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice] } + + # @!attribute created + # + # @return [Integer] + required :created, Integer + + # @!attribute object + # + # @return [String] + required :object, String + + # @!attribute model + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!attribute system_fingerprint + # + # @return [String, nil] + optional :system_fingerprint, String, nil?: true + + # @!method initialize(id:, choices:, created:, object:, model: nil, system_fingerprint: nil) + # @param id [String] + # @param choices [ArrayObject}>] + # @param created [Integer] + # @param object [String] + # @param model [String, nil] + # @param system_fingerprint [String, nil] + + module Choice + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices } + + variant -> { Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::StreamingChoiceMap } + + class Choices < Hanzoai::Internal::Type::BaseModel + # @!attribute finish_reason + # + # @return [String] + required :finish_reason, String + + # @!attribute index + # + # @return [Integer] + required :index, Integer + + # @!attribute message + # + # @return [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message] + required :message, + -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message } + + # @!attribute logprobs + # + # @return [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, Object, nil] + optional :logprobs, + union: -> { + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs + }, + nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(finish_reason:, index:, message:, logprobs: nil, provider_specific_fields: nil) + # @param finish_reason [String] + # @param index [Integer] + # @param message [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message] + # @param logprobs [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, Object, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices#message + class Message < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, nil] + required :content, String, nil?: true + + # @!attribute function_call + # + # @return [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall, nil] + required :function_call, + -> { + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall + }, + nil?: true + + # @!attribute role + # + # @return [Symbol, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role] + required :role, + enum: -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role } + + # @!attribute tool_calls + # + # @return [ArrayObject}>, nil] + required :tool_calls, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute annotations + # + # @return [Array, nil] + optional :annotations, + -> do + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation + ] + end, + nil?: true + + # @!attribute audio + # + # @return [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio, nil] + optional :audio, + -> { + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio + }, + nil?: true + + # @!attribute images + # + # @return [Array, nil] + optional :images, + -> { + Hanzoai::Internal::Type::ArrayOf[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image] + }, + nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute reasoning_content + # + # @return [String, nil] + optional :reasoning_content, String, nil?: true + + # @!attribute thinking_blocks + # + # @return [Array, nil] + optional :thinking_blocks, + -> do + Hanzoai::Internal::Type::ArrayOf[ + union: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock + ] + end, + nil?: true + + # @!method initialize(content:, function_call:, role:, tool_calls:, annotations: nil, audio: nil, images: nil, provider_specific_fields: nil, reasoning_content: nil, thinking_blocks: nil) + # @param content [String, nil] + # @param function_call [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall, nil] + # @param role [Symbol, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role] + # @param tool_calls [ArrayObject}>, nil] + # @param annotations [Array, nil] + # @param audio [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio, nil] + # @param images [Array, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + # @param reasoning_content [String, nil] + # @param thinking_blocks [Array, nil] + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message#function_call + class FunctionCall < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String] + required :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!method initialize(arguments:, name: nil) + # @param arguments [String] + # @param name [String, nil] + end + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message#role + module Role + extend Hanzoai::Internal::Type::Enum + + ASSISTANT = :assistant + USER = :user + SYSTEM = :system + TOOL = :tool + FUNCTION = :function + + # @!method self.values + # @return [Array] + end + + class Annotation < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type, nil] + optional :type, + enum: -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type } + + # @!attribute url_citation + # + # @return [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation, nil] + optional :url_citation, + -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation } + + # @!method initialize(type: nil, url_citation: nil) + # @param type [Symbol, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type] + # @param url_citation [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation] + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation#type + module Type + extend Hanzoai::Internal::Type::Enum + + URL_CITATION = :url_citation + + # @!method self.values + # @return [Array] + end + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation#url_citation + class URLCitation < Hanzoai::Internal::Type::BaseModel + # @!attribute end_index + # + # @return [Integer, nil] + optional :end_index, Integer + + # @!attribute start_index + # + # @return [Integer, nil] + optional :start_index, Integer + + # @!attribute title + # + # @return [String, nil] + optional :title, String + + # @!attribute url + # + # @return [String, nil] + optional :url, String + + # @!method initialize(end_index: nil, start_index: nil, title: nil, url: nil) + # @param end_index [Integer] + # @param start_index [Integer] + # @param title [String] + # @param url [String] + end + end + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message#audio + class Audio < Hanzoai::Internal::Type::BaseModel + # @!attribute id + # + # @return [String] + required :id, String + + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute expires_at + # + # @return [Integer] + required :expires_at, Integer + + # @!attribute transcript + # + # @return [String] + required :transcript, String + + # @!method initialize(id:, data:, expires_at:, transcript:) + # @param id [String] + # @param data [String] + # @param expires_at [Integer] + # @param transcript [String] + end + + class Image < Hanzoai::Internal::Type::BaseModel + # @!attribute image_url + # + # @return [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL] + required :image_url, + -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL } + + # @!attribute index + # + # @return [Integer] + required :index, Integer + + # @!attribute type + # + # @return [Symbol, :image_url] + required :type, const: :image_url + + # @!method initialize(image_url:, index:, type: :image_url) + # @param image_url [Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL] + # @param index [Integer] + # @param type [Symbol, :image_url] + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image#image_url + class ImageURL < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String, nil?: true + + # @!method initialize(url:, detail: nil) + # @param url [String] + # @param detail [String, nil] + end + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock } + + variant -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :redacted_thinking] + required :type, const: :redacted_thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute data + # + # @return [String, nil] + optional :data, String + + # @!method initialize(cache_control: nil, data: nil, type: :redacted_thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param data [String] + # @param type [Symbol, :redacted_thinking] + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock)] + end + end + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices#logprobs + module Logprobs + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs } + + variant Hanzoai::Internal::Type::Unknown + + class ChoiceLogprobs < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [Array, nil] + optional :content, + -> do + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content + ] + end, + nil?: true + + # @!method initialize(content: nil) + # @param content [Array, nil] + + class Content < Hanzoai::Internal::Type::BaseModel + # @!attribute token + # + # @return [String] + required :token, String + + # @!attribute logprob + # + # @return [Float] + required :logprob, Float + + # @!attribute top_logprobs + # + # @return [Array] + required :top_logprobs, + -> do + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob + ] + end + + # @!attribute bytes + # + # @return [Array, nil] + optional :bytes, Hanzoai::Internal::Type::ArrayOf[Integer], nil?: true + + # @!method initialize(token:, logprob:, top_logprobs:, bytes: nil) + # @param token [String] + # @param logprob [Float] + # @param top_logprobs [Array] + # @param bytes [Array, nil] + + class TopLogprob < Hanzoai::Internal::Type::BaseModel + # @!attribute token + # + # @return [String] + required :token, String + + # @!attribute logprob + # + # @return [Float] + required :logprob, Float + + # @!attribute bytes + # + # @return [Array, nil] + optional :bytes, Hanzoai::Internal::Type::ArrayOf[Integer], nil?: true + + # @!method initialize(token:, logprob:, bytes: nil) + # @param token [String] + # @param logprob [Float] + # @param bytes [Array, nil] + end + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, Object)] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + StreamingChoiceMap = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse, Object)] + end + + # @see Hanzoai::Models::ModelCreateParams::LitellmParams#stream_timeout module StreamTimeout extend Hanzoai::Internal::Type::Union @@ -256,7 +1183,7 @@ module StreamTimeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::ModelCreateParams::LlmParams#timeout + # @see Hanzoai::Models::ModelCreateParams::LitellmParams#timeout module Timeout extend Hanzoai::Internal::Type::Union @@ -268,16 +1195,19 @@ module Timeout # @return [Array(Float, String)] end - # @see Hanzoai::Models::ModelCreateParams::LlmParams#vertex_credentials + # @see Hanzoai::Models::ModelCreateParams::LitellmParams#vertex_credentials module VertexCredentials extend Hanzoai::Internal::Type::Union - variant Hanzoai::Internal::Type::Unknown - variant String + variant -> { Hanzoai::Models::ModelCreateParams::LitellmParams::VertexCredentials::UnionMember1Map } + # @!method self.variants - # @return [Array(Object, String)] + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end end end diff --git a/lib/hanzoai/models/model_list_params.rb b/lib/hanzoai/models/model_list_params.rb index dfb69a0a..30821779 100644 --- a/lib/hanzoai/models/model_list_params.rb +++ b/lib/hanzoai/models/model_list_params.rb @@ -7,6 +7,26 @@ class ModelListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + # @!attribute fallback_type + # + # @return [String, nil] + optional :fallback_type, String, nil?: true + + # @!attribute include_metadata + # + # @return [Boolean, nil] + optional :include_metadata, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute include_model_access_groups + # + # @return [Boolean, nil] + optional :include_model_access_groups, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute only_model_access_groups + # + # @return [Boolean, nil] + optional :only_model_access_groups, Hanzoai::Internal::Type::Boolean, nil?: true + # @!attribute return_wildcard_routes # # @return [Boolean, nil] @@ -17,7 +37,11 @@ class ModelListParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :team_id, String, nil?: true - # @!method initialize(return_wildcard_routes: nil, team_id: nil, request_options: {}) + # @!method initialize(fallback_type: nil, include_metadata: nil, include_model_access_groups: nil, only_model_access_groups: nil, return_wildcard_routes: nil, team_id: nil, request_options: {}) + # @param fallback_type [String, nil] + # @param include_metadata [Boolean, nil] + # @param include_model_access_groups [Boolean, nil] + # @param only_model_access_groups [Boolean, nil] # @param return_wildcard_routes [Boolean, nil] # @param team_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/openai/deployment_embed_params.rb b/lib/hanzoai/models/openai/deployment_embed_params.rb index 355ad13a..99290bb4 100644 --- a/lib/hanzoai/models/openai/deployment_embed_params.rb +++ b/lib/hanzoai/models/openai/deployment_embed_params.rb @@ -8,8 +8,104 @@ class DeploymentEmbedParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!method initialize(request_options: {}) + # @!attribute body_model + # + # @return [String] + required :body_model, String, api_name: :model + + # @!attribute api_base + # + # @return [String, nil] + optional :api_base, String, nil?: true + + # @!attribute api_key + # + # @return [String, nil] + optional :api_key, String, nil?: true + + # @!attribute api_type + # + # @return [String, nil] + optional :api_type, String, nil?: true + + # @!attribute api_version + # + # @return [String, nil] + optional :api_version, String, nil?: true + + # @!attribute caching + # + # @return [Boolean, nil] + optional :caching, Hanzoai::Internal::Type::Boolean + + # @!attribute custom_llm_provider + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :custom_llm_provider, + union: -> { Hanzoai::OpenAI::DeploymentEmbedParams::CustomLlmProvider }, + nil?: true + + # @!attribute input + # + # @return [Array, nil] + optional :input, Hanzoai::Internal::Type::ArrayOf[String] + + # @!attribute litellm_call_id + # + # @return [String, nil] + optional :litellm_call_id, String, nil?: true + + # @!attribute litellm_logging_obj + # + # @return [Hash{Symbol=>Object}, nil] + optional :litellm_logging_obj, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute logger_fn + # + # @return [String, nil] + optional :logger_fn, String, nil?: true + + # @!attribute timeout + # + # @return [Integer, nil] + optional :timeout, Integer + + # @!attribute user + # + # @return [String, nil] + optional :user, String, nil?: true + + # @!method initialize(body_model:, api_base: nil, api_key: nil, api_type: nil, api_version: nil, caching: nil, custom_llm_provider: nil, input: nil, litellm_call_id: nil, litellm_logging_obj: nil, logger_fn: nil, timeout: nil, user: nil, request_options: {}) + # @param body_model [String] + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_type [String, nil] + # @param api_version [String, nil] + # @param caching [Boolean] + # @param custom_llm_provider [String, Hash{Symbol=>Object}, nil] + # @param input [Array] + # @param litellm_call_id [String, nil] + # @param litellm_logging_obj [Hash{Symbol=>Object}, nil] + # @param logger_fn [String, nil] + # @param timeout [Integer] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::DeploymentEmbedParams::CustomLlmProvider::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end end end end diff --git a/lib/hanzoai/models/openai/deployments/chat_complete_params.rb b/lib/hanzoai/models/openai/deployments/chat_complete_params.rb index 9051ce46..cd68eb8b 100644 --- a/lib/hanzoai/models/openai/deployments/chat_complete_params.rb +++ b/lib/hanzoai/models/openai/deployments/chat_complete_params.rb @@ -9,8 +9,1291 @@ class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!method initialize(request_options: {}) + # @!attribute messages + # + # @return [Array] + required :messages, + -> { Hanzoai::Internal::Type::ArrayOf[union: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message] } + + # @!attribute body_model + # + # @return [String] + required :body_model, String, api_name: :model + + # @!attribute caching + # + # @return [Boolean, nil] + optional :caching, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute context_window_fallback_dict + # + # @return [Hash{Symbol=>String}, nil] + optional :context_window_fallback_dict, Hanzoai::Internal::Type::HashOf[String], nil?: true + + # @!attribute fallbacks + # + # @return [Array, nil] + optional :fallbacks, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute frequency_penalty + # + # @return [Float, nil] + optional :frequency_penalty, Float, nil?: true + + # @!attribute function_call + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :function_call, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::FunctionCall }, + nil?: true + + # @!attribute functions + # + # @return [ArrayObject}>, nil] + optional :functions, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute guardrails + # + # @return [Array, nil] + optional :guardrails, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute logit_bias + # + # @return [Hash{Symbol=>Float}, nil] + optional :logit_bias, Hanzoai::Internal::Type::HashOf[Float], nil?: true + + # @!attribute logprobs + # + # @return [Boolean, nil] + optional :logprobs, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute max_tokens + # + # @return [Integer, nil] + optional :max_tokens, Integer, nil?: true + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute n + # + # @return [Integer, nil] + optional :n, Integer, nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute parallel_tool_calls + # + # @return [Boolean, nil] + optional :parallel_tool_calls, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute presence_penalty + # + # @return [Float, nil] + optional :presence_penalty, Float, nil?: true + + # @!attribute response_format + # + # @return [Hash{Symbol=>Object}, nil] + optional :response_format, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute seed + # + # @return [Integer, nil] + optional :seed, Integer, nil?: true + + # @!attribute service_tier + # + # @return [String, nil] + optional :service_tier, String, nil?: true + + # @!attribute stop + # + # @return [String, Array, nil] + optional :stop, union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Stop }, nil?: true + + # @!attribute stream + # + # @return [Boolean, nil] + optional :stream, Hanzoai::Internal::Type::Boolean, nil?: true + + # @!attribute stream_options + # + # @return [Hash{Symbol=>Object}, nil] + optional :stream_options, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute temperature + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute tool_choice + # + # @return [String, Hash{Symbol=>Object}, nil] + optional :tool_choice, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::ToolChoice }, + nil?: true + + # @!attribute tools + # + # @return [ArrayObject}>, nil] + optional :tools, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute top_logprobs + # + # @return [Integer, nil] + optional :top_logprobs, Integer, nil?: true + + # @!attribute top_p + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute user + # + # @return [String, nil] + optional :user, String, nil?: true + + # @!method initialize(messages:, body_model:, caching: nil, context_window_fallback_dict: nil, fallbacks: nil, frequency_penalty: nil, function_call: nil, functions: nil, guardrails: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, metadata: nil, n: nil, num_retries: nil, parallel_tool_calls: nil, presence_penalty: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, request_options: {}) + # @param messages [Array] + # @param body_model [String] + # @param caching [Boolean, nil] + # @param context_window_fallback_dict [Hash{Symbol=>String}, nil] + # @param fallbacks [Array, nil] + # @param frequency_penalty [Float, nil] + # @param function_call [String, Hash{Symbol=>Object}, nil] + # @param functions [ArrayObject}>, nil] + # @param guardrails [Array, nil] + # @param logit_bias [Hash{Symbol=>Float}, nil] + # @param logprobs [Boolean, nil] + # @param max_tokens [Integer, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param n [Integer, nil] + # @param num_retries [Integer, nil] + # @param parallel_tool_calls [Boolean, nil] + # @param presence_penalty [Float, nil] + # @param response_format [Hash{Symbol=>Object}, nil] + # @param seed [Integer, nil] + # @param service_tier [String, nil] + # @param stop [String, Array, nil] + # @param stream [Boolean, nil] + # @param stream_options [Hash{Symbol=>Object}, nil] + # @param temperature [Float, nil] + # @param tool_choice [String, Hash{Symbol=>Object}, nil] + # @param tools [ArrayObject}>, nil] + # @param top_logprobs [Integer, nil] + # @param top_p [Float, nil] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + module Message + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage } + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content } + + # @!attribute role + # + # @return [Symbol, :user] + required :role, const: :user + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl } + + # @!method initialize(content:, cache_control: nil, role: :user) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl] + # @param role [Symbol, :user] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1Array } + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + # @!attribute image_url + # + # @return [String, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject] + required :image_url, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL } + + # @!attribute type + # + # @return [Symbol, :image_url] + required :type, const: :image_url + + # @!method initialize(image_url:, type: :image_url) + # @param image_url [String, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject] + # @param type [Symbol, :image_url] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject#image_url + module ImageURL + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject } + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String + + # @!attribute format_ + # + # @return [String, nil] + optional :format_, String, api_name: :format + + # @!method initialize(url:, detail: nil, format_: nil) + # @param url [String] + # @param detail [String] + # @param format_ [String] + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject)] + end + end + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + # @!attribute input_audio + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio] + required :input_audio, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio } + + # @!attribute type + # + # @return [Symbol, :input_audio] + required :type, const: :input_audio + + # @!method initialize(input_audio:, type: :input_audio) + # @param input_audio [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio] + # @param type [Symbol, :input_audio] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject#input_audio + class InputAudio < Hanzoai::Internal::Type::BaseModel + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute format_ + # + # @return [Symbol, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format] + required :format_, + enum: -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format + }, + api_name: :format + + # @!method initialize(data:, format_:) + # @param data [String] + # @param format_ [Symbol, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio#format_ + module Format + extend Hanzoai::Internal::Type::Enum + + WAV = :wav + MP3 = :mp3 + + # @!method self.values + # @return [Array] + end + end + end + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + # @!attribute citations + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, nil] + required :citations, + -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + }, + nil?: true + + # @!attribute context + # + # @return [String] + required :context, String + + # @!attribute source + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source] + required :source, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source } + + # @!attribute title + # + # @return [String] + required :title, String + + # @!attribute type + # + # @return [Symbol, :document] + required :type, const: :document + + # @!method initialize(citations:, context:, source:, title:, type: :document) + # @param citations [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, nil] + # @param context [String] + # @param source [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source] + # @param title [String] + # @param type [Symbol, :document] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject#citations + class Citations < Hanzoai::Internal::Type::BaseModel + # @!attribute enabled + # + # @return [Boolean] + required :enabled, Hanzoai::Internal::Type::Boolean + + # @!method initialize(enabled:) + # @param enabled [Boolean] + end + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject#source + class Source < Hanzoai::Internal::Type::BaseModel + # @!attribute data + # + # @return [String] + required :data, String + + # @!attribute media_type + # + # @return [String] + required :media_type, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!method initialize(data:, media_type:, type: :text) + # @param data [String] + # @param media_type [String] + # @param type [Symbol, :text] + end + end + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :video_url] + required :type, const: :video_url + + # @!attribute video_url + # + # @return [String, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject] + required :video_url, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL } + + # @!method initialize(video_url:, type: :video_url) + # @param video_url [String, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject] + # @param type [Symbol, :video_url] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject#video_url + module VideoURL + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject } + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + # @!attribute url + # + # @return [String] + required :url, String + + # @!attribute detail + # + # @return [String, nil] + optional :detail, String + + # @!method initialize(url:, detail: nil) + # @param url [String] + # @param detail [String] + end + + # @!method self.variants + # @return [Array(String, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject)] + end + end + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + # @!attribute file + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File] + required :file, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File } + + # @!attribute type + # + # @return [Symbol, :file] + required :type, const: :file + + # @!method initialize(file:, type: :file) + # @param file [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File] + # @param type [Symbol, :file] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject#file + class File < Hanzoai::Internal::Type::BaseModel + # @!attribute file_data + # + # @return [String, nil] + optional :file_data, String + + # @!attribute file_id + # + # @return [String, nil] + optional :file_id, String + + # @!attribute filename + # + # @return [String, nil] + optional :filename, String + + # @!attribute format_ + # + # @return [String, nil] + optional :format_, String, api_name: :format + + # @!method initialize(file_data: nil, file_id: nil, filename: nil, format_: nil) + # @param file_data [String] + # @param file_id [String] + # @param filename [String] + # @param format_ [String] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject)] + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1 } + ] + end + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute role + # + # @return [Symbol, :assistant] + required :role, const: :assistant + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl } + + # @!attribute content + # + # @return [String, Array, nil] + optional :content, + union: -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content + }, + nil?: true + + # @!attribute function_call + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall, nil] + optional :function_call, + -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall + }, + nil?: true + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute reasoning_content + # + # @return [String, nil] + optional :reasoning_content, String, nil?: true + + # @!attribute thinking_blocks + # + # @return [Array, nil] + optional :thinking_blocks, + -> do + Hanzoai::Internal::Type::ArrayOf[ + union: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock + ] + end, + nil?: true + + # @!attribute tool_calls + # + # @return [Array, nil] + optional :tool_calls, + -> { + Hanzoai::Internal::Type::ArrayOf[Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall] + }, + nil?: true + + # @!method initialize(cache_control: nil, content: nil, function_call: nil, name: nil, reasoning_content: nil, thinking_blocks: nil, tool_calls: nil, role: :assistant) + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl] + # @param content [String, Array, nil] + # @param function_call [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall, nil] + # @param name [String, nil] + # @param reasoning_content [String, nil] + # @param thinking_blocks [Array, nil] + # @param tool_calls [Array, nil] + # @param role [Symbol, :assistant] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1Array } + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock)] + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1 } + ] + end + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage#function_call + class FunctionCall < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String, nil] + optional :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(arguments: nil, name: nil, provider_specific_fields: nil) + # @param arguments [String] + # @param name [String, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :thinking] + required :type, const: :thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute signature + # + # @return [String, nil] + optional :signature, String + + # @!attribute thinking + # + # @return [String, nil] + optional :thinking, String + + # @!method initialize(cache_control: nil, signature: nil, thinking: nil, type: :thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param signature [String] + # @param thinking [String] + # @param type [Symbol, :thinking] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :redacted_thinking] + required :type, const: :redacted_thinking + + # @!attribute cache_control + # + # @return [Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + optional :cache_control, + union: -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl + }, + nil?: true + + # @!attribute data + # + # @return [String, nil] + optional :data, String + + # @!method initialize(cache_control: nil, data: nil, type: :redacted_thinking) + # @param cache_control [Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, nil] + # @param data [String] + # @param type [Symbol, :redacted_thinking] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock#cache_control + module CacheControl + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::UnionMember0Map } + + variant -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + + # @!method self.variants + # @return [Array(Hash{Symbol=>Object}, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock)] + end + + class ToolCall < Hanzoai::Internal::Type::BaseModel + # @!attribute id + # + # @return [String, nil] + required :id, String, nil?: true + + # @!attribute function + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function] + required :function, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function } + + # @!attribute type + # + # @return [Symbol, :function] + required :type, const: :function + + # @!method initialize(id:, function:, type: :function) + # @param id [String, nil] + # @param function [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function] + # @param type [Symbol, :function] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall#function + class Function < Hanzoai::Internal::Type::BaseModel + # @!attribute arguments + # + # @return [String, nil] + optional :arguments, String + + # @!attribute name + # + # @return [String, nil] + optional :name, String, nil?: true + + # @!attribute provider_specific_fields + # + # @return [Hash{Symbol=>Object}, nil] + optional :provider_specific_fields, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!method initialize(arguments: nil, name: nil, provider_specific_fields: nil) + # @param arguments [String] + # @param name [String, nil] + # @param provider_specific_fields [Hash{Symbol=>Object}, nil] + end + end + end + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content } + + # @!attribute role + # + # @return [Symbol, :tool] + required :role, const: :tool + + # @!attribute tool_call_id + # + # @return [String] + 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] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1Array } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1 } + ] + end + end + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content } + + # @!attribute role + # + # @return [Symbol, :system] + required :role, const: :system + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl } + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!method initialize(content:, cache_control: nil, name: nil, role: :system) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl] + # @param name [String] + # @param role [Symbol, :system] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::UnionMember1Array } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + end + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array, nil] + required :content, + union: -> { + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content + }, + nil?: true + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute role + # + # @return [Symbol, :function] + required :role, const: :function + + # @!attribute tool_call_id + # + # @return [String, nil] + required :tool_call_id, String, nil?: true + + # @!method initialize(content:, name:, tool_call_id:, role: :function) + # @param content [String, Array, nil] + # @param name [String] + # @param tool_call_id [String, nil] + # @param role [Symbol, :function] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1Array } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + # @!attribute text + # + # @return [String] + required :text, String + + # @!attribute type + # + # @return [Symbol, :text] + required :type, const: :text + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl } + + # @!method initialize(text:, cache_control: nil, type: :text) + # @param text [String] + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl] + # @param type [Symbol, :text] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[ + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 } + ] + end + end + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + # @!attribute content + # + # @return [String, Array] + required :content, + union: -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content } + + # @!attribute role + # + # @return [Symbol, :developer] + required :role, const: :developer + + # @!attribute cache_control + # + # @return [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, nil] + optional :cache_control, + -> { Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl } + + # @!attribute name + # + # @return [String, nil] + optional :name, String + + # @!method initialize(content:, cache_control: nil, name: nil, role: :developer) + # @param content [String, Array] + # @param cache_control [Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl] + # @param name [String] + # @param role [Symbol, :developer] + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage#content + module Content + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::UnionMember1Array } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + end + + # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage#cache_control + class CacheControl < Hanzoai::Internal::Type::BaseModel + # @!attribute type + # + # @return [Symbol, :ephemeral] + required :type, const: :ephemeral + + # @!method initialize(type: :ephemeral) + # @param type [Symbol, :ephemeral] + end + end + + # @!method self.variants + # @return [Array(Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage, Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage)] + end + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::FunctionCall::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + + module Stop + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Stop::StringArray } + + # @!method self.variants + # @return [Array(String, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + StringArray = Hanzoai::Internal::Type::ArrayOf[String] + end + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::ToolChoice::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end end end end diff --git a/lib/hanzoai/models/org_member.rb b/lib/hanzoai/models/org_member.rb index 9ea094a1..a712bd87 100644 --- a/lib/hanzoai/models/org_member.rb +++ b/lib/hanzoai/models/org_member.rb @@ -9,19 +9,27 @@ class OrgMember < Hanzoai::Internal::Type::BaseModel required :role, enum: -> { Hanzoai::OrgMember::Role } # @!attribute user_email + # The email address of the user to add. Either user_id or user_email must be + # provided # # @return [String, nil] optional :user_email, String, nil?: true # @!attribute user_id + # The unique ID of the user to add. Either user_id or user_email must be provided # # @return [String, nil] optional :user_id, String, nil?: true # @!method initialize(role:, user_email: nil, user_id: nil) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::OrgMember} for more details. + # # @param role [Symbol, Hanzoai::Models::OrgMember::Role] - # @param user_email [String, nil] - # @param user_id [String, nil] + # + # @param user_email [String, nil] The email address of the user to add. Either user_id or user_email must be provi + # + # @param user_id [String, nil] The unique ID of the user to add. Either user_id or user_email must be provided # @see Hanzoai::Models::OrgMember#role module Role diff --git a/lib/hanzoai/models/organization/info_retrieve_response.rb b/lib/hanzoai/models/organization/info_retrieve_response.rb deleted file mode 100644 index e7c97b88..00000000 --- a/lib/hanzoai/models/organization/info_retrieve_response.rb +++ /dev/null @@ -1,436 +0,0 @@ -# frozen_string_literal: true - -module Hanzoai - module Models - module Organization - # @see Hanzoai::Resources::Organization::Info#retrieve - class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_id - # - # @return [String] - required :budget_id, String - - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute models - # - # @return [Array] - required :models, Hanzoai::Internal::Type::ArrayOf[String] - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable }, - nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Organization::InfoRetrieveResponse::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute organization_alias - # - # @return [String, nil] - optional :organization_alias, String, nil?: true - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute teams - # - # @return [Array, nil] - optional :teams, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] } - - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) - # Returned by the /organization/info endpoint and /organization/list endpoint - # - # @param budget_id [String] - # - # @param created_at [Time] - # - # @param created_by [String] - # - # @param models [Array] - # - # @param updated_at [Time] - # - # @param updated_by [String] - # - # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param members [Array] - # - # @param metadata [Object, nil] - # - # @param organization_alias [String, nil] - # - # @param organization_id [String, nil] - # - # @param spend [Float] - # - # @param teams [Array] - - # @see Hanzoai::Models::Organization::InfoRetrieveResponse#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - - class Member < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id - # - # @return [String] - required :organization_id, String - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute budget_id - # - # @return [String, nil] - optional :budget_id, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable }, - nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown - - # @!attribute user_role - # - # @return [String, nil] - optional :user_role, String, nil?: true - - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] - # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] - # - # @param user_role [String, nil] - - # @see Hanzoai::Models::Organization::InfoRetrieveResponse::Member#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - # @!attribute team_id - # - # @return [String] - required :team_id, String - - # @!attribute admins - # - # @return [Array, nil] - optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute blocked - # - # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::Boolean - - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute budget_reset_at - # - # @return [Time, nil] - optional :budget_reset_at, Time, nil?: true - - # @!attribute created_at - # - # @return [Time, nil] - optional :created_at, Time, nil?: true - - # @!attribute llm_model_table - # - # @return [Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, nil] - optional :llm_model_table, - -> { Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable }, - nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute members_with_roles - # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute model_id - # - # @return [Integer, nil] - optional :model_id, Integer, nil?: true - - # @!attribute models - # - # @return [Array, nil] - optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float, nil?: true - - # @!attribute team_alias - # - # @return [String, nil] - optional :team_alias, String, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) - # @param team_id [String] - # @param admins [Array] - # @param blocked [Boolean] - # @param budget_duration [String, nil] - # @param budget_reset_at [Time, nil] - # @param created_at [Time, nil] - # @param llm_model_table [Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param members [Array] - # @param members_with_roles [Array] - # @param metadata [Object, nil] - # @param model_id [Integer, nil] - # @param models [Array] - # @param organization_id [String, nil] - # @param rpm_limit [Integer, nil] - # @param spend [Float, nil] - # @param team_alias [String, nil] - # @param tpm_limit [Integer, nil] - - # @see Hanzoai::Models::Organization::InfoRetrieveResponse::Team#llm_model_table - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute model_aliases - # - # @return [Object, String, nil] - optional :model_aliases, - union: -> { Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases }, - nil?: true - - # @!method initialize(created_by:, updated_by:, model_aliases: nil) - # @param created_by [String] - # @param updated_by [String] - # @param model_aliases [Object, String, nil] - - # @see Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable#model_aliases - module ModelAliases - extend Hanzoai::Internal::Type::Union - - variant Hanzoai::Internal::Type::Unknown - - variant String - - # @!method self.variants - # @return [Array(Object, String)] - end - end - end - end - end - end -end diff --git a/lib/hanzoai/models/organization_add_member_response.rb b/lib/hanzoai/models/organization_add_member_response.rb index 2b6202d7..92d0ee43 100644 --- a/lib/hanzoai/models/organization_add_member_response.rb +++ b/lib/hanzoai/models/organization_add_member_response.rb @@ -11,9 +11,9 @@ class OrganizationAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @!attribute updated_organization_memberships # - # @return [Array] + # @return [Array] required :updated_organization_memberships, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership] } + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable] } # @!attribute updated_users # @@ -23,130 +23,9 @@ class OrganizationAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @!method initialize(organization_id:, updated_organization_memberships:, updated_users:) # @param organization_id [String] - # @param updated_organization_memberships [Array] + # @param updated_organization_memberships [Array] # @param updated_users [Array] - class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id - # - # @return [String] - required :organization_id, String - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute budget_id - # - # @return [String, nil] - optional :budget_id, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable }, - nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown - - # @!attribute user_role - # - # @return [String, nil] - optional :user_role, String, nil?: true - - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] - # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] - # - # @param user_role [String, nil] - - # @see Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @!attribute user_id # @@ -163,6 +42,11 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Time, nil] optional :budget_reset_at, Time, nil?: true + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true + # @!attribute max_budget # # @return [Float, nil] @@ -170,29 +54,39 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_spend # - # @return [Object, nil] - optional :model_spend, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_spend, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission }, + nil?: true + # @!attribute organization_memberships # - # @return [Array, nil] + # @return [Array, nil] optional :organization_memberships, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership] }, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable] }, nil?: true # @!attribute rpm_limit @@ -220,6 +114,16 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!attribute user_alias + # + # @return [String, nil] + optional :user_alias, String, nil?: true + # @!attribute user_email # # @return [String, nil] @@ -230,143 +134,96 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, user_email: nil, user_role: nil) + # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, created_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, object_permission: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, updated_at: nil, user_alias: nil, user_email: nil, user_role: nil) # @param user_id [String] + # # @param budget_duration [String, nil] + # # @param budget_reset_at [Time, nil] + # + # @param created_at [Time, nil] + # # @param max_budget [Float, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_spend [Object, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # + # @param model_spend [Hash{Symbol=>Object}, nil] + # # @param models [Array] - # @param organization_memberships [Array, nil] + # + # @param object_permission [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param organization_memberships [Array, nil] + # # @param rpm_limit [Integer, nil] + # # @param spend [Float] + # # @param sso_user_id [String, nil] + # # @param teams [Array] + # # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] + # + # @param user_alias [String, nil] + # # @param user_email [String, nil] + # # @param user_role [String, nil] - class OrganizationMembership < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id + # @see Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id # # @return [String] - required :organization_id, String + required :object_permission_id, String - # @!attribute updated_at + # @!attribute agent_access_groups # - # @return [Time] - required :updated_at, Time + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute user_id + # @!attribute agents # - # @return [String] - required :user_id, String + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute budget_id + # @!attribute mcp_access_groups # - # @return [String, nil] - optional :budget_id, String, nil?: true + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record + # @!attribute mcp_servers # - # @return [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable }, - nil?: true + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute spend + # @!attribute mcp_tool_permissions # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true - # @!attribute user_role + # @!attribute vector_stores # - # @return [String, nil] - optional :user_role, String, nil?: true + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] - # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record # - # @param user_role [String, nil] - - # @see Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] end end end diff --git a/lib/hanzoai/models/organization_create_params.rb b/lib/hanzoai/models/organization_create_params.rb index fb7903c2..b1795ca2 100644 --- a/lib/hanzoai/models/organization_create_params.rb +++ b/lib/hanzoai/models/organization_create_params.rb @@ -34,19 +34,36 @@ class OrganizationCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute model_rpm_limit + # + # @return [Hash{Symbol=>Integer}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Integer], nil?: true + + # @!attribute model_tpm_limit + # + # @return [Hash{Symbol=>Integer}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Integer], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # + # @return [Hanzoai::Models::OrganizationCreateParams::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::OrganizationCreateParams::ObjectPermission }, nil?: true + # @!attribute organization_id # # @return [String, nil] @@ -67,20 +84,65 @@ class OrganizationCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!method initialize(organization_alias:, budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, models: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @!method initialize(organization_alias:, budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # @param organization_alias [String] # @param budget_duration [String, nil] # @param budget_id [String, nil] # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # @param model_rpm_limit [Hash{Symbol=>Integer}, nil] + # @param model_tpm_limit [Hash{Symbol=>Integer}, nil] # @param models [Array] + # @param object_permission [Hanzoai::Models::OrganizationCreateParams::ObjectPermission, nil] # @param organization_id [String, nil] # @param rpm_limit [Integer, nil] # @param soft_budget [Float, nil] # @param tpm_limit [Integer, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end end end end diff --git a/lib/hanzoai/models/organization_create_response.rb b/lib/hanzoai/models/organization_create_response.rb index 7733bd90..d6a5c5a8 100644 --- a/lib/hanzoai/models/organization_create_response.rb +++ b/lib/hanzoai/models/organization_create_response.rb @@ -39,10 +39,29 @@ class OrganizationCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [String] required :updated_by, String + # @!attribute litellm_budget_table + # Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @return [Hanzoai::Models::BudgetTable, nil] + optional :litellm_budget_table, -> { Hanzoai::BudgetTable }, nil?: true + # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::OrganizationCreateResponse::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::Models::OrganizationCreateResponse::ObjectPermission }, + nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true # @!attribute organization_alias # @@ -54,17 +73,293 @@ class OrganizationCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :spend, Float - # @!method initialize(budget_id:, created_at:, created_by:, models:, organization_id:, updated_at:, updated_by:, metadata: nil, organization_alias: nil, spend: nil) + # @!attribute users + # + # @return [Array, nil] + optional :users, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationCreateResponse::User] }, + nil?: true + + # @!method initialize(budget_id:, created_at:, created_by:, models:, organization_id:, updated_at:, updated_by:, litellm_budget_table: nil, metadata: nil, object_permission: nil, object_permission_id: nil, organization_alias: nil, spend: nil, users: nil) # @param budget_id [String] + # # @param created_at [Time] + # # @param created_by [String] + # # @param models [Array] + # # @param organization_id [String] + # # @param updated_at [Time] + # # @param updated_by [String] - # @param metadata [Object, nil] + # + # @param litellm_budget_table [Hanzoai::Models::BudgetTable, nil] Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param object_permission [Hanzoai::Models::OrganizationCreateResponse::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # # @param organization_alias [String, nil] + # # @param spend [Float] + # + # @param users [Array, nil] + + # @see Hanzoai::Models::OrganizationCreateResponse#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + class User < Hanzoai::Internal::Type::BaseModel + # @!attribute user_id + # + # @return [String] + required :user_id, String + + # @!attribute budget_duration + # + # @return [String, nil] + optional :budget_duration, String, nil?: true + + # @!attribute budget_reset_at + # + # @return [Time, nil] + optional :budget_reset_at, Time, nil?: true + + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true + + # @!attribute max_budget + # + # @return [Float, nil] + optional :max_budget, Float, nil?: true + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute model_max_budget + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute model_spend + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_spend, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute models + # + # @return [Array, nil] + optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission }, + nil?: true + + # @!attribute organization_memberships + # + # @return [Array, nil] + optional :organization_memberships, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable] }, + nil?: true + + # @!attribute rpm_limit + # + # @return [Integer, nil] + optional :rpm_limit, Integer, nil?: true + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float + + # @!attribute sso_user_id + # + # @return [String, nil] + optional :sso_user_id, String, nil?: true + + # @!attribute teams + # + # @return [Array, nil] + optional :teams, Hanzoai::Internal::Type::ArrayOf[String] + + # @!attribute tpm_limit + # + # @return [Integer, nil] + optional :tpm_limit, Integer, nil?: true + + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!attribute user_alias + # + # @return [String, nil] + optional :user_alias, String, nil?: true + + # @!attribute user_email + # + # @return [String, nil] + optional :user_email, String, nil?: true + + # @!attribute user_role + # + # @return [String, nil] + optional :user_role, String, nil?: true + + # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, created_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, object_permission: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, updated_at: nil, user_alias: nil, user_email: nil, user_role: nil) + # @param user_id [String] + # + # @param budget_duration [String, nil] + # + # @param budget_reset_at [Time, nil] + # + # @param created_at [Time, nil] + # + # @param max_budget [Float, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # + # @param model_spend [Hash{Symbol=>Object}, nil] + # + # @param models [Array] + # + # @param object_permission [Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param organization_memberships [Array, nil] + # + # @param rpm_limit [Integer, nil] + # + # @param spend [Float] + # + # @param sso_user_id [String, nil] + # + # @param teams [Array] + # + # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] + # + # @param user_alias [String, nil] + # + # @param user_email [String, nil] + # + # @param user_role [String, nil] + + # @see Hanzoai::Models::OrganizationCreateResponse::User#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + end end end end diff --git a/lib/hanzoai/models/organization_delete_response.rb b/lib/hanzoai/models/organization_delete_response.rb index 1b1fd3fe..4e28055c 100644 --- a/lib/hanzoai/models/organization_delete_response.rb +++ b/lib/hanzoai/models/organization_delete_response.rb @@ -2,436 +2,8 @@ module Hanzoai module Models - class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_id - # - # @return [String] - required :budget_id, String - - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute models - # - # @return [Array] - required :models, Hanzoai::Internal::Type::ArrayOf[String] - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable }, - nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationDeleteResponseItem::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute organization_alias - # - # @return [String, nil] - optional :organization_alias, String, nil?: true - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute teams - # - # @return [Array, nil] - optional :teams, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationDeleteResponseItem::Team] } - - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) - # Returned by the /organization/info endpoint and /organization/list endpoint - # - # @param budget_id [String] - # - # @param created_at [Time] - # - # @param created_by [String] - # - # @param models [Array] - # - # @param updated_at [Time] - # - # @param updated_by [String] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param members [Array] - # - # @param metadata [Object, nil] - # - # @param organization_alias [String, nil] - # - # @param organization_id [String, nil] - # - # @param spend [Float] - # - # @param teams [Array] - - # @see Hanzoai::Models::OrganizationDeleteResponseItem#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - - class Member < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id - # - # @return [String] - required :organization_id, String - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute budget_id - # - # @return [String, nil] - optional :budget_id, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable }, - nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown - - # @!attribute user_role - # - # @return [String, nil] - optional :user_role, String, nil?: true - - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] - # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] - # - # @param user_role [String, nil] - - # @see Hanzoai::Models::OrganizationDeleteResponseItem::Member#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - # @!attribute team_id - # - # @return [String] - required :team_id, String - - # @!attribute admins - # - # @return [Array, nil] - optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute blocked - # - # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::Boolean - - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute budget_reset_at - # - # @return [Time, nil] - optional :budget_reset_at, Time, nil?: true - - # @!attribute created_at - # - # @return [Time, nil] - optional :created_at, Time, nil?: true - - # @!attribute llm_model_table - # - # @return [Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, nil] - optional :llm_model_table, - -> { Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable }, - nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute members_with_roles - # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute model_id - # - # @return [Integer, nil] - optional :model_id, Integer, nil?: true - - # @!attribute models - # - # @return [Array, nil] - optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float, nil?: true - - # @!attribute team_alias - # - # @return [String, nil] - optional :team_alias, String, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) - # @param team_id [String] - # @param admins [Array] - # @param blocked [Boolean] - # @param budget_duration [String, nil] - # @param budget_reset_at [Time, nil] - # @param created_at [Time, nil] - # @param llm_model_table [Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param members [Array] - # @param members_with_roles [Array] - # @param metadata [Object, nil] - # @param model_id [Integer, nil] - # @param models [Array] - # @param organization_id [String, nil] - # @param rpm_limit [Integer, nil] - # @param spend [Float, nil] - # @param team_alias [String, nil] - # @param tpm_limit [Integer, nil] - - # @see Hanzoai::Models::OrganizationDeleteResponseItem::Team#llm_model_table - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute model_aliases - # - # @return [Object, String, nil] - optional :model_aliases, - union: -> { Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases }, - nil?: true - - # @!method initialize(created_by:, updated_by:, model_aliases: nil) - # @param created_by [String] - # @param updated_by [String] - # @param model_aliases [Object, String, nil] - - # @see Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable#model_aliases - module ModelAliases - extend Hanzoai::Internal::Type::Union - - variant Hanzoai::Internal::Type::Unknown - - variant String - - # @!method self.variants - # @return [Array(Object, String)] - end - end - end - end - # @type [Hanzoai::Internal::Type::Converter] OrganizationDeleteResponse = - Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::OrganizationDeleteResponseItem }] + Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::OrganizationTableWithMembers }] end end diff --git a/lib/hanzoai/models/organization_list_params.rb b/lib/hanzoai/models/organization_list_params.rb index a35fba6d..8ffbb642 100644 --- a/lib/hanzoai/models/organization_list_params.rb +++ b/lib/hanzoai/models/organization_list_params.rb @@ -7,7 +7,27 @@ class OrganizationListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!method initialize(request_options: {}) + # @!attribute org_alias + # Filter organizations by partial organization_alias match. Supports + # case-insensitive search. + # + # @return [String, nil] + optional :org_alias, String, nil?: true + + # @!attribute org_id + # Filter organizations by exact organization_id match + # + # @return [String, nil] + optional :org_id, String, nil?: true + + # @!method initialize(org_alias: nil, org_id: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::OrganizationListParams} for more details. + # + # @param org_alias [String, nil] Filter organizations by partial organization_alias match. Supports case-insensit + # + # @param org_id [String, nil] Filter organizations by exact organization_id match + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/organization_list_response.rb b/lib/hanzoai/models/organization_list_response.rb index 89e6025d..4a536620 100644 --- a/lib/hanzoai/models/organization_list_response.rb +++ b/lib/hanzoai/models/organization_list_response.rb @@ -2,436 +2,7 @@ module Hanzoai module Models - class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_id - # - # @return [String] - required :budget_id, String - - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute models - # - # @return [Array] - required :models, Hanzoai::Internal::Type::ArrayOf[String] - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable }, - nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationListResponseItem::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute organization_alias - # - # @return [String, nil] - optional :organization_alias, String, nil?: true - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute teams - # - # @return [Array, nil] - optional :teams, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationListResponseItem::Team] } - - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) - # Returned by the /organization/info endpoint and /organization/list endpoint - # - # @param budget_id [String] - # - # @param created_at [Time] - # - # @param created_by [String] - # - # @param models [Array] - # - # @param updated_at [Time] - # - # @param updated_by [String] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param members [Array] - # - # @param metadata [Object, nil] - # - # @param organization_alias [String, nil] - # - # @param organization_id [String, nil] - # - # @param spend [Float] - # - # @param teams [Array] - - # @see Hanzoai::Models::OrganizationListResponseItem#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - - class Member < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id - # - # @return [String] - required :organization_id, String - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute budget_id - # - # @return [String, nil] - optional :budget_id, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable }, - nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown - - # @!attribute user_role - # - # @return [String, nil] - optional :user_role, String, nil?: true - - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] - # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] - # - # @param user_role [String, nil] - - # @see Hanzoai::Models::OrganizationListResponseItem::Member#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - # @!attribute team_id - # - # @return [String] - required :team_id, String - - # @!attribute admins - # - # @return [Array, nil] - optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute blocked - # - # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::Boolean - - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute budget_reset_at - # - # @return [Time, nil] - optional :budget_reset_at, Time, nil?: true - - # @!attribute created_at - # - # @return [Time, nil] - optional :created_at, Time, nil?: true - - # @!attribute llm_model_table - # - # @return [Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, nil] - optional :llm_model_table, - -> { Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable }, - nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute members_with_roles - # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute model_id - # - # @return [Integer, nil] - optional :model_id, Integer, nil?: true - - # @!attribute models - # - # @return [Array, nil] - optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float, nil?: true - - # @!attribute team_alias - # - # @return [String, nil] - optional :team_alias, String, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) - # @param team_id [String] - # @param admins [Array] - # @param blocked [Boolean] - # @param budget_duration [String, nil] - # @param budget_reset_at [Time, nil] - # @param created_at [Time, nil] - # @param llm_model_table [Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param members [Array] - # @param members_with_roles [Array] - # @param metadata [Object, nil] - # @param model_id [Integer, nil] - # @param models [Array] - # @param organization_id [String, nil] - # @param rpm_limit [Integer, nil] - # @param spend [Float, nil] - # @param team_alias [String, nil] - # @param tpm_limit [Integer, nil] - - # @see Hanzoai::Models::OrganizationListResponseItem::Team#llm_model_table - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute model_aliases - # - # @return [Object, String, nil] - optional :model_aliases, - union: -> { Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases }, - nil?: true - - # @!method initialize(created_by:, updated_by:, model_aliases: nil) - # @param created_by [String] - # @param updated_by [String] - # @param model_aliases [Object, String, nil] - - # @see Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable#model_aliases - module ModelAliases - extend Hanzoai::Internal::Type::Union - - variant Hanzoai::Internal::Type::Unknown - - variant String - - # @!method self.variants - # @return [Array(Object, String)] - end - end - end - end - # @type [Hanzoai::Internal::Type::Converter] - OrganizationListResponse = - Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::Models::OrganizationListResponseItem }] + OrganizationListResponse = Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::OrganizationTableWithMembers }] end end diff --git a/lib/hanzoai/models/organization_membership_table.rb b/lib/hanzoai/models/organization_membership_table.rb new file mode 100644 index 00000000..eaf960cd --- /dev/null +++ b/lib/hanzoai/models/organization_membership_table.rb @@ -0,0 +1,76 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @see Hanzoai::Resources::Organization#update_member + class OrganizationMembershipTable < Hanzoai::Internal::Type::BaseModel + # @!attribute created_at + # + # @return [Time] + required :created_at, Time + + # @!attribute organization_id + # + # @return [String] + required :organization_id, String + + # @!attribute updated_at + # + # @return [Time] + required :updated_at, Time + + # @!attribute user_id + # + # @return [String] + required :user_id, String + + # @!attribute budget_id + # + # @return [String, nil] + optional :budget_id, String, nil?: true + + # @!attribute litellm_budget_table + # Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @return [Hanzoai::Models::BudgetTable, nil] + optional :litellm_budget_table, -> { Hanzoai::BudgetTable }, nil?: true + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float + + # @!attribute user + # + # @return [Object, nil] + optional :user, Hanzoai::Internal::Type::Unknown + + # @!attribute user_role + # + # @return [String, nil] + optional :user_role, String, nil?: true + + # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, litellm_budget_table: nil, spend: nil, user: nil, user_role: nil) + # This is the table that track what organizations a user belongs to and users + # spend within the organization + # + # @param created_at [Time] + # + # @param organization_id [String] + # + # @param updated_at [Time] + # + # @param user_id [String] + # + # @param budget_id [String, nil] + # + # @param litellm_budget_table [Hanzoai::Models::BudgetTable, nil] Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @param spend [Float] + # + # @param user [Object] + # + # @param user_role [String, nil] + end + end +end diff --git a/lib/hanzoai/models/organization_table_with_members.rb b/lib/hanzoai/models/organization_table_with_members.rb new file mode 100644 index 00000000..63aec8e2 --- /dev/null +++ b/lib/hanzoai/models/organization_table_with_members.rb @@ -0,0 +1,606 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # @see Hanzoai::Resources::Organization#update + class OrganizationTableWithMembers < Hanzoai::Internal::Type::BaseModel + # @!attribute budget_id + # + # @return [String] + required :budget_id, String + + # @!attribute created_at + # + # @return [Time] + required :created_at, Time + + # @!attribute created_by + # + # @return [String] + required :created_by, String + + # @!attribute models + # + # @return [Array] + required :models, Hanzoai::Internal::Type::ArrayOf[String] + + # @!attribute updated_at + # + # @return [Time] + required :updated_at, Time + + # @!attribute updated_by + # + # @return [String] + required :updated_by, String + + # @!attribute litellm_budget_table + # Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @return [Hanzoai::Models::BudgetTable, nil] + optional :litellm_budget_table, -> { Hanzoai::BudgetTable }, nil?: true + + # @!attribute members + # + # @return [Array, nil] + optional :members, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable] } + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::OrganizationTableWithMembers::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::OrganizationTableWithMembers::ObjectPermission }, nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true + + # @!attribute organization_alias + # + # @return [String, nil] + optional :organization_alias, String, nil?: true + + # @!attribute organization_id + # + # @return [String, nil] + optional :organization_id, String, nil?: true + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float + + # @!attribute teams + # + # @return [Array, nil] + optional :teams, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers::Team] } + + # @!attribute users + # + # @return [Array, nil] + optional :users, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers::User] }, + nil?: true + + # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, litellm_budget_table: nil, members: nil, metadata: nil, object_permission: nil, object_permission_id: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil, users: nil) + # Returned by the /organization/info endpoint and /organization/list endpoint + # + # @param budget_id [String] + # + # @param created_at [Time] + # + # @param created_by [String] + # + # @param models [Array] + # + # @param updated_at [Time] + # + # @param updated_by [String] + # + # @param litellm_budget_table [Hanzoai::Models::BudgetTable, nil] Represents user-controllable params for a LiteLLM_BudgetTable record + # + # @param members [Array] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param object_permission [Hanzoai::Models::OrganizationTableWithMembers::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # + # @param organization_alias [String, nil] + # + # @param organization_id [String, nil] + # + # @param spend [Float] + # + # @param teams [Array] + # + # @param users [Array, nil] + + # @see Hanzoai::Models::OrganizationTableWithMembers#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + class Team < Hanzoai::Internal::Type::BaseModel + # @!attribute team_id + # + # @return [String] + required :team_id, String + + # @!attribute admins + # + # @return [Array, nil] + optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute blocked + # + # @return [Boolean, nil] + optional :blocked, Hanzoai::Internal::Type::Boolean + + # @!attribute budget_duration + # + # @return [String, nil] + optional :budget_duration, String, nil?: true + + # @!attribute budget_reset_at + # + # @return [Time, nil] + optional :budget_reset_at, Time, nil?: true + + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true + + # @!attribute litellm_model_table + # + # @return [Object, nil] + optional :litellm_model_table, Hanzoai::Internal::Type::Unknown + + # @!attribute max_budget + # + # @return [Float, nil] + optional :max_budget, Float, nil?: true + + # @!attribute max_parallel_requests + # + # @return [Integer, nil] + optional :max_parallel_requests, Integer, nil?: true + + # @!attribute members + # + # @return [Array, nil] + optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute members_with_roles + # + # @return [Array, nil] + optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute model_id + # + # @return [Integer, nil] + optional :model_id, Integer, nil?: true + + # @!attribute models + # + # @return [Array, nil] + optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::OrganizationTableWithMembers::Team::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission }, + nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true + + # @!attribute organization_id + # + # @return [String, nil] + optional :organization_id, String, nil?: true + + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute rpm_limit + # + # @return [Integer, nil] + optional :rpm_limit, Integer, nil?: true + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float, nil?: true + + # @!attribute team_alias + # + # @return [String, nil] + optional :team_alias, String, nil?: true + + # @!attribute team_member_permissions + # + # @return [Array, nil] + optional :team_member_permissions, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute tpm_limit + # + # @return [Integer, nil] + optional :tpm_limit, Integer, nil?: true + + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, litellm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, object_permission: nil, object_permission_id: nil, organization_id: nil, router_settings: nil, rpm_limit: nil, spend: nil, team_alias: nil, team_member_permissions: nil, tpm_limit: nil, updated_at: nil) + # @param team_id [String] + # + # @param admins [Array] + # + # @param blocked [Boolean] + # + # @param budget_duration [String, nil] + # + # @param budget_reset_at [Time, nil] + # + # @param created_at [Time, nil] + # + # @param litellm_model_table [Object] + # + # @param max_budget [Float, nil] + # + # @param max_parallel_requests [Integer, nil] + # + # @param members [Array] + # + # @param members_with_roles [Array] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_id [Integer, nil] + # + # @param models [Array] + # + # @param object_permission [Hanzoai::Models::OrganizationTableWithMembers::Team::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # + # @param organization_id [String, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] + # + # @param rpm_limit [Integer, nil] + # + # @param spend [Float, nil] + # + # @param team_alias [String, nil] + # + # @param team_member_permissions [Array, nil] + # + # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] + + # @see Hanzoai::Models::OrganizationTableWithMembers::Team#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + end + + class User < Hanzoai::Internal::Type::BaseModel + # @!attribute user_id + # + # @return [String] + required :user_id, String + + # @!attribute budget_duration + # + # @return [String, nil] + optional :budget_duration, String, nil?: true + + # @!attribute budget_reset_at + # + # @return [Time, nil] + optional :budget_reset_at, Time, nil?: true + + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true + + # @!attribute max_budget + # + # @return [Float, nil] + optional :max_budget, Float, nil?: true + + # @!attribute metadata + # + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute model_max_budget + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute model_spend + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_spend, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute models + # + # @return [Array, nil] + optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::OrganizationTableWithMembers::User::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::OrganizationTableWithMembers::User::ObjectPermission }, + nil?: true + + # @!attribute organization_memberships + # + # @return [Array, nil] + optional :organization_memberships, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable] }, + nil?: true + + # @!attribute rpm_limit + # + # @return [Integer, nil] + optional :rpm_limit, Integer, nil?: true + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float + + # @!attribute sso_user_id + # + # @return [String, nil] + optional :sso_user_id, String, nil?: true + + # @!attribute teams + # + # @return [Array, nil] + optional :teams, Hanzoai::Internal::Type::ArrayOf[String] + + # @!attribute tpm_limit + # + # @return [Integer, nil] + optional :tpm_limit, Integer, nil?: true + + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!attribute user_alias + # + # @return [String, nil] + optional :user_alias, String, nil?: true + + # @!attribute user_email + # + # @return [String, nil] + optional :user_email, String, nil?: true + + # @!attribute user_role + # + # @return [String, nil] + optional :user_role, String, nil?: true + + # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, created_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, object_permission: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, updated_at: nil, user_alias: nil, user_email: nil, user_role: nil) + # @param user_id [String] + # + # @param budget_duration [String, nil] + # + # @param budget_reset_at [Time, nil] + # + # @param created_at [Time, nil] + # + # @param max_budget [Float, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # + # @param model_spend [Hash{Symbol=>Object}, nil] + # + # @param models [Array] + # + # @param object_permission [Hanzoai::Models::OrganizationTableWithMembers::User::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param organization_memberships [Array, nil] + # + # @param rpm_limit [Integer, nil] + # + # @param spend [Float] + # + # @param sso_user_id [String, nil] + # + # @param teams [Array] + # + # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] + # + # @param user_alias [String, nil] + # + # @param user_email [String, nil] + # + # @param user_role [String, nil] + + # @see Hanzoai::Models::OrganizationTableWithMembers::User#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + end + end + end +end diff --git a/lib/hanzoai/models/organization_update_member_params.rb b/lib/hanzoai/models/organization_update_member_params.rb index b6cefe3e..99a71421 100644 --- a/lib/hanzoai/models/organization_update_member_params.rb +++ b/lib/hanzoai/models/organization_update_member_params.rb @@ -30,8 +30,8 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # # Customer Roles: CUSTOMER: External users -> these are customers # - # @return [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] - optional :role, enum: -> { Hanzoai::OrganizationUpdateMemberParams::Role }, nil?: true + # @return [Symbol, Hanzoai::Models::UserRoles, nil] + optional :role, enum: -> { Hanzoai::UserRoles }, nil?: true # @!attribute user_email # @@ -51,39 +51,13 @@ class OrganizationUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # # @param max_budget_in_organization [Float, nil] # - # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: + # @param role [Symbol, Hanzoai::Models::UserRoles, nil] Admin Roles: # # @param user_email [String, nil] # # @param user_id [String, nil] # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - - # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization - # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend - # - # Team Roles: TEAM: used for JWT auth - # - # Customer Roles: CUSTOMER: External users -> these are customers - module Role - extend Hanzoai::Internal::Type::Enum - - PROXY_ADMIN = :proxy_admin - PROXY_ADMIN_VIEWER = :proxy_admin_viewer - ORG_ADMIN = :org_admin - INTERNAL_USER = :internal_user - INTERNAL_USER_VIEWER = :internal_user_viewer - TEAM = :team - CUSTOMER = :customer - - # @!method self.values - # @return [Array] - end end end end diff --git a/lib/hanzoai/models/organization_update_member_response.rb b/lib/hanzoai/models/organization_update_member_response.rb deleted file mode 100644 index 1eff85fb..00000000 --- a/lib/hanzoai/models/organization_update_member_response.rb +++ /dev/null @@ -1,127 +0,0 @@ -# frozen_string_literal: true - -module Hanzoai - module Models - # @see Hanzoai::Resources::Organization#update_member - class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id - # - # @return [String] - required :organization_id, String - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute budget_id - # - # @return [String, nil] - optional :budget_id, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable }, - nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown - - # @!attribute user_role - # - # @return [String, nil] - optional :user_role, String, nil?: true - - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] - # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] - # - # @param user_role [String, nil] - - # @see Hanzoai::Models::OrganizationUpdateMemberResponse#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - end -end diff --git a/lib/hanzoai/models/organization_update_params.rb b/lib/hanzoai/models/organization_update_params.rb index c69444ed..f6aa95da 100644 --- a/lib/hanzoai/models/organization_update_params.rb +++ b/lib/hanzoai/models/organization_update_params.rb @@ -7,49 +7,7 @@ class OrganizationUpdateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - # @!attribute budget_id - # - # @return [String, nil] - optional :budget_id, String, nil?: true - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute models - # - # @return [Array, nil] - optional :models, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - - # @!attribute organization_alias - # - # @return [String, nil] - optional :organization_alias, String, nil?: true - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float, nil?: true - - # @!attribute updated_by - # - # @return [String, nil] - optional :updated_by, String, nil?: true - - # @!method initialize(budget_id: nil, metadata: nil, models: nil, organization_alias: nil, organization_id: nil, spend: nil, updated_by: nil, request_options: {}) - # @param budget_id [String, nil] - # @param metadata [Object, nil] - # @param models [Array, nil] - # @param organization_alias [String, nil] - # @param organization_id [String, nil] - # @param spend [Float, nil] - # @param updated_by [String, nil] + # @!method initialize(request_options: {}) # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/hanzoai/models/organization_update_response.rb b/lib/hanzoai/models/organization_update_response.rb deleted file mode 100644 index 4a941d30..00000000 --- a/lib/hanzoai/models/organization_update_response.rb +++ /dev/null @@ -1,432 +0,0 @@ -# frozen_string_literal: true - -module Hanzoai - module Models - # @see Hanzoai::Resources::Organization#update - class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_id - # - # @return [String] - required :budget_id, String - - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute models - # - # @return [Array] - required :models, Hanzoai::Internal::Type::ArrayOf[String] - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, nil] - optional :llm_budget_table, -> { Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable }, nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationUpdateResponse::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute organization_alias - # - # @return [String, nil] - optional :organization_alias, String, nil?: true - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute teams - # - # @return [Array, nil] - optional :teams, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationUpdateResponse::Team] } - - # @!method initialize(budget_id:, created_at:, created_by:, models:, updated_at:, updated_by:, llm_budget_table: nil, members: nil, metadata: nil, organization_alias: nil, organization_id: nil, spend: nil, teams: nil) - # Returned by the /organization/info endpoint and /organization/list endpoint - # - # @param budget_id [String] - # - # @param created_at [Time] - # - # @param created_by [String] - # - # @param models [Array] - # - # @param updated_at [Time] - # - # @param updated_by [String] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param members [Array] - # - # @param metadata [Object, nil] - # - # @param organization_alias [String, nil] - # - # @param organization_id [String, nil] - # - # @param spend [Float] - # - # @param teams [Array] - - # @see Hanzoai::Models::OrganizationUpdateResponse#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - - class Member < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id - # - # @return [String] - required :organization_id, String - - # @!attribute updated_at - # - # @return [Time] - required :updated_at, Time - - # @!attribute user_id - # - # @return [String] - required :user_id, String - - # @!attribute budget_id - # - # @return [String, nil] - optional :budget_id, String, nil?: true - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable }, - nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown - - # @!attribute user_role - # - # @return [String, nil] - optional :user_role, String, nil?: true - - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] - # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] - # - # @param user_role [String, nil] - - # @see Hanzoai::Models::OrganizationUpdateResponse::Member#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - # @!attribute team_id - # - # @return [String] - required :team_id, String - - # @!attribute admins - # - # @return [Array, nil] - optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute blocked - # - # @return [Boolean, nil] - optional :blocked, Hanzoai::Internal::Type::Boolean - - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute budget_reset_at - # - # @return [Time, nil] - optional :budget_reset_at, Time, nil?: true - - # @!attribute created_at - # - # @return [Time, nil] - optional :created_at, Time, nil?: true - - # @!attribute llm_model_table - # - # @return [Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, nil] - optional :llm_model_table, - -> { Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable }, - nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute members - # - # @return [Array, nil] - optional :members, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute members_with_roles - # - # @return [Array, nil] - optional :members_with_roles, -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member] } - - # @!attribute metadata - # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute model_id - # - # @return [Integer, nil] - optional :model_id, Integer, nil?: true - - # @!attribute models - # - # @return [Array, nil] - optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] - - # @!attribute organization_id - # - # @return [String, nil] - optional :organization_id, String, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute spend - # - # @return [Float, nil] - optional :spend, Float, nil?: true - - # @!attribute team_alias - # - # @return [String, nil] - optional :team_alias, String, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) - # @param team_id [String] - # @param admins [Array] - # @param blocked [Boolean] - # @param budget_duration [String, nil] - # @param budget_reset_at [Time, nil] - # @param created_at [Time, nil] - # @param llm_model_table [Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param members [Array] - # @param members_with_roles [Array] - # @param metadata [Object, nil] - # @param model_id [Integer, nil] - # @param models [Array] - # @param organization_id [String, nil] - # @param rpm_limit [Integer, nil] - # @param spend [Float, nil] - # @param team_alias [String, nil] - # @param tpm_limit [Integer, nil] - - # @see Hanzoai::Models::OrganizationUpdateResponse::Team#llm_model_table - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - # @!attribute created_by - # - # @return [String] - required :created_by, String - - # @!attribute updated_by - # - # @return [String] - required :updated_by, String - - # @!attribute model_aliases - # - # @return [Object, String, nil] - optional :model_aliases, - union: -> { Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases }, - nil?: true - - # @!method initialize(created_by:, updated_by:, model_aliases: nil) - # @param created_by [String] - # @param updated_by [String] - # @param model_aliases [Object, String, nil] - - # @see Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable#model_aliases - module ModelAliases - extend Hanzoai::Internal::Type::Union - - variant Hanzoai::Internal::Type::Unknown - - variant String - - # @!method self.variants - # @return [Array(Object, String)] - end - end - end - end - end -end diff --git a/lib/hanzoai/models/spend_calculate_spend_params.rb b/lib/hanzoai/models/spend_calculate_spend_params.rb index 5f812fb3..78ff78df 100644 --- a/lib/hanzoai/models/spend_calculate_spend_params.rb +++ b/lib/hanzoai/models/spend_calculate_spend_params.rb @@ -9,8 +9,10 @@ class SpendCalculateSpendParams < Hanzoai::Internal::Type::BaseModel # @!attribute completion_response # - # @return [Object, nil] - optional :completion_response, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :completion_response, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute messages # @@ -23,7 +25,7 @@ class SpendCalculateSpendParams < Hanzoai::Internal::Type::BaseModel optional :model, String, nil?: true # @!method initialize(completion_response: nil, messages: nil, model: nil, request_options: {}) - # @param completion_response [Object, nil] + # @param completion_response [Hash{Symbol=>Object}, nil] # @param messages [Array, nil] # @param model [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/spend_list_logs_params.rb b/lib/hanzoai/models/spend_list_logs_params.rb index 487ca4f7..1cf554d4 100644 --- a/lib/hanzoai/models/spend_list_logs_params.rb +++ b/lib/hanzoai/models/spend_list_logs_params.rb @@ -32,13 +32,20 @@ class SpendListLogsParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :start_date, String, nil?: true + # @!attribute summarize + # When start_date and end_date are provided, summarize=true returns aggregated + # data by date (legacy behavior), summarize=false returns filtered individual logs + # + # @return [Boolean, nil] + optional :summarize, Hanzoai::Internal::Type::Boolean + # @!attribute user_id # Get spend logs based on user_id # # @return [String, nil] optional :user_id, String, nil?: true - # @!method initialize(api_key: nil, end_date: nil, request_id: nil, start_date: nil, user_id: nil, request_options: {}) + # @!method initialize(api_key: nil, end_date: nil, request_id: nil, start_date: nil, summarize: nil, user_id: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::SpendListLogsParams} for more details. # @@ -50,6 +57,8 @@ class SpendListLogsParams < Hanzoai::Internal::Type::BaseModel # # @param start_date [String, nil] Time from which to start viewing key spend # + # @param summarize [Boolean] When start_date and end_date are provided, summarize=true returns aggregated dat + # # @param user_id [String, nil] Get spend logs based on user_id # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/spend_list_logs_response.rb b/lib/hanzoai/models/spend_list_logs_response.rb index d5ae911a..a7433661 100644 --- a/lib/hanzoai/models/spend_list_logs_response.rb +++ b/lib/hanzoai/models/spend_list_logs_response.rb @@ -23,7 +23,7 @@ class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute messages # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :messages, union: -> { Hanzoai::Models::SpendListLogsResponseItem::Messages }, nil?: true # @!attribute request_id @@ -33,7 +33,7 @@ class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute response # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :response, union: -> { Hanzoai::Models::SpendListLogsResponseItem::Response }, nil?: true # @!attribute start_time @@ -108,9 +108,9 @@ class SpendListLogsResponseItem < Hanzoai::Internal::Type::BaseModel # @param api_key [String] # @param call_type [String] # @param end_time [String, Time, nil] - # @param messages [String, Array, Object, nil] + # @param messages [String, Array, Hash{Symbol=>Object}, nil] # @param request_id [String] - # @param response [String, Array, Object, nil] + # @param response [String, Array, Hash{Symbol=>Object}, nil] # @param start_time [String, Time, nil] # @param api_base [String, nil] # @param cache_hit [String, nil] @@ -145,13 +145,16 @@ module Messages variant -> { Hanzoai::Models::SpendListLogsResponseItem::Messages::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::SpendListLogsResponseItem::Messages::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::SpendListLogsResponseItem#response @@ -162,13 +165,16 @@ module Response variant -> { Hanzoai::Models::SpendListLogsResponseItem::Response::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::SpendListLogsResponseItem::Response::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::SpendListLogsResponseItem#start_time diff --git a/lib/hanzoai/models/spend_list_tags_response.rb b/lib/hanzoai/models/spend_list_tags_response.rb index 6d84d64f..60eca3b2 100644 --- a/lib/hanzoai/models/spend_list_tags_response.rb +++ b/lib/hanzoai/models/spend_list_tags_response.rb @@ -23,7 +23,7 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute messages # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :messages, union: -> { Hanzoai::Models::SpendListTagsResponseItem::Messages }, nil?: true # @!attribute request_id @@ -33,7 +33,7 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @!attribute response # - # @return [String, Array, Object, nil] + # @return [String, Array, Hash{Symbol=>Object}, nil] required :response, union: -> { Hanzoai::Models::SpendListTagsResponseItem::Response }, nil?: true # @!attribute start_time @@ -108,9 +108,9 @@ class SpendListTagsResponseItem < Hanzoai::Internal::Type::BaseModel # @param api_key [String] # @param call_type [String] # @param end_time [String, Time, nil] - # @param messages [String, Array, Object, nil] + # @param messages [String, Array, Hash{Symbol=>Object}, nil] # @param request_id [String] - # @param response [String, Array, Object, nil] + # @param response [String, Array, Hash{Symbol=>Object}, nil] # @param start_time [String, Time, nil] # @param api_base [String, nil] # @param cache_hit [String, nil] @@ -145,13 +145,16 @@ module Messages variant -> { Hanzoai::Models::SpendListTagsResponseItem::Messages::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::SpendListTagsResponseItem::Messages::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::SpendListTagsResponseItem#response @@ -162,13 +165,16 @@ module Response variant -> { Hanzoai::Models::SpendListTagsResponseItem::Response::UnionMember1Array } - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::SpendListTagsResponseItem::Response::UnionMember2Map } # @!method self.variants - # @return [Array(String, Array, Object)] + # @return [Array(String, Array, Hash{Symbol=>Object})] # @type [Hanzoai::Internal::Type::Converter] UnionMember1Array = Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember2Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end # @see Hanzoai::Models::SpendListTagsResponseItem#start_time diff --git a/lib/hanzoai/models/team/callback_add_params.rb b/lib/hanzoai/models/team/callback_add_params.rb index dcf5ea77..acec55f8 100644 --- a/lib/hanzoai/models/team/callback_add_params.rb +++ b/lib/hanzoai/models/team/callback_add_params.rb @@ -23,14 +23,15 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] optional :callback_type, enum: -> { Hanzoai::Team::CallbackAddParams::CallbackType }, nil?: true - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}) + # @!method initialize(callback_name:, callback_vars:, callback_type: nil, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::Team::CallbackAddParams} for more details. # @@ -40,7 +41,7 @@ class CallbackAddParams < Hanzoai::Internal::Type::BaseModel # # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/hanzoai/models/team_add_member_params.rb b/lib/hanzoai/models/team_add_member_params.rb index 44b31c01..820473ec 100644 --- a/lib/hanzoai/models/team_add_member_params.rb +++ b/lib/hanzoai/models/team_add_member_params.rb @@ -8,26 +8,39 @@ class TeamAddMemberParams < Hanzoai::Internal::Type::BaseModel include Hanzoai::Internal::Type::RequestParameters # @!attribute member + # Member object or list of member objects to add. Each member must include either + # user_id or user_email, and a role # # @return [Array, Hanzoai::Models::Member] required :member, union: -> { Hanzoai::TeamAddMemberParams::Member } # @!attribute team_id + # The ID of the team to add the member to # # @return [String] required :team_id, String # @!attribute max_budget_in_team + # Maximum budget allocated to this user within the team. If not set, user has + # unlimited budget within team limits # # @return [Float, nil] optional :max_budget_in_team, Float, nil?: true # @!method initialize(member:, team_id:, max_budget_in_team: nil, request_options: {}) - # @param member [Array, Hanzoai::Models::Member] - # @param team_id [String] - # @param max_budget_in_team [Float, nil] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamAddMemberParams} for more details. + # + # @param member [Array, Hanzoai::Models::Member] Member object or list of member objects to add. Each member must include either + # + # @param team_id [String] The ID of the team to add the member to + # + # @param max_budget_in_team [Float, nil] Maximum budget allocated to this user within the team. If not set, user has unli + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + # Member object or list of member objects to add. Each member must include either + # user_id or user_email, and a role module Member extend Hanzoai::Internal::Type::Union diff --git a/lib/hanzoai/models/team_add_member_response.rb b/lib/hanzoai/models/team_add_member_response.rb index 1d093da5..34546f8b 100644 --- a/lib/hanzoai/models/team_add_member_response.rb +++ b/lib/hanzoai/models/team_add_member_response.rb @@ -46,10 +46,12 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [Time, nil] optional :created_at, Time, nil?: true - # @!attribute llm_model_table + # @!attribute litellm_model_table # - # @return [Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, nil] - optional :llm_model_table, -> { Hanzoai::Models::TeamAddMemberResponse::LlmModelTable }, nil?: true + # @return [Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable, nil] + optional :litellm_model_table, + -> { Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable }, + nil?: true # @!attribute max_budget # @@ -73,8 +75,8 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_id # @@ -86,11 +88,27 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::TeamAddMemberResponse::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::Models::TeamAddMemberResponse::ObjectPermission }, nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true + # @!attribute organization_id # # @return [String, nil] optional :organization_id, String, nil?: true + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute rpm_limit # # @return [Integer, nil] @@ -106,47 +124,80 @@ class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :team_alias, String, nil?: true + # @!attribute team_member_permissions + # + # @return [Array, nil] + optional :team_member_permissions, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + # @!attribute tpm_limit # # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!method initialize(team_id:, updated_team_memberships:, updated_users:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!method initialize(team_id:, updated_team_memberships:, updated_users:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, litellm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, object_permission: nil, object_permission_id: nil, organization_id: nil, router_settings: nil, rpm_limit: nil, spend: nil, team_alias: nil, team_member_permissions: nil, tpm_limit: nil, updated_at: nil) # @param team_id [String] + # # @param updated_team_memberships [Array] + # # @param updated_users [Array] + # # @param admins [Array] + # # @param blocked [Boolean] + # # @param budget_duration [String, nil] + # # @param budget_reset_at [Time, nil] + # # @param created_at [Time, nil] - # @param llm_model_table [Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, nil] + # + # @param litellm_model_table [Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable, nil] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] + # # @param members [Array] + # # @param members_with_roles [Array] - # @param metadata [Object, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # # @param model_id [Integer, nil] + # # @param models [Array] + # + # @param object_permission [Hanzoai::Models::TeamAddMemberResponse::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # # @param organization_id [String, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] + # # @param rpm_limit [Integer, nil] + # # @param spend [Float, nil] + # # @param team_alias [String, nil] + # + # @param team_member_permissions [Array, nil] + # # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_id + # @!attribute litellm_budget_table + # Represents user-controllable params for a LiteLLM_BudgetTable record # - # @return [String] - required :budget_id, String - - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record - # - # @return [Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, nil] - required :llm_budget_table, - -> { Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable }, - nil?: true + # @return [Hanzoai::Models::BudgetTable, nil] + required :litellm_budget_table, -> { Hanzoai::BudgetTable }, nil?: true # @!attribute team_id # @@ -158,63 +209,26 @@ class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel # @return [String] required :user_id, String - # @!method initialize(budget_id:, llm_budget_table:, team_id:, user_id:) - # @param budget_id [String] + # @!attribute budget_id # - # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record + # @return [String, nil] + optional :budget_id, String, nil?: true + + # @!attribute spend + # + # @return [Float, nil] + optional :spend, Float, nil?: true + + # @!method initialize(litellm_budget_table:, team_id:, user_id:, budget_id: nil, spend: nil) + # @param litellm_budget_table [Hanzoai::Models::BudgetTable, nil] Represents user-controllable params for a LiteLLM_BudgetTable record # # @param team_id [String] # # @param user_id [String] - - # @see Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end + # + # @param budget_id [String, nil] + # + # @param spend [Float, nil] end class UpdatedUser < Hanzoai::Internal::Type::BaseModel @@ -233,6 +247,11 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Time, nil] optional :budget_reset_at, Time, nil?: true + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true + # @!attribute max_budget # # @return [Float, nil] @@ -240,29 +259,39 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_spend # - # @return [Object, nil] - optional :model_spend, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_spend, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission, nil] + optional :object_permission, + -> { Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission }, + nil?: true + # @!attribute organization_memberships # - # @return [Array, nil] + # @return [Array, nil] optional :organization_memberships, - -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership] }, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable] }, nil?: true # @!attribute rpm_limit @@ -290,6 +319,16 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!attribute user_alias + # + # @return [String, nil] + optional :user_alias, String, nil?: true + # @!attribute user_email # # @return [String, nil] @@ -300,148 +339,101 @@ class UpdatedUser < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_role, String, nil?: true - # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, user_email: nil, user_role: nil) + # @!method initialize(user_id:, budget_duration: nil, budget_reset_at: nil, created_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, object_permission: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, updated_at: nil, user_alias: nil, user_email: nil, user_role: nil) # @param user_id [String] + # # @param budget_duration [String, nil] + # # @param budget_reset_at [Time, nil] + # + # @param created_at [Time, nil] + # # @param max_budget [Float, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_spend [Object, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # + # @param model_spend [Hash{Symbol=>Object}, nil] + # # @param models [Array] - # @param organization_memberships [Array, nil] + # + # @param object_permission [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param organization_memberships [Array, nil] + # # @param rpm_limit [Integer, nil] + # # @param spend [Float] + # # @param sso_user_id [String, nil] + # # @param teams [Array] + # # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] + # + # @param user_alias [String, nil] + # # @param user_email [String, nil] + # # @param user_role [String, nil] - class OrganizationMembership < Hanzoai::Internal::Type::BaseModel - # @!attribute created_at - # - # @return [Time] - required :created_at, Time - - # @!attribute organization_id + # @see Hanzoai::Models::TeamAddMemberResponse::UpdatedUser#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id # # @return [String] - required :organization_id, String + required :object_permission_id, String - # @!attribute updated_at + # @!attribute agent_access_groups # - # @return [Time] - required :updated_at, Time + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute user_id + # @!attribute agents # - # @return [String] - required :user_id, String + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute budget_id + # @!attribute mcp_access_groups # - # @return [String, nil] - optional :budget_id, String, nil?: true + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute llm_budget_table - # Represents user-controllable params for a LLM_BudgetTable record + # @!attribute mcp_servers # - # @return [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] - optional :llm_budget_table, - -> { Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable }, - nil?: true + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute spend + # @!attribute mcp_tool_permissions # - # @return [Float, nil] - optional :spend, Float - - # @!attribute user - # - # @return [Object, nil] - optional :user, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true - # @!attribute user_role + # @!attribute vector_stores # - # @return [String, nil] - optional :user_role, String, nil?: true + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!method initialize(created_at:, organization_id:, updated_at:, user_id:, budget_id: nil, llm_budget_table: nil, spend: nil, user: nil, user_role: nil) - # This is the table that track what organizations a user belongs to and users - # spend within the organization - # - # @param created_at [Time] - # - # @param organization_id [String] + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record # - # @param updated_at [Time] - # - # @param user_id [String] - # - # @param budget_id [String, nil] - # - # @param llm_budget_table [Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, nil] Represents user-controllable params for a LLM_BudgetTable record - # - # @param spend [Float] - # - # @param user [Object] - # - # @param user_role [String, nil] - - # @see Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership#llm_budget_table - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - # @!attribute budget_duration - # - # @return [String, nil] - optional :budget_duration, String, nil?: true - - # @!attribute max_budget - # - # @return [Float, nil] - optional :max_budget, Float, nil?: true - - # @!attribute max_parallel_requests - # - # @return [Integer, nil] - optional :max_parallel_requests, Integer, nil?: true - - # @!attribute model_max_budget - # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true - - # @!attribute rpm_limit - # - # @return [Integer, nil] - optional :rpm_limit, Integer, nil?: true - - # @!attribute soft_budget - # - # @return [Float, nil] - optional :soft_budget, Float, nil?: true - - # @!attribute tpm_limit - # - # @return [Integer, nil] - optional :tpm_limit, Integer, nil?: true - - # @!method initialize(budget_duration: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil) - # Represents user-controllable params for a LLM_BudgetTable record - # - # @param budget_duration [String, nil] - # @param max_budget [Float, nil] - # @param max_parallel_requests [Integer, nil] - # @param model_max_budget [Object, nil] - # @param rpm_limit [Integer, nil] - # @param soft_budget [Float, nil] - # @param tpm_limit [Integer, nil] - end + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] end end - # @see Hanzoai::Models::TeamAddMemberResponse#llm_model_table - class LlmModelTable < Hanzoai::Internal::Type::BaseModel + # @see Hanzoai::Models::TeamAddMemberResponse#litellm_model_table + class LitellmModelTable < Hanzoai::Internal::Type::BaseModel # @!attribute created_by # # @return [String] @@ -452,30 +444,96 @@ class LlmModelTable < Hanzoai::Internal::Type::BaseModel # @return [String] required :updated_by, String + # @!attribute id + # + # @return [Integer, nil] + optional :id, Integer, nil?: true + # @!attribute model_aliases # - # @return [Object, String, nil] + # @return [Hash{Symbol=>Object}, String, nil] optional :model_aliases, - union: -> { Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases }, + union: -> { Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::ModelAliases }, nil?: true - # @!method initialize(created_by:, updated_by:, model_aliases: nil) + # @!attribute team + # + # @return [Object, nil] + optional :team, Hanzoai::Internal::Type::Unknown + + # @!method initialize(created_by:, updated_by:, id: nil, model_aliases: nil, team: nil) # @param created_by [String] # @param updated_by [String] - # @param model_aliases [Object, String, nil] + # @param id [Integer, nil] + # @param model_aliases [Hash{Symbol=>Object}, String, nil] + # @param team [Object] - # @see Hanzoai::Models::TeamAddMemberResponse::LlmModelTable#model_aliases + # @see Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable#model_aliases module ModelAliases extend Hanzoai::Internal::Type::Union - variant Hanzoai::Internal::Type::Unknown + variant -> { Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::ModelAliases::UnionMember0Map } variant String # @!method self.variants - # @return [Array(Object, String)] + # @return [Array(Hash{Symbol=>Object}, String)] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember0Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] end end + + # @see Hanzoai::Models::TeamAddMemberResponse#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id + # + # @return [String] + required :object_permission_id, String + + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end end end end diff --git a/lib/hanzoai/models/team_create_params.rb b/lib/hanzoai/models/team_create_params.rb index b29260e0..13c878c4 100644 --- a/lib/hanzoai/models/team_create_params.rb +++ b/lib/hanzoai/models/team_create_params.rb @@ -12,6 +12,20 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Array, nil] optional :admins, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute allowed_passthrough_routes + # + # @return [Array, nil] + optional :allowed_passthrough_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_vector_store_indexes + # + # @return [Array, nil] + optional :allowed_vector_store_indexes, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex] }, + nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -44,29 +58,66 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_aliases # - # @return [Object, nil] - optional :model_aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute model_rpm_limit + # + # @return [Hash{Symbol=>Integer}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Integer], nil?: true + + # @!attribute model_tpm_limit + # + # @return [Hash{Symbol=>Integer}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Integer], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # + # @return [Hanzoai::Models::TeamCreateParams::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::TeamCreateParams::ObjectPermission }, nil?: true + # @!attribute organization_id # # @return [String, nil] optional :organization_id, String, nil?: true + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true + # @!attribute rpm_limit_type + # + # @return [Symbol, Hanzoai::Models::TeamCreateParams::RpmLimitType, nil] + optional :rpm_limit_type, enum: -> { Hanzoai::TeamCreateParams::RpmLimitType }, nil?: true + + # @!attribute secret_manager_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :secret_manager_settings, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + # @!attribute tags # # @return [Array, nil] @@ -82,24 +133,59 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :team_id, String, nil?: true + # @!attribute team_member_budget + # + # @return [Float, nil] + optional :team_member_budget, Float, nil?: true + + # @!attribute team_member_key_duration + # + # @return [String, nil] + optional :team_member_key_duration, String, nil?: true + + # @!attribute team_member_permissions + # + # @return [Array, nil] + optional :team_member_permissions, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute team_member_rpm_limit + # + # @return [Integer, nil] + optional :team_member_rpm_limit, Integer, nil?: true + + # @!attribute team_member_tpm_limit + # + # @return [Integer, nil] + optional :team_member_tpm_limit, Integer, nil?: true + # @!attribute tpm_limit # # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute tpm_limit_type + # + # @return [Symbol, Hanzoai::Models::TeamCreateParams::TpmLimitType, nil] + optional :tpm_limit_type, enum: -> { Hanzoai::TeamCreateParams::TpmLimitType }, nil?: true + + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(admins: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, team_id: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # @!method initialize(admins: nil, allowed_passthrough_routes: nil, allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, prompts: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, secret_manager_settings: nil, tags: nil, team_alias: nil, team_id: nil, team_member_budget: nil, team_member_key_duration: nil, team_member_permissions: nil, team_member_rpm_limit: nil, team_member_tpm_limit: nil, tpm_limit: nil, tpm_limit_type: nil, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::TeamCreateParams} for more details. # # @param admins [Array] # + # @param allowed_passthrough_routes [Array, nil] + # + # @param allowed_vector_store_indexes [Array, nil] + # # @param blocked [Boolean] # # @param budget_duration [String, nil] @@ -112,27 +198,142 @@ class TeamCreateParams < Hanzoai::Internal::Type::BaseModel # # @param members_with_roles [Array] # - # @param metadata [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_aliases [Hash{Symbol=>Object}, nil] + # + # @param model_rpm_limit [Hash{Symbol=>Integer}, nil] # - # @param model_aliases [Object, nil] + # @param model_tpm_limit [Hash{Symbol=>Integer}, nil] # # @param models [Array] # + # @param object_permission [Hanzoai::Models::TeamCreateParams::ObjectPermission, nil] + # # @param organization_id [String, nil] # + # @param prompts [Array, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] + # # @param rpm_limit [Integer, nil] # + # @param rpm_limit_type [Symbol, Hanzoai::Models::TeamCreateParams::RpmLimitType, nil] + # + # @param secret_manager_settings [Hash{Symbol=>Object}, nil] + # # @param tags [Array, nil] # # @param team_alias [String, nil] # # @param team_id [String, nil] # + # @param team_member_budget [Float, nil] + # + # @param team_member_key_duration [String, nil] + # + # @param team_member_permissions [Array, nil] + # + # @param team_member_rpm_limit [Integer, nil] + # + # @param team_member_tpm_limit [Integer, nil] + # # @param tpm_limit [Integer, nil] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param tpm_limit_type [Symbol, Hanzoai::Models::TeamCreateParams::TpmLimitType, nil] + # + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + # @!attribute index_name + # + # @return [String] + required :index_name, String + + # @!attribute index_permissions + # + # @return [Array] + required :index_permissions, + -> { Hanzoai::Internal::Type::ArrayOf[enum: Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission] } + + # @!method initialize(index_name:, index_permissions:) + # @param index_name [String] + # @param index_permissions [Array] + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ = :read + WRITE = :write + + # @!method self.values + # @return [Array] + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + + # @!method self.values + # @return [Array] + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + + # @!method self.values + # @return [Array] + end end end end diff --git a/lib/hanzoai/models/team_create_response.rb b/lib/hanzoai/models/team_create_response.rb index f21a4926..4d07bfb9 100644 --- a/lib/hanzoai/models/team_create_response.rb +++ b/lib/hanzoai/models/team_create_response.rb @@ -34,10 +34,10 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Time, nil] optional :created_at, Time, nil?: true - # @!attribute llm_model_table + # @!attribute litellm_model_table # - # @return [Hanzoai::Models::TeamCreateResponse::LlmModelTable, nil] - optional :llm_model_table, -> { Hanzoai::Models::TeamCreateResponse::LlmModelTable }, nil?: true + # @return [Object, nil] + optional :litellm_model_table, Hanzoai::Internal::Type::Unknown # @!attribute max_budget # @@ -61,8 +61,8 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_id # @@ -74,11 +74,27 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown] + # @!attribute object_permission + # Represents a LiteLLM_ObjectPermissionTable record + # + # @return [Hanzoai::Models::TeamCreateResponse::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::Models::TeamCreateResponse::ObjectPermission }, nil?: true + + # @!attribute object_permission_id + # + # @return [String, nil] + optional :object_permission_id, String, nil?: true + # @!attribute organization_id # # @return [String, nil] optional :organization_id, String, nil?: true + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute rpm_limit # # @return [Integer, nil] @@ -94,67 +110,119 @@ class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :team_alias, String, nil?: true + # @!attribute team_member_permissions + # + # @return [Array, nil] + optional :team_member_permissions, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + # @!attribute tpm_limit # # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, llm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, organization_id: nil, rpm_limit: nil, spend: nil, team_alias: nil, tpm_limit: nil) + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + + # @!method initialize(team_id:, admins: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, created_at: nil, litellm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, members_with_roles: nil, metadata: nil, model_id: nil, models: nil, object_permission: nil, object_permission_id: nil, organization_id: nil, router_settings: nil, rpm_limit: nil, spend: nil, team_alias: nil, team_member_permissions: nil, tpm_limit: nil, updated_at: nil) # @param team_id [String] + # # @param admins [Array] + # # @param blocked [Boolean] + # # @param budget_duration [String, nil] + # # @param budget_reset_at [Time, nil] + # # @param created_at [Time, nil] - # @param llm_model_table [Hanzoai::Models::TeamCreateResponse::LlmModelTable, nil] + # + # @param litellm_model_table [Object] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] + # # @param members [Array] + # # @param members_with_roles [Array] - # @param metadata [Object, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # # @param model_id [Integer, nil] + # # @param models [Array] + # + # @param object_permission [Hanzoai::Models::TeamCreateResponse::ObjectPermission, nil] Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String, nil] + # # @param organization_id [String, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] + # # @param rpm_limit [Integer, nil] + # # @param spend [Float, nil] + # # @param team_alias [String, nil] + # + # @param team_member_permissions [Array, nil] + # # @param tpm_limit [Integer, nil] + # + # @param updated_at [Time, nil] - # @see Hanzoai::Models::TeamCreateResponse#llm_model_table - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - # @!attribute created_by + # @see Hanzoai::Models::TeamCreateResponse#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute object_permission_id # # @return [String] - required :created_by, String + required :object_permission_id, String - # @!attribute updated_by + # @!attribute agent_access_groups # - # @return [String] - required :updated_by, String + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!attribute model_aliases + # @!attribute agents # - # @return [Object, String, nil] - optional :model_aliases, - union: -> { Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases }, - nil?: true + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!method initialize(created_by:, updated_by:, model_aliases: nil) - # @param created_by [String] - # @param updated_by [String] - # @param model_aliases [Object, String, nil] + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @see Hanzoai::Models::TeamCreateResponse::LlmModelTable#model_aliases - module ModelAliases - extend Hanzoai::Internal::Type::Union + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - variant Hanzoai::Internal::Type::Unknown + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true - variant String + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true - # @!method self.variants - # @return [Array(Object, String)] - end + # @!method initialize(object_permission_id:, agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # Represents a LiteLLM_ObjectPermissionTable record + # + # @param object_permission_id [String] + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] end end end diff --git a/lib/hanzoai/models/team_delete_params.rb b/lib/hanzoai/models/team_delete_params.rb index e070f96f..c152f806 100644 --- a/lib/hanzoai/models/team_delete_params.rb +++ b/lib/hanzoai/models/team_delete_params.rb @@ -12,20 +12,21 @@ class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :team_ids, Hanzoai::Internal::Type::ArrayOf[String] - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(team_ids:, llm_changed_by: nil, request_options: {}) + # @!method initialize(team_ids:, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::TeamDeleteParams} for more details. # # @param team_ids [Array] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/team_update_member_params.rb b/lib/hanzoai/models/team_update_member_params.rb index 6a4d717d..ea7ceadd 100644 --- a/lib/hanzoai/models/team_update_member_params.rb +++ b/lib/hanzoai/models/team_update_member_params.rb @@ -22,6 +22,18 @@ class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] optional :role, enum: -> { Hanzoai::TeamUpdateMemberParams::Role }, nil?: true + # @!attribute rpm_limit + # Requests per minute limit for this team member + # + # @return [Integer, nil] + optional :rpm_limit, Integer, nil?: true + + # @!attribute tpm_limit + # Tokens per minute limit for this team member + # + # @return [Integer, nil] + optional :tpm_limit, Integer, nil?: true + # @!attribute user_email # # @return [String, nil] @@ -32,12 +44,21 @@ class TeamUpdateMemberParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :user_id, String, nil?: true - # @!method initialize(team_id:, max_budget_in_team: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) + # @!method initialize(team_id:, max_budget_in_team: nil, role: nil, rpm_limit: nil, tpm_limit: nil, user_email: nil, user_id: nil, request_options: {}) # @param team_id [String] + # # @param max_budget_in_team [Float, nil] + # # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] + # + # @param rpm_limit [Integer, nil] Requests per minute limit for this team member + # + # @param tpm_limit [Integer, nil] Tokens per minute limit for this team member + # # @param user_email [String, nil] + # # @param user_id [String, nil] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module Role diff --git a/lib/hanzoai/models/team_update_member_response.rb b/lib/hanzoai/models/team_update_member_response.rb index 65fc8d71..17e2b8be 100644 --- a/lib/hanzoai/models/team_update_member_response.rb +++ b/lib/hanzoai/models/team_update_member_response.rb @@ -19,15 +19,27 @@ class TeamUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :max_budget_in_team, Float, nil?: true + # @!attribute rpm_limit + # + # @return [Integer, nil] + optional :rpm_limit, Integer, nil?: true + + # @!attribute tpm_limit + # + # @return [Integer, nil] + optional :tpm_limit, Integer, nil?: true + # @!attribute user_email # # @return [String, nil] optional :user_email, String, nil?: true - # @!method initialize(team_id:, user_id:, max_budget_in_team: nil, user_email: nil) + # @!method initialize(team_id:, user_id:, max_budget_in_team: nil, rpm_limit: nil, tpm_limit: nil, user_email: nil) # @param team_id [String] # @param user_id [String] # @param max_budget_in_team [Float, nil] + # @param rpm_limit [Integer, nil] + # @param tpm_limit [Integer, nil] # @param user_email [String, nil] end end diff --git a/lib/hanzoai/models/team_update_params.rb b/lib/hanzoai/models/team_update_params.rb index 23aa84ca..70261fdc 100644 --- a/lib/hanzoai/models/team_update_params.rb +++ b/lib/hanzoai/models/team_update_params.rb @@ -12,6 +12,20 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :team_id, String + # @!attribute allowed_passthrough_routes + # + # @return [Array, nil] + optional :allowed_passthrough_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_vector_store_indexes + # + # @return [Array, nil] + optional :allowed_vector_store_indexes, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex] }, + nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -34,29 +48,61 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_aliases # - # @return [Object, nil] - optional :model_aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute model_rpm_limit + # + # @return [Hash{Symbol=>Integer}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Integer], nil?: true + + # @!attribute model_tpm_limit + # + # @return [Hash{Symbol=>Integer}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Integer], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::TeamUpdateParams::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::TeamUpdateParams::ObjectPermission }, nil?: true + # @!attribute organization_id # # @return [String, nil] optional :organization_id, String, nil?: true + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute router_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :router_settings, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true + # @!attribute secret_manager_settings + # + # @return [Hash{Symbol=>Object}, nil] + optional :secret_manager_settings, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + # @!attribute tags # # @return [Array, nil] @@ -67,24 +113,54 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :team_alias, String, nil?: true + # @!attribute team_member_budget + # + # @return [Float, nil] + optional :team_member_budget, Float, nil?: true + + # @!attribute team_member_budget_duration + # + # @return [String, nil] + optional :team_member_budget_duration, String, nil?: true + + # @!attribute team_member_key_duration + # + # @return [String, nil] + optional :team_member_key_duration, String, nil?: true + + # @!attribute team_member_rpm_limit + # + # @return [Integer, nil] + optional :team_member_rpm_limit, Integer, nil?: true + + # @!attribute team_member_tpm_limit + # + # @return [Integer, nil] + optional :team_member_tpm_limit, Integer, nil?: true + # @!attribute tpm_limit # # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(team_id:, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # @!method initialize(team_id:, allowed_passthrough_routes: nil, allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, prompts: nil, router_settings: nil, rpm_limit: nil, secret_manager_settings: nil, tags: nil, team_alias: nil, team_member_budget: nil, team_member_budget_duration: nil, team_member_key_duration: nil, team_member_rpm_limit: nil, team_member_tpm_limit: nil, tpm_limit: nil, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::TeamUpdateParams} for more details. # # @param team_id [String] # + # @param allowed_passthrough_routes [Array, nil] + # + # @param allowed_vector_store_indexes [Array, nil] + # # @param blocked [Boolean, nil] # # @param budget_duration [String, nil] @@ -93,25 +169,116 @@ class TeamUpdateParams < Hanzoai::Internal::Type::BaseModel # # @param max_budget [Float, nil] # - # @param metadata [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_aliases [Hash{Symbol=>Object}, nil] # - # @param model_aliases [Object, nil] + # @param model_rpm_limit [Hash{Symbol=>Integer}, nil] + # + # @param model_tpm_limit [Hash{Symbol=>Integer}, nil] # # @param models [Array, nil] # + # @param object_permission [Hanzoai::Models::TeamUpdateParams::ObjectPermission, nil] + # # @param organization_id [String, nil] # + # @param prompts [Array, nil] + # + # @param router_settings [Hash{Symbol=>Object}, nil] + # # @param rpm_limit [Integer, nil] # + # @param secret_manager_settings [Hash{Symbol=>Object}, nil] + # # @param tags [Array, nil] # # @param team_alias [String, nil] # + # @param team_member_budget [Float, nil] + # + # @param team_member_budget_duration [String, nil] + # + # @param team_member_key_duration [String, nil] + # + # @param team_member_rpm_limit [Integer, nil] + # + # @param team_member_tpm_limit [Integer, nil] + # # @param tpm_limit [Integer, nil] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + # @!attribute index_name + # + # @return [String] + required :index_name, String + + # @!attribute index_permissions + # + # @return [Array] + required :index_permissions, + -> { Hanzoai::Internal::Type::ArrayOf[enum: Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission] } + + # @!method initialize(index_name:, index_permissions:) + # @param index_name [String] + # @param index_permissions [Array] + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ = :read + WRITE = :write + + # @!method self.values + # @return [Array] + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end end end end diff --git a/lib/hanzoai/models/user_create_params.rb b/lib/hanzoai/models/user_create_params.rb index 12c4f1ec..355cdbf4 100644 --- a/lib/hanzoai/models/user_create_params.rb +++ b/lib/hanzoai/models/user_create_params.rb @@ -9,8 +9,8 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute allowed_cache_controls # @@ -36,8 +36,8 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute duration # @@ -66,33 +66,50 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_rpm_limit # - # @return [Object, nil] - optional :model_rpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_tpm_limit # - # @return [Object, nil] - optional :model_tpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::UserCreateParams::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::UserCreateParams::ObjectPermission }, nil?: true + + # @!attribute organizations + # + # @return [Array, nil] + optional :organizations, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true # @!attribute rpm_limit # @@ -109,6 +126,11 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Float, nil] optional :spend, Float, nil?: true + # @!attribute sso_user_id + # + # @return [String, nil] + optional :sso_user_id, String, nil?: true + # @!attribute team_id # # @return [String, nil] @@ -116,8 +138,8 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @!attribute teams # - # @return [Array, nil] - optional :teams, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @return [Array, Array, nil] + optional :teams, union: -> { Hanzoai::UserCreateParams::Teams }, nil?: true # @!attribute tpm_limit # @@ -144,29 +166,33 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] optional :user_role, enum: -> { Hanzoai::UserCreateParams::UserRole }, nil?: true - # @!method initialize(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) - # @param aliases [Object, nil] + # @!method initialize(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organizations: nil, permissions: nil, prompts: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, sso_user_id: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) + # @param aliases [Hash{Symbol=>Object}, nil] # @param allowed_cache_controls [Array, nil] # @param auto_create_key [Boolean] # @param blocked [Boolean, nil] # @param budget_duration [String, nil] - # @param config [Object, nil] + # @param config [Hash{Symbol=>Object}, nil] # @param duration [String, nil] # @param guardrails [Array, nil] # @param key_alias [String, nil] # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] # @param models [Array, nil] - # @param permissions [Object, nil] + # @param object_permission [Hanzoai::Models::UserCreateParams::ObjectPermission, nil] + # @param organizations [Array, nil] + # @param permissions [Hash{Symbol=>Object}, nil] + # @param prompts [Array, nil] # @param rpm_limit [Integer, nil] # @param send_invite_email [Boolean, nil] # @param spend [Float, nil] + # @param sso_user_id [String, nil] # @param team_id [String, nil] - # @param teams [Array, nil] + # @param teams [Array, Array, nil] # @param tpm_limit [Integer, nil] # @param user_alias [String, nil] # @param user_email [String, nil] @@ -174,6 +200,99 @@ class UserCreateParams < Hanzoai::Internal::Type::BaseModel # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + module Teams + extend Hanzoai::Internal::Type::Union + + variant -> { Hanzoai::Models::UserCreateParams::Teams::StringArray } + + variant -> { Hanzoai::Models::UserCreateParams::Teams::UnionMember1Array } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + # @!attribute team_id + # + # @return [String] + required :team_id, String + + # @!attribute max_budget_in_team + # + # @return [Float, nil] + optional :max_budget_in_team, Float, nil?: true + + # @!attribute user_role + # + # @return [Symbol, Hanzoai::Models::UserCreateParams::Teams::UnionMember1::UserRole, nil] + optional :user_role, enum: -> { Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole } + + # @!method initialize(team_id:, max_budget_in_team: nil, user_role: nil) + # @param team_id [String] + # @param max_budget_in_team [Float, nil] + # @param user_role [Symbol, Hanzoai::Models::UserCreateParams::Teams::UnionMember1::UserRole] + + # @see Hanzoai::Models::UserCreateParams::Teams::UnionMember1#user_role + module UserRole + extend Hanzoai::Internal::Type::Enum + + USER = :user + ADMIN = :admin + + # @!method self.values + # @return [Array] + end + end + + # @!method self.variants + # @return [Array(Array, Array)] + + # @type [Hanzoai::Internal::Type::Converter] + StringArray = Hanzoai::Internal::Type::ArrayOf[String] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Array = + Hanzoai::Internal::Type::ArrayOf[-> { Hanzoai::UserCreateParams::Teams::UnionMember1 }] + end + module UserRole extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/user_create_response.rb b/lib/hanzoai/models/user_create_response.rb index bc57aa8f..61010b94 100644 --- a/lib/hanzoai/models/user_create_response.rb +++ b/lib/hanzoai/models/user_create_response.rb @@ -4,11 +4,6 @@ module Hanzoai module Models # @see Hanzoai::Resources::User#create class UserCreateResponse < Hanzoai::Internal::Type::BaseModel - # @!attribute expires - # - # @return [Time, nil] - required :expires, Time, nil?: true - # @!attribute key # # @return [String] @@ -21,8 +16,8 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute allowed_cache_controls # @@ -31,6 +26,25 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute allowed_passthrough_routes + # + # @return [Array, nil] + optional :allowed_passthrough_routes, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute allowed_routes + # + # @return [Array, nil] + optional :allowed_routes, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute allowed_vector_store_indexes + # + # @return [Array, nil] + optional :allowed_vector_store_indexes, + -> { Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex] }, + nil?: true + # @!attribute blocked # # @return [Boolean, nil] @@ -48,8 +62,13 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute created_at + # + # @return [Time, nil] + optional :created_at, Time, nil?: true # @!attribute created_by # @@ -66,6 +85,11 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Array, nil] optional :enforced_params, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + # @!attribute expires + # + # @return [Time, nil] + optional :expires, Time, nil?: true + # @!attribute guardrails # # @return [Array, nil] @@ -81,10 +105,10 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [String, nil] optional :key_name, String, nil?: true - # @!attribute llm_budget_table + # @!attribute litellm_budget_table # # @return [Object, nil] - optional :llm_budget_table, Hanzoai::Internal::Type::Unknown + optional :litellm_budget_table, Hanzoai::Internal::Type::Unknown # @!attribute max_budget # @@ -98,39 +122,67 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_rpm_limit # - # @return [Object, nil] - optional :model_rpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_tpm_limit # - # @return [Object, nil] - optional :model_tpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::UserCreateResponse::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::Models::UserCreateResponse::ObjectPermission }, nil?: true + + # @!attribute organization_id + # + # @return [String, nil] + optional :organization_id, String, nil?: true + # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute router_settings + # Set of params that you can modify via `router.update_settings()`. + # + # @return [Hanzoai::Models::UserCreateResponse::RouterSettings, nil] + optional :router_settings, -> { Hanzoai::Models::UserCreateResponse::RouterSettings }, nil?: true # @!attribute rpm_limit # # @return [Integer, nil] optional :rpm_limit, Integer, nil?: true + # @!attribute rpm_limit_type + # + # @return [Symbol, Hanzoai::Models::UserCreateResponse::RpmLimitType, nil] + optional :rpm_limit_type, enum: -> { Hanzoai::Models::UserCreateResponse::RpmLimitType }, nil?: true + # @!attribute spend # # @return [Float, nil] @@ -161,6 +213,16 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute tpm_limit_type + # + # @return [Symbol, Hanzoai::Models::UserCreateResponse::TpmLimitType, nil] + optional :tpm_limit_type, enum: -> { Hanzoai::Models::UserCreateResponse::TpmLimitType }, nil?: true + + # @!attribute updated_at + # + # @return [Time, nil] + optional :updated_at, Time, nil?: true + # @!attribute updated_by # # @return [String, nil] @@ -186,44 +248,298 @@ class UserCreateResponse < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::UserCreateResponse::UserRole, nil] optional :user_role, enum: -> { Hanzoai::Models::UserCreateResponse::UserRole }, nil?: true - # @!method initialize(expires:, key:, token: nil, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, created_by: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, key_name: nil, llm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, teams: nil, token_id: nil, tpm_limit: nil, updated_by: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil) - # @param expires [Time, nil] + # @!method initialize(key:, token: nil, aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, created_at: nil, created_by: nil, duration: nil, enforced_params: nil, expires: nil, guardrails: nil, key_alias: nil, key_name: nil, litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, permissions: nil, prompts: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, spend: nil, tags: nil, team_id: nil, teams: nil, token_id: nil, tpm_limit: nil, tpm_limit_type: nil, updated_at: nil, updated_by: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil) # @param key [String] + # # @param token [String, nil] - # @param aliases [Object, nil] + # + # @param aliases [Hash{Symbol=>Object}, nil] + # # @param allowed_cache_controls [Array, nil] + # + # @param allowed_passthrough_routes [Array, nil] + # + # @param allowed_routes [Array, nil] + # + # @param allowed_vector_store_indexes [Array, nil] + # # @param blocked [Boolean, nil] + # # @param budget_duration [String, nil] + # # @param budget_id [String, nil] - # @param config [Object, nil] + # + # @param config [Hash{Symbol=>Object}, nil] + # + # @param created_at [Time, nil] + # # @param created_by [String, nil] + # # @param duration [String, nil] + # # @param enforced_params [Array, nil] + # + # @param expires [Time, nil] + # # @param guardrails [Array, nil] + # # @param key_alias [String, nil] + # # @param key_name [String, nil] - # @param llm_budget_table [Object] + # + # @param litellm_budget_table [Object] + # # @param max_budget [Float, nil] + # # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] + # + # @param metadata [Hash{Symbol=>Object}, nil] + # + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] + # + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] + # # @param models [Array, nil] - # @param permissions [Object, nil] + # + # @param object_permission [Hanzoai::Models::UserCreateResponse::ObjectPermission, nil] + # + # @param organization_id [String, nil] + # + # @param permissions [Hash{Symbol=>Object}, nil] + # + # @param prompts [Array, nil] + # + # @param router_settings [Hanzoai::Models::UserCreateResponse::RouterSettings, nil] Set of params that you can modify via `router.update_settings()`. + # # @param rpm_limit [Integer, nil] + # + # @param rpm_limit_type [Symbol, Hanzoai::Models::UserCreateResponse::RpmLimitType, nil] + # # @param spend [Float, nil] + # # @param tags [Array, nil] + # # @param team_id [String, nil] + # # @param teams [Array, nil] + # # @param token_id [String, nil] + # # @param tpm_limit [Integer, nil] + # + # @param tpm_limit_type [Symbol, Hanzoai::Models::UserCreateResponse::TpmLimitType, nil] + # + # @param updated_at [Time, nil] + # # @param updated_by [String, nil] + # # @param user_alias [String, nil] + # # @param user_email [String, nil] + # # @param user_id [String, nil] + # # @param user_role [Symbol, Hanzoai::Models::UserCreateResponse::UserRole, nil] + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + # @!attribute index_name + # + # @return [String] + required :index_name, String + + # @!attribute index_permissions + # + # @return [Array] + required :index_permissions, + -> { Hanzoai::Internal::Type::ArrayOf[enum: Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission] } + + # @!method initialize(index_name:, index_permissions:) + # @param index_name [String] + # @param index_permissions [Array] + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ = :read + WRITE = :write + + # @!method self.values + # @return [Array] + end + end + + # @see Hanzoai::Models::UserCreateResponse#object_permission + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + + # @see Hanzoai::Models::UserCreateResponse#router_settings + class RouterSettings < Hanzoai::Internal::Type::BaseModel + # @!attribute allowed_fails + # + # @return [Integer, nil] + optional :allowed_fails, Integer, nil?: true + + # @!attribute context_window_fallbacks + # + # @return [ArrayObject}>, nil] + optional :context_window_fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute cooldown_time + # + # @return [Float, nil] + optional :cooldown_time, Float, nil?: true + + # @!attribute fallbacks + # + # @return [ArrayObject}>, nil] + optional :fallbacks, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + + # @!attribute max_retries + # + # @return [Integer, nil] + optional :max_retries, Integer, nil?: true + + # @!attribute model_group_alias + # + # @return [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + optional :model_group_alias, + -> { Hanzoai::Internal::Type::HashOf[union: Hanzoai::Models::UserCreateResponse::RouterSettings::ModelGroupAlias] }, + nil?: true + + # @!attribute model_group_retry_policy + # + # @return [Hash{Symbol=>Object}, nil] + optional :model_group_retry_policy, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute num_retries + # + # @return [Integer, nil] + optional :num_retries, Integer, nil?: true + + # @!attribute retry_after + # + # @return [Float, nil] + optional :retry_after, Float, nil?: true + + # @!attribute routing_strategy + # + # @return [String, nil] + optional :routing_strategy, String, nil?: true + + # @!attribute routing_strategy_args + # + # @return [Hash{Symbol=>Object}, nil] + optional :routing_strategy_args, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute timeout + # + # @return [Float, nil] + optional :timeout, Float, nil?: true + + # @!method initialize(allowed_fails: nil, context_window_fallbacks: nil, cooldown_time: nil, fallbacks: nil, max_retries: nil, model_group_alias: nil, model_group_retry_policy: nil, num_retries: nil, retry_after: nil, routing_strategy: nil, routing_strategy_args: nil, timeout: nil) + # Set of params that you can modify via `router.update_settings()`. + # + # @param allowed_fails [Integer, nil] + # @param context_window_fallbacks [ArrayObject}>, nil] + # @param cooldown_time [Float, nil] + # @param fallbacks [ArrayObject}>, nil] + # @param max_retries [Integer, nil] + # @param model_group_alias [Hash{Symbol=>String, Hash{Symbol=>Object}}, nil] + # @param model_group_retry_policy [Hash{Symbol=>Object}, nil] + # @param num_retries [Integer, nil] + # @param retry_after [Float, nil] + # @param routing_strategy [String, nil] + # @param routing_strategy_args [Hash{Symbol=>Object}, nil] + # @param timeout [Float, nil] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + variant String + + variant -> { Hanzoai::Models::UserCreateResponse::RouterSettings::ModelGroupAlias::UnionMember1Map } + + # @!method self.variants + # @return [Array(String, Hash{Symbol=>Object})] + + # @type [Hanzoai::Internal::Type::Converter] + UnionMember1Map = Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] + end + end + + # @see Hanzoai::Models::UserCreateResponse#rpm_limit_type + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end + + # @see Hanzoai::Models::UserCreateResponse#tpm_limit_type + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT = :guaranteed_throughput + BEST_EFFORT_THROUGHPUT = :best_effort_throughput + DYNAMIC = :dynamic + + # @!method self.values + # @return [Array] + end + # @see Hanzoai::Models::UserCreateResponse#user_role module UserRole extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/user_delete_params.rb b/lib/hanzoai/models/user_delete_params.rb index 46cb793c..e101d1ac 100644 --- a/lib/hanzoai/models/user_delete_params.rb +++ b/lib/hanzoai/models/user_delete_params.rb @@ -12,20 +12,21 @@ class UserDeleteParams < Hanzoai::Internal::Type::BaseModel # @return [Array] required :user_ids, Hanzoai::Internal::Type::ArrayOf[String] - # @!attribute llm_changed_by - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # @!attribute litellm_changed_by + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability # # @return [String, nil] - optional :llm_changed_by, String + optional :litellm_changed_by, String - # @!method initialize(user_ids:, llm_changed_by: nil, request_options: {}) + # @!method initialize(user_ids:, litellm_changed_by: nil, request_options: {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::UserDeleteParams} for more details. # # @param user_ids [Array] # - # @param llm_changed_by [String] The llm-changed-by header enables tracking of actions performed by authorized us + # @param litellm_changed_by [String] The litellm-changed-by header enables tracking of actions performed by authorize # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/user_list_params.rb b/lib/hanzoai/models/user_list_params.rb deleted file mode 100644 index d24f0ea5..00000000 --- a/lib/hanzoai/models/user_list_params.rb +++ /dev/null @@ -1,46 +0,0 @@ -# frozen_string_literal: true - -module Hanzoai - module Models - # @see Hanzoai::Resources::User#list - class UserListParams < Hanzoai::Internal::Type::BaseModel - extend Hanzoai::Internal::Type::RequestParameters::Converter - include Hanzoai::Internal::Type::RequestParameters - - # @!attribute page - # Page number - # - # @return [Integer, nil] - optional :page, Integer - - # @!attribute page_size - # Number of items per page - # - # @return [Integer, nil] - optional :page_size, Integer - - # @!attribute role - # Filter users by role - # - # @return [String, nil] - optional :role, String, nil?: true - - # @!attribute user_ids - # Get list of users by user_ids - # - # @return [String, nil] - optional :user_ids, String, nil?: true - - # @!method initialize(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}) - # @param page [Integer] Page number - # - # @param page_size [Integer] Number of items per page - # - # @param role [String, nil] Filter users by role - # - # @param user_ids [String, nil] Get list of users by user_ids - # - # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] - end - end -end diff --git a/lib/hanzoai/models/user_list_response.rb b/lib/hanzoai/models/user_list_response.rb deleted file mode 100644 index abe4a4a0..00000000 --- a/lib/hanzoai/models/user_list_response.rb +++ /dev/null @@ -1,8 +0,0 @@ -# frozen_string_literal: true - -module Hanzoai - module Models - # @type [Hanzoai::Internal::Type::Converter] - UserListResponse = Hanzoai::Internal::Type::Unknown - end -end diff --git a/lib/hanzoai/models/user_roles.rb b/lib/hanzoai/models/user_roles.rb new file mode 100644 index 00000000..851f5d21 --- /dev/null +++ b/lib/hanzoai/models/user_roles.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +module Hanzoai + module Models + # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization + # + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend + # + # Team Roles: TEAM: used for JWT auth + # + # Customer Roles: CUSTOMER: External users -> these are customers + module UserRoles + extend Hanzoai::Internal::Type::Enum + + PROXY_ADMIN = :proxy_admin + PROXY_ADMIN_VIEWER = :proxy_admin_viewer + ORG_ADMIN = :org_admin + INTERNAL_USER = :internal_user + INTERNAL_USER_VIEWER = :internal_user_viewer + TEAM = :team + CUSTOMER = :customer + + # @!method self.values + # @return [Array] + end + end +end diff --git a/lib/hanzoai/models/user_update_params.rb b/lib/hanzoai/models/user_update_params.rb index cf82bd55..88b2bb21 100644 --- a/lib/hanzoai/models/user_update_params.rb +++ b/lib/hanzoai/models/user_update_params.rb @@ -9,8 +9,8 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute aliases # - # @return [Object, nil] - optional :aliases, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :aliases, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute allowed_cache_controls # @@ -31,8 +31,8 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute config # - # @return [Object, nil] - optional :config, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :config, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute duration # @@ -61,29 +61,36 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute metadata # - # @return [Object, nil] - optional :metadata, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_max_budget # - # @return [Object, nil] - optional :model_max_budget, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_max_budget, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute model_rpm_limit # - # @return [Object, nil] - optional :model_rpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_rpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute model_tpm_limit # - # @return [Object, nil] - optional :model_tpm_limit, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :model_tpm_limit, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true # @!attribute models # # @return [Array, nil] optional :models, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @!attribute object_permission + # + # @return [Hanzoai::Models::UserUpdateParams::ObjectPermission, nil] + optional :object_permission, -> { Hanzoai::UserUpdateParams::ObjectPermission }, nil?: true + # @!attribute password # # @return [String, nil] @@ -91,8 +98,13 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @!attribute permissions # - # @return [Object, nil] - optional :permissions, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :permissions, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], nil?: true + + # @!attribute prompts + # + # @return [Array, nil] + optional :prompts, Hanzoai::Internal::Type::ArrayOf[String], nil?: true # @!attribute rpm_limit # @@ -114,6 +126,11 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [Integer, nil] optional :tpm_limit, Integer, nil?: true + # @!attribute user_alias + # + # @return [String, nil] + optional :user_alias, String, nil?: true + # @!attribute user_email # # @return [String, nil] @@ -129,33 +146,78 @@ class UserUpdateParams < Hanzoai::Internal::Type::BaseModel # @return [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] optional :user_role, enum: -> { Hanzoai::UserUpdateParams::UserRole }, nil?: true - # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, password: nil, permissions: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) - # @param aliases [Object, nil] + # @!method initialize(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, password: nil, permissions: nil, prompts: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) + # @param aliases [Hash{Symbol=>Object}, nil] # @param allowed_cache_controls [Array, nil] # @param blocked [Boolean, nil] # @param budget_duration [String, nil] - # @param config [Object, nil] + # @param config [Hash{Symbol=>Object}, nil] # @param duration [String, nil] # @param guardrails [Array, nil] # @param key_alias [String, nil] # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] # @param models [Array, nil] + # @param object_permission [Hanzoai::Models::UserUpdateParams::ObjectPermission, nil] # @param password [String, nil] - # @param permissions [Object, nil] + # @param permissions [Hash{Symbol=>Object}, nil] + # @param prompts [Array, nil] # @param rpm_limit [Integer, nil] # @param spend [Float, nil] # @param team_id [String, nil] # @param tpm_limit [Integer, nil] + # @param user_alias [String, nil] # @param user_email [String, nil] # @param user_id [String, nil] # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + # @!attribute agent_access_groups + # + # @return [Array, nil] + optional :agent_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute agents + # + # @return [Array, nil] + optional :agents, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_access_groups + # + # @return [Array, nil] + optional :mcp_access_groups, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_servers + # + # @return [Array, nil] + optional :mcp_servers, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!attribute mcp_tool_permissions + # + # @return [Hash{Symbol=>Array}, nil] + optional :mcp_tool_permissions, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::ArrayOf[String]], + nil?: true + + # @!attribute vector_stores + # + # @return [Array, nil] + optional :vector_stores, Hanzoai::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(agent_access_groups: nil, agents: nil, mcp_access_groups: nil, mcp_servers: nil, mcp_tool_permissions: nil, vector_stores: nil) + # @param agent_access_groups [Array, nil] + # @param agents [Array, nil] + # @param mcp_access_groups [Array, nil] + # @param mcp_servers [Array, nil] + # @param mcp_tool_permissions [Hash{Symbol=>Array}, nil] + # @param vector_stores [Array, nil] + end + module UserRole extend Hanzoai::Internal::Type::Enum diff --git a/lib/hanzoai/models/util_token_counter_params.rb b/lib/hanzoai/models/util_token_counter_params.rb index e3d279ba..dd6415a1 100644 --- a/lib/hanzoai/models/util_token_counter_params.rb +++ b/lib/hanzoai/models/util_token_counter_params.rb @@ -12,19 +12,35 @@ class UtilTokenCounterParams < Hanzoai::Internal::Type::BaseModel # @return [String] required :model, String + # @!attribute call_endpoint + # + # @return [Boolean, nil] + optional :call_endpoint, Hanzoai::Internal::Type::Boolean + + # @!attribute contents + # + # @return [ArrayObject}>, nil] + optional :contents, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true + # @!attribute messages # - # @return [Array, nil] - optional :messages, Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], nil?: true + # @return [ArrayObject}>, nil] + optional :messages, + Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]], + nil?: true # @!attribute prompt # # @return [String, nil] optional :prompt, String, nil?: true - # @!method initialize(model:, messages: nil, prompt: nil, request_options: {}) + # @!method initialize(model:, call_endpoint: nil, contents: nil, messages: nil, prompt: nil, request_options: {}) # @param model [String] - # @param messages [Array, nil] + # @param call_endpoint [Boolean] + # @param contents [ArrayObject}>, nil] + # @param messages [ArrayObject}>, nil] # @param prompt [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/hanzoai/models/util_token_counter_response.rb b/lib/hanzoai/models/util_token_counter_response.rb index f248b71a..e5e960b3 100644 --- a/lib/hanzoai/models/util_token_counter_response.rb +++ b/lib/hanzoai/models/util_token_counter_response.rb @@ -24,11 +24,37 @@ class UtilTokenCounterResponse < Hanzoai::Internal::Type::BaseModel # @return [Integer] required :total_tokens, Integer - # @!method initialize(model_used:, request_model:, tokenizer_type:, total_tokens:) + # @!attribute error + # + # @return [Boolean, nil] + optional :error, Hanzoai::Internal::Type::Boolean + + # @!attribute error_message + # + # @return [String, nil] + optional :error_message, String, nil?: true + + # @!attribute original_response + # + # @return [Hash{Symbol=>Object}, nil] + optional :original_response, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true + + # @!attribute status_code + # + # @return [Integer, nil] + optional :status_code, Integer, nil?: true + + # @!method initialize(model_used:, request_model:, tokenizer_type:, total_tokens:, error: nil, error_message: nil, original_response: nil, status_code: nil) # @param model_used [String] # @param request_model [String] # @param tokenizer_type [String] # @param total_tokens [Integer] + # @param error [Boolean] + # @param error_message [String, nil] + # @param original_response [Hash{Symbol=>Object}, nil] + # @param status_code [Integer, nil] end end end diff --git a/lib/hanzoai/models/util_transform_request_params.rb b/lib/hanzoai/models/util_transform_request_params.rb index 7cacaa0d..eab4acef 100644 --- a/lib/hanzoai/models/util_transform_request_params.rb +++ b/lib/hanzoai/models/util_transform_request_params.rb @@ -14,12 +14,12 @@ class UtilTransformRequestParams < Hanzoai::Internal::Type::BaseModel # @!attribute request_body # - # @return [Object] - required :request_body, Hanzoai::Internal::Type::Unknown + # @return [Hash{Symbol=>Object}] + required :request_body, Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown] # @!method initialize(call_type:, request_body:, request_options: {}) # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] - # @param request_body [Object] + # @param request_body [Hash{Symbol=>Object}] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}] module CallType @@ -33,6 +33,8 @@ module CallType TEXT_COMPLETION = :text_completion IMAGE_GENERATION = :image_generation AIMAGE_GENERATION = :aimage_generation + IMAGE_EDIT = :image_edit + AIMAGE_EDIT = :aimage_edit MODERATION = :moderation AMODERATION = :amoderation ATRANSCRIPTION = :atranscription @@ -41,6 +43,8 @@ module CallType SPEECH = :speech RERANK = :rerank ARERANK = :arerank + SEARCH = :search + ASEARCH = :asearch AREALTIME = :_arealtime CREATE_BATCH = :create_batch ACREATE_BATCH = :acreate_batch @@ -78,6 +82,48 @@ module CallType FILE_CONTENT = :file_content CREATE_FINE_TUNING_JOB = :create_fine_tuning_job ACREATE_FINE_TUNING_JOB = :acreate_fine_tuning_job + CREATE_VIDEO = :create_video + ACREATE_VIDEO = :acreate_video + AVIDEO_RETRIEVE = :avideo_retrieve + VIDEO_RETRIEVE = :video_retrieve + AVIDEO_CONTENT = :avideo_content + VIDEO_CONTENT = :video_content + VIDEO_REMIX = :video_remix + AVIDEO_REMIX = :avideo_remix + VIDEO_LIST = :video_list + AVIDEO_LIST = :avideo_list + VIDEO_RETRIEVE_JOB = :video_retrieve_job + AVIDEO_RETRIEVE_JOB = :avideo_retrieve_job + VIDEO_DELETE = :video_delete + AVIDEO_DELETE = :avideo_delete + VECTOR_STORE_FILE_CREATE = :vector_store_file_create + AVECTOR_STORE_FILE_CREATE = :avector_store_file_create + VECTOR_STORE_FILE_LIST = :vector_store_file_list + AVECTOR_STORE_FILE_LIST = :avector_store_file_list + VECTOR_STORE_FILE_RETRIEVE = :vector_store_file_retrieve + AVECTOR_STORE_FILE_RETRIEVE = :avector_store_file_retrieve + VECTOR_STORE_FILE_CONTENT = :vector_store_file_content + AVECTOR_STORE_FILE_CONTENT = :avector_store_file_content + VECTOR_STORE_FILE_UPDATE = :vector_store_file_update + AVECTOR_STORE_FILE_UPDATE = :avector_store_file_update + VECTOR_STORE_FILE_DELETE = :vector_store_file_delete + AVECTOR_STORE_FILE_DELETE = :avector_store_file_delete + VECTOR_STORE_CREATE = :vector_store_create + AVECTOR_STORE_CREATE = :avector_store_create + VECTOR_STORE_SEARCH = :vector_store_search + AVECTOR_STORE_SEARCH = :avector_store_search + CREATE_CONTAINER = :create_container + ACREATE_CONTAINER = :acreate_container + LIST_CONTAINERS = :list_containers + ALIST_CONTAINERS = :alist_containers + RETRIEVE_CONTAINER = :retrieve_container + ARETRIEVE_CONTAINER = :aretrieve_container + DELETE_CONTAINER = :delete_container + ADELETE_CONTAINER = :adelete_container + LIST_CONTAINER_FILES = :list_container_files + ALIST_CONTAINER_FILES = :alist_container_files + UPLOAD_CONTAINER_FILE = :upload_container_file + AUPLOAD_CONTAINER_FILE = :aupload_container_file ACANCEL_FINE_TUNING_JOB = :acancel_fine_tuning_job CANCEL_FINE_TUNING_JOB = :cancel_fine_tuning_job ALIST_FINE_TUNING_JOBS = :alist_fine_tuning_jobs @@ -86,6 +132,19 @@ module CallType RETRIEVE_FINE_TUNING_JOB = :retrieve_fine_tuning_job RESPONSES = :responses ARESPONSES = :aresponses + ALIST_INPUT_ITEMS = :alist_input_items + LLM_PASSTHROUGH_ROUTE = :llm_passthrough_route + ALLM_PASSTHROUGH_ROUTE = :allm_passthrough_route + GENERATE_CONTENT = :generate_content + AGENERATE_CONTENT = :agenerate_content + GENERATE_CONTENT_STREAM = :generate_content_stream + AGENERATE_CONTENT_STREAM = :agenerate_content_stream + OCR = :ocr + AOCR = :aocr + CALL_MCP_TOOL = :call_mcp_tool + ASEND_MESSAGE = :asend_message + SEND_MESSAGE = :send_message + ACREATE_SKILL = :acreate_skill # @!method self.values # @return [Array] diff --git a/lib/hanzoai/models/util_transform_request_response.rb b/lib/hanzoai/models/util_transform_request_response.rb index 68e8c025..a1814144 100644 --- a/lib/hanzoai/models/util_transform_request_response.rb +++ b/lib/hanzoai/models/util_transform_request_response.rb @@ -16,19 +16,23 @@ class UtilTransformRequestResponse < Hanzoai::Internal::Type::BaseModel # @!attribute raw_request_body # - # @return [Object, nil] - optional :raw_request_body, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :raw_request_body, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!attribute raw_request_headers # - # @return [Object, nil] - optional :raw_request_headers, Hanzoai::Internal::Type::Unknown, nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :raw_request_headers, + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + nil?: true # @!method initialize(error: nil, raw_request_api_base: nil, raw_request_body: nil, raw_request_headers: nil) # @param error [String, nil] # @param raw_request_api_base [String, nil] - # @param raw_request_body [Object, nil] - # @param raw_request_headers [Object, nil] + # @param raw_request_body [Hash{Symbol=>Object}, nil] + # @param raw_request_headers [Hash{Symbol=>Object}, nil] end end end diff --git a/lib/hanzoai/resources/active.rb b/lib/hanzoai/resources/active.rb index 67670048..c15da0b9 100644 --- a/lib/hanzoai/resources/active.rb +++ b/lib/hanzoai/resources/active.rb @@ -3,7 +3,7 @@ module Hanzoai module Resources class Active - # Returns a list of llm level settings + # Returns a list of litellm level settings # # This is useful for debugging and ensuring the proxy server is configured # correctly. @@ -13,17 +13,17 @@ class Active # ``` # { # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), + # "litellm.callbacks": litellm_callbacks, + # "litellm.input_callback": litellm_input_callbacks, + # "litellm.failure_callback": litellm_failure_callbacks, + # "litellm.success_callback": litellm_success_callbacks, + # "litellm._async_success_callback": litellm_async_success_callbacks, + # "litellm._async_failure_callback": litellm_async_failure_callbacks, + # "litellm._async_input_callback": litellm_async_input_callbacks, + # "all_litellm_callbacks": all_litellm_callbacks, + # "num_callbacks": len(all_litellm_callbacks), # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, + # "litellm.request_timeout": litellm.request_timeout, # } # ``` # diff --git a/lib/hanzoai/resources/anthropic.rb b/lib/hanzoai/resources/anthropic.rb index 52319211..f7cadf1c 100644 --- a/lib/hanzoai/resources/anthropic.rb +++ b/lib/hanzoai/resources/anthropic.rb @@ -3,7 +3,7 @@ module Hanzoai module Resources class Anthropic - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) # # @overload create(endpoint, request_options: {}) # @@ -22,7 +22,7 @@ def create(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) # # @overload retrieve(endpoint, request_options: {}) # @@ -41,7 +41,7 @@ def retrieve(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) # # @overload update(endpoint, request_options: {}) # @@ -60,7 +60,7 @@ def update(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) # # @overload delete(endpoint, request_options: {}) # @@ -79,7 +79,7 @@ def delete(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) # # @overload modify(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/azure.rb b/lib/hanzoai/resources/azure.rb index e4e04786..ca47708d 100644 --- a/lib/hanzoai/resources/azure.rb +++ b/lib/hanzoai/resources/azure.rb @@ -7,6 +7,9 @@ class Azure # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. + # # @overload create(endpoint, request_options: {}) # # @param endpoint [String] @@ -28,6 +31,9 @@ def create(endpoint, params = {}) # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. + # # @overload update(endpoint, request_options: {}) # # @param endpoint [String] @@ -49,6 +55,9 @@ def update(endpoint, params = {}) # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. + # # @overload delete(endpoint, request_options: {}) # # @param endpoint [String] @@ -70,6 +79,9 @@ def delete(endpoint, params = {}) # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. + # # @overload call(endpoint, request_options: {}) # # @param endpoint [String] @@ -91,6 +103,9 @@ def call(endpoint, params = {}) # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. + # # @overload patch(endpoint, request_options: {}) # # @param endpoint [String] diff --git a/lib/hanzoai/resources/batches.rb b/lib/hanzoai/resources/batches.rb index 60d338b3..845c776d 100644 --- a/lib/hanzoai/resources/batches.rb +++ b/lib/hanzoai/resources/batches.rb @@ -80,11 +80,12 @@ def retrieve(batch_id, params = {}) # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" # ``` # - # @overload list(after: nil, limit: nil, provider: nil, request_options: {}) + # @overload list(after: nil, limit: nil, provider: nil, target_model_names: nil, request_options: {}) # # @param after [String, nil] # @param limit [Integer, nil] # @param provider [String, nil] + # @param target_model_names [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -177,11 +178,12 @@ def create_with_provider(provider, params = {}) # curl http://localhost:4000/v1/batches?limit=2 -H "Authorization: Bearer sk-1234" -H "Content-Type: application/json" # ``` # - # @overload list_with_provider(provider, after: nil, limit: nil, request_options: {}) + # @overload list_with_provider(provider, after: nil, limit: nil, target_model_names: nil, request_options: {}) # # @param provider [String] # @param after [String, nil] # @param limit [Integer, nil] + # @param target_model_names [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/bedrock.rb b/lib/hanzoai/resources/bedrock.rb index 1e695efb..e1149cce 100644 --- a/lib/hanzoai/resources/bedrock.rb +++ b/lib/hanzoai/resources/bedrock.rb @@ -3,7 +3,8 @@ module Hanzoai module Resources class Bedrock - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) # # @overload create(endpoint, request_options: {}) # @@ -22,7 +23,8 @@ def create(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) # # @overload retrieve(endpoint, request_options: {}) # @@ -41,7 +43,8 @@ def retrieve(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) # # @overload update(endpoint, request_options: {}) # @@ -60,7 +63,8 @@ def update(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) # # @overload delete(endpoint, request_options: {}) # @@ -79,7 +83,8 @@ def delete(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) # # @overload patch(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/budget.rb b/lib/hanzoai/resources/budget.rb index 098ce863..cadbfd4d 100644 --- a/lib/hanzoai/resources/budget.rb +++ b/lib/hanzoai/resources/budget.rb @@ -22,13 +22,17 @@ class Budget # - model_max_budget: Optional[dict] - Specify max budget for a given model. # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", # "tpm_limit": 100000, "rpm_limit": 100000}} + # - budget_reset_at: Optional[datetime] - Datetime when the initial budget is + # reset. Default is now. # - # @overload create(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @overload create(budget_duration: nil, budget_id: nil, budget_reset_at: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') # # @param budget_id [String, nil] The unique budget id. # + # @param budget_reset_at [Time, nil] Datetime when the budget is reset + # # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. @@ -76,13 +80,17 @@ def create(params = {}) # - model_max_budget: Optional[dict] - Specify max budget for a given model. # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", # "tpm_limit": 100000, "rpm_limit": 100000}} + # - budget_reset_at: Optional[datetime] - Update the Datetime when the budget was + # last reset. # - # @overload update(budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @overload update(budget_duration: nil, budget_id: nil, budget_reset_at: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # # @param budget_duration [String, nil] Max duration budget should be set for (e.g. '1hr', '1d', '28d') # # @param budget_id [String, nil] The unique budget id. # + # @param budget_reset_at [Time, nil] Datetime when the budget is reset + # # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. # # @param max_parallel_requests [Integer, nil] Max concurrent requests allowed for this budget id. diff --git a/lib/hanzoai/resources/cache.rb b/lib/hanzoai/resources/cache.rb index 8adceae9..0137cf95 100644 --- a/lib/hanzoai/resources/cache.rb +++ b/lib/hanzoai/resources/cache.rb @@ -6,8 +6,8 @@ class Cache # @return [Hanzoai::Resources::Cache::Redis] attr_reader :redis - # Endpoint for deleting a key from the cache. All responses from llm proxy have - # `x-llm-cache-key` in the headers + # Endpoint for deleting a key from the cache. All responses from litellm proxy + # have `x-litellm-cache-key` in the headers # # Parameters: # diff --git a/lib/hanzoai/resources/chat/completions.rb b/lib/hanzoai/resources/chat/completions.rb index d037bf30..e3c3a6fe 100644 --- a/lib/hanzoai/resources/chat/completions.rb +++ b/lib/hanzoai/resources/chat/completions.rb @@ -22,20 +22,48 @@ class Completions # }' # ``` # - # @overload create(model: nil, request_options: {}) + # @overload create(messages:, model:, caching: nil, context_window_fallback_dict: nil, fallbacks: nil, frequency_penalty: nil, function_call: nil, functions: nil, guardrails: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, metadata: nil, n: nil, num_retries: nil, parallel_tool_calls: nil, presence_penalty: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, request_options: {}) # - # @param model [String, nil] + # @param messages [Array] + # @param model [String] + # @param caching [Boolean, nil] + # @param context_window_fallback_dict [Hash{Symbol=>String}, nil] + # @param fallbacks [Array, nil] + # @param frequency_penalty [Float, nil] + # @param function_call [String, Hash{Symbol=>Object}, nil] + # @param functions [ArrayObject}>, nil] + # @param guardrails [Array, nil] + # @param logit_bias [Hash{Symbol=>Float}, nil] + # @param logprobs [Boolean, nil] + # @param max_tokens [Integer, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param n [Integer, nil] + # @param num_retries [Integer, nil] + # @param parallel_tool_calls [Boolean, nil] + # @param presence_penalty [Float, nil] + # @param response_format [Hash{Symbol=>Object}, nil] + # @param seed [Integer, nil] + # @param service_tier [String, nil] + # @param stop [String, Array, nil] + # @param stream [Boolean, nil] + # @param stream_options [Hash{Symbol=>Object}, nil] + # @param temperature [Float, nil] + # @param tool_choice [String, Hash{Symbol=>Object}, nil] + # @param tools [ArrayObject}>, nil] + # @param top_logprobs [Integer, nil] + # @param top_p [Float, nil] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::Chat::CompletionCreateParams - def create(params = {}) + def create(params) parsed, options = Hanzoai::Chat::CompletionCreateParams.dump_request(params) @client.request( method: :post, path: "v1/chat/completions", - query: parsed, + body: parsed, model: Hanzoai::Internal::Type::Unknown, options: options ) diff --git a/lib/hanzoai/resources/cohere.rb b/lib/hanzoai/resources/cohere.rb index b57e3bce..886a0988 100644 --- a/lib/hanzoai/resources/cohere.rb +++ b/lib/hanzoai/resources/cohere.rb @@ -3,7 +3,7 @@ module Hanzoai module Resources class Cohere - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) # # @overload create(endpoint, request_options: {}) # @@ -22,7 +22,7 @@ def create(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) # # @overload retrieve(endpoint, request_options: {}) # @@ -41,7 +41,7 @@ def retrieve(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) # # @overload update(endpoint, request_options: {}) # @@ -60,7 +60,7 @@ def update(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) # # @overload delete(endpoint, request_options: {}) # @@ -79,7 +79,7 @@ def delete(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) # # @overload modify(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/config/pass_through_endpoint.rb b/lib/hanzoai/resources/config/pass_through_endpoint.rb index 67bb6949..17157122 100644 --- a/lib/hanzoai/resources/config/pass_through_endpoint.rb +++ b/lib/hanzoai/resources/config/pass_through_endpoint.rb @@ -9,14 +9,24 @@ class PassThroughEndpoint # # Create new pass-through endpoint # - # @overload create(headers:, path:, target:, request_options: {}) + # @overload create(path:, target:, id: nil, auth: nil, cost_per_request: nil, guardrails: nil, headers: nil, include_subpath: nil, request_options: {}) # - # @param headers [Object] Key-value pairs of headers to be forwarded with the request. You can set any key - # - # @param path [String] The route to be added to the LLM Proxy Server. + # @param path [String] The route to be added to the LiteLLM Proxy Server. # # @param target [String] The URL to which requests for this path should be forwarded. # + # @param id [String, nil] Optional unique identifier for the pass-through endpoint. If not provided, endpo + # + # @param auth [Boolean] Whether authentication is required for the pass-through endpoint. If True, reque + # + # @param cost_per_request [Float] The USD cost per request to the target endpoint. This is used to calculate the c + # + # @param guardrails [Hash{Symbol=>Hanzoai::Models::Config::PassThroughGenericEndpoint::Guardrail, nil}, nil] Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # + # @param headers [Hash{Symbol=>Object}] Key-value pairs of headers to be forwarded with the request. You can set any key + # + # @param include_subpath [Boolean] If True, requests to subpaths of the path will be forwarded to the target endpoi + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -33,22 +43,44 @@ def create(params) ) end - # Update a pass-through endpoint + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::Config::PassThroughEndpointUpdateParams} for more details. + # + # Update a pass-through endpoint by ID. # - # @overload update(endpoint_id, request_options: {}) + # @overload update(endpoint_id, path:, target:, id: nil, auth: nil, cost_per_request: nil, guardrails: nil, headers: nil, include_subpath: nil, request_options: {}) # # @param endpoint_id [String] + # + # @param path [String] The route to be added to the LiteLLM Proxy Server. + # + # @param target [String] The URL to which requests for this path should be forwarded. + # + # @param id [String, nil] Optional unique identifier for the pass-through endpoint. If not provided, endpo + # + # @param auth [Boolean] Whether authentication is required for the pass-through endpoint. If True, reque + # + # @param cost_per_request [Float] The USD cost per request to the target endpoint. This is used to calculate the c + # + # @param guardrails [Hash{Symbol=>Hanzoai::Models::Config::PassThroughGenericEndpoint::Guardrail, nil}, nil] Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # + # @param headers [Hash{Symbol=>Object}] Key-value pairs of headers to be forwarded with the request. You can set any key + # + # @param include_subpath [Boolean] If True, requests to subpaths of the path will be forwarded to the target endpoi + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::Config::PassThroughEndpointUpdateParams - def update(endpoint_id, params = {}) + def update(endpoint_id, params) + parsed, options = Hanzoai::Config::PassThroughEndpointUpdateParams.dump_request(params) @client.request( method: :post, path: ["config/pass_through_endpoint/%1$s", endpoint_id], + body: parsed, model: Hanzoai::Internal::Type::Unknown, - options: params[:request_options] + options: options ) end @@ -56,9 +88,10 @@ def update(endpoint_id, params = {}) # # If no endpoint_id given, return all configured endpoints. # - # @overload list(endpoint_id: nil, request_options: {}) + # @overload list(endpoint_id: nil, team_id: nil, request_options: {}) # # @param endpoint_id [String, nil] + # @param team_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::Config::PassThroughEndpointResponse] @@ -75,7 +108,7 @@ def list(params = {}) ) end - # Delete a pass-through endpoint + # Delete a pass-through endpoint by ID. # # Returns - the deleted endpoint # diff --git a/lib/hanzoai/resources/credentials.rb b/lib/hanzoai/resources/credentials.rb index a5090130..0ea87d16 100644 --- a/lib/hanzoai/resources/credentials.rb +++ b/lib/hanzoai/resources/credentials.rb @@ -8,9 +8,9 @@ class Credentials # # @overload create(credential_info:, credential_name:, credential_values: nil, model_id: nil, request_options: {}) # - # @param credential_info [Object] + # @param credential_info [Hash{Symbol=>Object}] # @param credential_name [String] - # @param credential_values [Object, nil] + # @param credential_values [Hash{Symbol=>Object}, nil] # @param model_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -50,7 +50,8 @@ def list(params = {}) # # @overload delete(credential_name, request_options: {}) # - # @param credential_name [String] + # @param credential_name [String] The credential name, percent-decoded; may contain slashes + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/customer.rb b/lib/hanzoai/resources/customer.rb index 716e9974..7abd4f55 100644 --- a/lib/hanzoai/resources/customer.rb +++ b/lib/hanzoai/resources/customer.rb @@ -38,6 +38,9 @@ class Customer # parallel requests for a given customer. # - soft_budget: Optional[float] - [Not Implemented Yet] Get alerts when customer # crosses given budget, doesn't block requests. + # - spend: Optional[float] - Specify initial spend for a given customer. + # - budget_reset_at: Optional[str] - Specify the date and time when the budget + # should be reset. # # - Allow specifying allowed regions # - Allow specifying default model @@ -46,7 +49,7 @@ class Customer # # ``` # curl --location 'http://0.0.0.0:4000/customer/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id" : "z-jaff-3", + # "user_id" : "ishaan-jaff-3", # "allowed_region": "eu", # "budget_id": "free_tier", # "default_model": "azure/gpt-3.5-turbo-eu" <- all calls from this user, use this model? @@ -58,7 +61,7 @@ class Customer # NOTE: This used to be called `/end_user/new`, we will still be maintaining # compatibility for /end_user/XXX for these endpoints # - # @overload create(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @overload create(user_id:, alias_: nil, allowed_model_region: nil, blocked: nil, budget_duration: nil, budget_id: nil, budget_reset_at: nil, default_model: nil, max_budget: nil, max_parallel_requests: nil, model_max_budget: nil, rpm_limit: nil, soft_budget: nil, spend: nil, tpm_limit: nil, request_options: {}) # # @param user_id [String] # @@ -72,6 +75,8 @@ class Customer # # @param budget_id [String, nil] # + # @param budget_reset_at [Time, nil] Datetime when the budget is reset + # # @param default_model [String, nil] # # @param max_budget [Float, nil] Requests will fail if this budget (in USD) is exceeded. @@ -84,6 +89,8 @@ class Customer # # @param soft_budget [Float, nil] Requests will NOT fail if this is exceeded. Will fire alerting though. # + # @param spend [Float, nil] + # # @param tpm_limit [Integer, nil] Max tokens per minute, allowed for this budget id. # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -120,7 +127,7 @@ def create(params) # # ``` # curl --location 'http://0.0.0.0:4000/customer/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", + # "user_id": "test-litellm-user-4", # "budget_id": "paid_tier" # }' # @@ -164,14 +171,14 @@ def update(params) # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Hanzoai::Models::CustomerListParams def list(params = {}) @client.request( method: :get, path: "customer/list", - model: Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::CustomerListResponseItem], + model: Hanzoai::Internal::Type::ArrayOf[Hanzoai::LiteLlmEndUserTable], options: params[:request_options] ) end @@ -186,7 +193,7 @@ def list(params = {}) # # ``` # curl --location 'http://0.0.0.0:4000/customer/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_ids" :["z-jaff-5"] + # "user_ids" :["ishaan-jaff-5"] # }' # # See below for all params @@ -257,7 +264,7 @@ def block(params) # Example curl: # # ``` - # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' + # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-litellm-user-4' -H 'Authorization: Bearer sk-1234' # ``` # # @overload retrieve_info(end_user_id:, request_options: {}) @@ -266,7 +273,7 @@ def block(params) # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::CustomerRetrieveInfoResponse] + # @return [Hanzoai::Models::LiteLlmEndUserTable] # # @see Hanzoai::Models::CustomerRetrieveInfoParams def retrieve_info(params) @@ -275,7 +282,7 @@ def retrieve_info(params) method: :get, path: "customer/info", query: parsed, - model: Hanzoai::Models::CustomerRetrieveInfoResponse, + model: Hanzoai::LiteLlmEndUserTable, options: options ) end diff --git a/lib/hanzoai/resources/embeddings.rb b/lib/hanzoai/resources/embeddings.rb index 024958e0..be9969ed 100644 --- a/lib/hanzoai/resources/embeddings.rb +++ b/lib/hanzoai/resources/embeddings.rb @@ -16,20 +16,32 @@ class Embeddings # }' # ``` # - # @overload create(model: nil, request_options: {}) + # @overload create(model:, api_base: nil, api_key: nil, api_type: nil, api_version: nil, caching: nil, custom_llm_provider: nil, input: nil, litellm_call_id: nil, litellm_logging_obj: nil, logger_fn: nil, timeout: nil, user: nil, request_options: {}) # - # @param model [String, nil] + # @param model [String] + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_type [String, nil] + # @param api_version [String, nil] + # @param caching [Boolean] + # @param custom_llm_provider [String, Hash{Symbol=>Object}, nil] + # @param input [Array] + # @param litellm_call_id [String, nil] + # @param litellm_logging_obj [Hash{Symbol=>Object}, nil] + # @param logger_fn [String, nil] + # @param timeout [Integer] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::EmbeddingCreateParams - def create(params = {}) + def create(params) parsed, options = Hanzoai::EmbeddingCreateParams.dump_request(params) @client.request( method: :post, path: "embeddings", - query: parsed, + body: parsed, model: Hanzoai::Internal::Type::Unknown, options: options ) diff --git a/lib/hanzoai/resources/engines.rb b/lib/hanzoai/resources/engines.rb index 1ec8ba38..78cf5d1e 100644 --- a/lib/hanzoai/resources/engines.rb +++ b/lib/hanzoai/resources/engines.rb @@ -51,20 +51,35 @@ def complete(model, params = {}) # }' # ``` # - # @overload embed(model, request_options: {}) + # @overload embed(path_model, body_model:, api_base: nil, api_key: nil, api_type: nil, api_version: nil, caching: nil, custom_llm_provider: nil, input: nil, litellm_call_id: nil, litellm_logging_obj: nil, logger_fn: nil, timeout: nil, user: nil, request_options: {}) # - # @param model [String] + # @param path_model [String] + # @param body_model [String] + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_type [String, nil] + # @param api_version [String, nil] + # @param caching [Boolean] + # @param custom_llm_provider [String, Hash{Symbol=>Object}, nil] + # @param input [Array] + # @param litellm_call_id [String, nil] + # @param litellm_logging_obj [Hash{Symbol=>Object}, nil] + # @param logger_fn [String, nil] + # @param timeout [Integer] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::EngineEmbedParams - def embed(model, params = {}) + def embed(path_model, params) + parsed, options = Hanzoai::EngineEmbedParams.dump_request(params) @client.request( method: :post, - path: ["engines/%1$s/embeddings", model], + path: ["engines/%1$s/embeddings", path_model], + body: parsed, model: Hanzoai::Internal::Type::Unknown, - options: params[:request_options] + options: options ) end diff --git a/lib/hanzoai/resources/engines/chat.rb b/lib/hanzoai/resources/engines/chat.rb index 6bbb1c93..503a2e51 100644 --- a/lib/hanzoai/resources/engines/chat.rb +++ b/lib/hanzoai/resources/engines/chat.rb @@ -22,20 +22,51 @@ class Chat # }' # ``` # - # @overload complete(model, request_options: {}) + # @overload complete(path_model, messages:, body_model:, caching: nil, context_window_fallback_dict: nil, fallbacks: nil, frequency_penalty: nil, function_call: nil, functions: nil, guardrails: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, metadata: nil, n: nil, num_retries: nil, parallel_tool_calls: nil, presence_penalty: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, request_options: {}) # - # @param model [String] + # @param path_model [String] + # @param messages [Array] + # @param body_model [String] + # @param caching [Boolean, nil] + # @param context_window_fallback_dict [Hash{Symbol=>String}, nil] + # @param fallbacks [Array, nil] + # @param frequency_penalty [Float, nil] + # @param function_call [String, Hash{Symbol=>Object}, nil] + # @param functions [ArrayObject}>, nil] + # @param guardrails [Array, nil] + # @param logit_bias [Hash{Symbol=>Float}, nil] + # @param logprobs [Boolean, nil] + # @param max_tokens [Integer, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param n [Integer, nil] + # @param num_retries [Integer, nil] + # @param parallel_tool_calls [Boolean, nil] + # @param presence_penalty [Float, nil] + # @param response_format [Hash{Symbol=>Object}, nil] + # @param seed [Integer, nil] + # @param service_tier [String, nil] + # @param stop [String, Array, nil] + # @param stream [Boolean, nil] + # @param stream_options [Hash{Symbol=>Object}, nil] + # @param temperature [Float, nil] + # @param tool_choice [String, Hash{Symbol=>Object}, nil] + # @param tools [ArrayObject}>, nil] + # @param top_logprobs [Integer, nil] + # @param top_p [Float, nil] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::Engines::ChatCompleteParams - def complete(model, params = {}) + def complete(path_model, params) + parsed, options = Hanzoai::Engines::ChatCompleteParams.dump_request(params) @client.request( method: :post, - path: ["engines/%1$s/chat/completions", model], + path: ["engines/%1$s/chat/completions", path_model], + body: parsed, model: Hanzoai::Internal::Type::Unknown, - options: params[:request_options] + options: options ) end diff --git a/lib/hanzoai/resources/files.rb b/lib/hanzoai/resources/files.rb index 4257ba6e..3872d1a5 100644 --- a/lib/hanzoai/resources/files.rb +++ b/lib/hanzoai/resources/files.rb @@ -16,15 +16,18 @@ class Files # # ``` # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" -F purpose="batch" -F file="@mydata.jsonl" - # + # -F expires_after[anchor]="created_at" -F expires_after[seconds]=2592000 # ``` # - # @overload create(provider, file:, purpose:, custom_llm_provider: nil, request_options: {}) + # @overload create(provider, file:, purpose:, custom_llm_provider: nil, litellm_metadata: nil, target_model_names: nil, target_storage: nil, request_options: {}) # # @param provider [String] # @param file [Pathname, StringIO, IO, String, Hanzoai::FilePart] # @param purpose [String] # @param custom_llm_provider [String] + # @param litellm_metadata [String, nil] + # @param target_model_names [String] + # @param target_storage [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] @@ -92,10 +95,11 @@ def retrieve(file_id, params) # # ``` # - # @overload list(provider, purpose: nil, request_options: {}) + # @overload list(provider, purpose: nil, target_model_names: nil, request_options: {}) # # @param provider [String] # @param purpose [String, nil] + # @param target_model_names [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/fine_tuning/jobs.rb b/lib/hanzoai/resources/fine_tuning/jobs.rb index 27d2ad1d..c516dbbf 100644 --- a/lib/hanzoai/resources/fine_tuning/jobs.rb +++ b/lib/hanzoai/resources/fine_tuning/jobs.rb @@ -26,12 +26,12 @@ class Jobs # }' # ``` # - # @overload create(custom_llm_provider:, model:, training_file:, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) + # @overload create(model:, training_file:, custom_llm_provider: nil, hyperparameters: nil, integrations: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) # - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobCreateParams::CustomLlmProvider] # @param model [String] # @param training_file [String] - # @param hyperparameters [Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters, nil] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider, nil] + # @param hyperparameters [Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters, nil] # @param integrations [Array, nil] # @param seed [Integer, nil] # @param suffix [String, nil] @@ -57,19 +57,19 @@ def create(params) # # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider + # - `custom_llm_provider`: Name of the LiteLLM provider # - `fine_tuning_job_id`: The ID of the fine-tuning job to retrieve. # - # @overload retrieve(fine_tuning_job_id, custom_llm_provider:, request_options: {}) + # @overload retrieve(fine_tuning_job_id, custom_llm_provider: nil, request_options: {}) # # @param fine_tuning_job_id [String] - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider] + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobRetrieveParams::CustomLlmProvider, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::FineTuning::JobRetrieveParams - def retrieve(fine_tuning_job_id, params) + def retrieve(fine_tuning_job_id, params = {}) parsed, options = Hanzoai::FineTuning::JobRetrieveParams.dump_request(params) @client.request( method: :get, @@ -85,21 +85,26 @@ def retrieve(fine_tuning_job_id, params) # # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider + # - `custom_llm_provider`: Name of the LiteLLM provider # - `after`: Identifier for the last job from the previous pagination request. # - `limit`: Number of fine-tuning jobs to retrieve (default is 20). # - # @overload list(custom_llm_provider:, after: nil, limit: nil, request_options: {}) + # @overload list(after: nil, custom_llm_provider: nil, limit: nil, target_model_names: nil, request_options: {}) # - # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider] # @param after [String, nil] + # + # @param custom_llm_provider [Symbol, Hanzoai::Models::FineTuning::JobListParams::CustomLlmProvider, nil] + # # @param limit [Integer, nil] + # + # @param target_model_names [String, nil] Comma separated list of model names to filter by. Example: 'gpt-4o,gpt-4o-mini' + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::FineTuning::JobListParams - def list(params) + def list(params = {}) parsed, options = Hanzoai::FineTuning::JobListParams.dump_request(params) @client.request( method: :get, diff --git a/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb b/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb index 92fdf5ac..93614c6f 100644 --- a/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb +++ b/lib/hanzoai/resources/fine_tuning/jobs/cancel.rb @@ -12,7 +12,7 @@ class Cancel # # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider + # - `custom_llm_provider`: Name of the LiteLLM provider # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. # # @overload create(fine_tuning_job_id, request_options: {}) diff --git a/lib/hanzoai/resources/gemini.rb b/lib/hanzoai/resources/gemini.rb index 12d6e0b9..e3432c79 100644 --- a/lib/hanzoai/resources/gemini.rb +++ b/lib/hanzoai/resources/gemini.rb @@ -3,7 +3,7 @@ module Hanzoai module Resources class Gemini - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) # # @overload create(endpoint, request_options: {}) # @@ -22,7 +22,7 @@ def create(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) # # @overload retrieve(endpoint, request_options: {}) # @@ -41,7 +41,7 @@ def retrieve(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) # # @overload update(endpoint, request_options: {}) # @@ -60,7 +60,7 @@ def update(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) # # @overload delete(endpoint, request_options: {}) # @@ -79,7 +79,7 @@ def delete(endpoint, params = {}) ) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) # # @overload patch(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/global/spend.rb b/lib/hanzoai/resources/global/spend.rb index 9517c689..3969787d 100644 --- a/lib/hanzoai/resources/global/spend.rb +++ b/lib/hanzoai/resources/global/spend.rb @@ -4,7 +4,7 @@ module Hanzoai module Resources class Global class Spend - # LLM Enterprise - View Spend Per Request Tag. Used by LLM UI + # LiteLLM Enterprise - View Spend Per Request Tag. Used by LiteLLM UI # # Example Request: # @@ -44,12 +44,12 @@ def list_tags(params = {}) # ADMIN ONLY / MASTER KEY Only Endpoint # - # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs + # Globally reset spend for All API Keys and Teams, maintain LiteLLM_SpendLogs # - # 1. LLM_SpendLogs will maintain the logs on spend, no data gets deleted from + # 1. LiteLLM_SpendLogs will maintain the logs on spend, no data gets deleted from # there - # 2. LLM_VerificationTokens spend will be set = 0 - # 3. LLM_TeamTable spend will be set = 0 + # 2. LiteLLM_VerificationTokens spend will be set = 0 + # 3. LiteLLM_TeamTable spend will be set = 0 # # @overload reset(request_options: {}) # diff --git a/lib/hanzoai/resources/guardrails.rb b/lib/hanzoai/resources/guardrails.rb index c734624c..054535f5 100644 --- a/lib/hanzoai/resources/guardrails.rb +++ b/lib/hanzoai/resources/guardrails.rb @@ -5,7 +5,7 @@ module Resources class Guardrails # List the guardrails that are available on the proxy server # - # 👉 [Guardrail docs](https://docs.hanzo.ai/docs/proxy/guardrails/quick_start) + # 👉 [Guardrail docs](https://docs.litellm.ai/docs/proxy/guardrails/quick_start) # # Example Request: # diff --git a/lib/hanzoai/resources/health.rb b/lib/hanzoai/resources/health.rb index 9f7ec614..d0b8e411 100644 --- a/lib/hanzoai/resources/health.rb +++ b/lib/hanzoai/resources/health.rb @@ -5,7 +5,7 @@ module Resources class Health # 🚨 USE `/health/liveliness` to health check the proxy 🚨 # - # See more 👉 https://docs.hanzo.ai/docs/proxy/health + # See more 👉 https://docs.litellm.ai/docs/proxy/health # # Check the health of all the endpoints in config.yaml # @@ -19,10 +19,12 @@ class Health # # else, the health checks will be run on models when /health is called. # - # @overload check_all(model: nil, request_options: {}) + # @overload check_all(model: nil, model_id: nil, request_options: {}) # # @param model [String, nil] Specify the model name (optional) # + # @param model_id [String, nil] Specify the model ID (optional) + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/images/generations.rb b/lib/hanzoai/resources/images/generations.rb index 02ea8ff9..97e8392a 100644 --- a/lib/hanzoai/resources/images/generations.rb +++ b/lib/hanzoai/resources/images/generations.rb @@ -6,19 +6,22 @@ class Images class Generations # Image Generation # - # @overload create(request_options: {}) + # @overload create(model: nil, request_options: {}) # + # @param model [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::Images::GenerationCreateParams def create(params = {}) + parsed, options = Hanzoai::Images::GenerationCreateParams.dump_request(params) @client.request( method: :post, path: "v1/images/generations", + query: parsed, model: Hanzoai::Internal::Type::Unknown, - options: params[:request_options] + options: options ) end diff --git a/lib/hanzoai/resources/key.rb b/lib/hanzoai/resources/key.rb index 0bb3ff51..1de59d6b 100644 --- a/lib/hanzoai/resources/key.rb +++ b/lib/hanzoai/resources/key.rb @@ -21,9 +21,10 @@ class Key # calling `/budget/new`. # - models: Optional[list] - Model_name's a user is allowed to call # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. # - enforced_params: Optional[List[str]] - List of enforced params for the key # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) # - spend: Optional[float] - Amount spent by key # - max_budget: Optional[float] - Max budget for key # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets @@ -40,19 +41,53 @@ class Key # "claude-v1": 200} # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": 100000, # "claude-v1": 200000} + # - tpm_limit_type: Optional[str] - TPM rate limit type - + # "best_effort_throughput", "guaranteed_throughput", or "dynamic" + # - rpm_limit_type: Optional[str] - RPM rate limit type - + # "best_effort_throughput", "guaranteed_throughput", or "dynamic" # - allowed_cache_controls: Optional[list] - List of allowed cache control values - # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) + # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) or "-1" to + # never expire # - permissions: Optional[dict] - Key-specific permissions # - send_invite_email: Optional[bool] - Send invite email to user_id # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. # - blocked: Optional[bool] - Whether the key is blocked # - aliases: Optional[dict] - Model aliases for the key - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) # - config: Optional[dict] - [DEPRECATED PARAM] Key-specific config. # - temp_budget_increase: Optional[float] - Temporary budget increase for the key # (Enterprise only). # - temp_budget_expiry: Optional[str] - Expiry time for the temporary budget # increase (Enterprise only). + # - allowed_routes: Optional[list] - List of allowed routes for the key. Store the + # actual route or store a wildcard pattern for a set of routes. Example - + # ["/chat/completions", "/embeddings", "/keys/*"] + # - allowed_passthrough_routes: Optional[list] - List of allowed pass through + # routes for the key. Store the actual route or store a wildcard pattern for a + # set of routes. Example - ["/my-custom-endpoint"]. Use this instead of + # allowed_routes, if you just want to specify which pass through routes the key + # can access, without specifying the routes. If allowed_routes is specified, + # allowed_passthrough_routes is ignored. + # - prompts: Optional[List[str]] - List of allowed prompts for the key. If + # specified, the key will only be able to use these specific prompts. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - auto_rotate: Optional[bool] - Whether this key should be automatically rotated + # - rotation_interval: Optional[str] - How often to rotate this key (e.g., '30d', + # '90d'). Required if auto_rotate=True + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - router_settings: Optional[UpdateRouterConfig] - key-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. # # Example: # @@ -67,63 +102,83 @@ class Key # }' # ``` # - # @overload update(key:, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # @overload update(key:, aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, permissions: nil, prompts: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, tpm_limit_type: nil, user_id: nil, litellm_changed_by: nil, request_options: {}) # - # @param key [String] Body param: + # @param key [String] Body param # - # @param aliases [Object, nil] Body param: + # @param aliases [Hash{Symbol=>Object}, nil] Body param # - # @param allowed_cache_controls [Array, nil] Body param: + # @param allowed_cache_controls [Array, nil] Body param # - # @param blocked [Boolean, nil] Body param: + # @param allowed_passthrough_routes [Array, nil] Body param # - # @param budget_duration [String, nil] Body param: + # @param allowed_routes [Array, nil] Body param # - # @param budget_id [String, nil] Body param: + # @param allowed_vector_store_indexes [Array, nil] Body param # - # @param config [Object, nil] Body param: + # @param auto_rotate [Boolean, nil] Body param # - # @param duration [String, nil] Body param: + # @param blocked [Boolean, nil] Body param # - # @param enforced_params [Array, nil] Body param: + # @param budget_duration [String, nil] Body param # - # @param guardrails [Array, nil] Body param: + # @param budget_id [String, nil] Body param # - # @param key_alias [String, nil] Body param: + # @param config [Hash{Symbol=>Object}, nil] Body param # - # @param max_budget [Float, nil] Body param: + # @param duration [String, nil] Body param # - # @param max_parallel_requests [Integer, nil] Body param: + # @param enforced_params [Array, nil] Body param # - # @param metadata [Object, nil] Body param: + # @param guardrails [Array, nil] Body param # - # @param model_max_budget [Object, nil] Body param: + # @param key_alias [String, nil] Body param # - # @param model_rpm_limit [Object, nil] Body param: + # @param max_budget [Float, nil] Body param # - # @param model_tpm_limit [Object, nil] Body param: + # @param max_parallel_requests [Integer, nil] Body param # - # @param models [Array, nil] Body param: + # @param metadata [Hash{Symbol=>Object}, nil] Body param # - # @param permissions [Object, nil] Body param: + # @param model_max_budget [Hash{Symbol=>Object}, nil] Body param # - # @param rpm_limit [Integer, nil] Body param: + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] Body param # - # @param spend [Float, nil] Body param: + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] Body param # - # @param tags [Array, nil] Body param: + # @param models [Array, nil] Body param # - # @param team_id [String, nil] Body param: + # @param object_permission [Hanzoai::Models::KeyUpdateParams::ObjectPermission, nil] Body param # - # @param temp_budget_expiry [Time, nil] Body param: + # @param permissions [Hash{Symbol=>Object}, nil] Body param # - # @param temp_budget_increase [Float, nil] Body param: + # @param prompts [Array, nil] Body param # - # @param tpm_limit [Integer, nil] Body param: + # @param rotation_interval [String, nil] Body param # - # @param user_id [String, nil] Body param: + # @param router_settings [Hanzoai::Models::KeyUpdateParams::RouterSettings, nil] Body param: Set of params that you can modify via `router.update_settings()`. # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param rpm_limit [Integer, nil] Body param + # + # @param rpm_limit_type [Symbol, Hanzoai::Models::KeyUpdateParams::RpmLimitType, nil] Body param + # + # @param spend [Float, nil] Body param + # + # @param tags [Array, nil] Body param + # + # @param team_id [String, nil] Body param + # + # @param temp_budget_expiry [Time, nil] Body param + # + # @param temp_budget_increase [Float, nil] Body param + # + # @param tpm_limit [Integer, nil] Body param + # + # @param tpm_limit_type [Symbol, Hanzoai::Models::KeyUpdateParams::TpmLimitType, nil] Body param + # + # @param user_id [String, nil] Body param + # + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -132,7 +187,7 @@ class Key # @see Hanzoai::Models::KeyUpdateParams def update(params) parsed, options = Hanzoai::KeyUpdateParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "key/update", @@ -145,15 +200,29 @@ def update(params) # List all keys for a given user / team / organization. # + # Parameters: expand: Optional[List[str]] - Expand related objects (e.g. 'user' to + # include user information) status: Optional[str] - Filter by status. Currently + # supports "deleted" to query deleted keys. + # # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, # "current_page": int, "total_pages": int, } # - # @overload list(include_team_keys: nil, key_alias: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, team_id: nil, user_id: nil, request_options: {}) + # When expand includes "user", each key object will include a "user" field with + # the associated user object. Note: When expand=user is specified, full key + # objects are returned regardless of the return_full_object parameter. + # + # @overload list(expand: nil, include_created_by_keys: nil, include_team_keys: nil, key_alias: nil, key_hash: nil, organization_id: nil, page: nil, return_full_object: nil, size: nil, sort_by: nil, sort_order: nil, status: nil, team_id: nil, user_id: nil, request_options: {}) + # + # @param expand [Array, nil] Expand related objects (e.g. 'user') + # + # @param include_created_by_keys [Boolean] Include keys created by the user # # @param include_team_keys [Boolean] Include all keys for teams that user is an admin of. # # @param key_alias [String, nil] Filter keys by key alias # + # @param key_hash [String, nil] Filter keys by key hash + # # @param organization_id [String, nil] Filter keys by organization ID # # @param page [Integer] Page number @@ -162,6 +231,12 @@ def update(params) # # @param size [Integer] Page size # + # @param sort_by [String, nil] Column to sort by (e.g. 'user_id', 'created_at', 'spend') + # + # @param sort_order [String] Sort order ('asc' or 'desc') + # + # @param status [String, nil] Filter by status (e.g. 'deleted') + # # @param team_id [String, nil] Filter keys by team ID # # @param user_id [String, nil] Filter keys by user ID @@ -211,13 +286,13 @@ def list(params = {}) # # Raises: HTTPException: If an error occurs during key deletion. # - # @overload delete(key_aliases: nil, keys: nil, llm_changed_by: nil, request_options: {}) + # @overload delete(key_aliases: nil, keys: nil, litellm_changed_by: nil, request_options: {}) # - # @param key_aliases [Array, nil] Body param: + # @param key_aliases [Array, nil] Body param # - # @param keys [Array, nil] Body param: + # @param keys [Array, nil] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -226,7 +301,7 @@ def list(params = {}) # @see Hanzoai::Models::KeyDeleteParams def delete(params = {}) parsed, options = Hanzoai::KeyDeleteParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "key/delete", @@ -257,11 +332,11 @@ def delete(params = {}) # # Note: This is an admin-only endpoint. Only proxy admins can block keys. # - # @overload block(key:, llm_changed_by: nil, request_options: {}) + # @overload block(key:, litellm_changed_by: nil, request_options: {}) # - # @param key [String] Body param: + # @param key [String] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -270,7 +345,7 @@ def delete(params = {}) # @see Hanzoai::Models::KeyBlockParams def block(params) parsed, options = Hanzoai::KeyBlockParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "key/block", @@ -342,7 +417,7 @@ def check_health(params = {}) # # Generate an API key based on the provided data. # - # Docs: https://docs.hanzo.ai/docs/proxy/virtual_keys + # Docs: https://docs.litellm.ai/docs/proxy/virtual_keys # # Parameters: # @@ -354,18 +429,21 @@ def check_health(params = {}) # sk-key is created for you. # - team_id: Optional[str] - The team id of the key # - user_id: Optional[str] - The user id of the key + # - organization_id: Optional[str] - The organization id of the key. If not set, + # and team_id is set, the organization id will be the same as the team id. If + # conflict, an error will be raised. # - budget_id: Optional[str] - The budget id associated with the key. Created by # calling `/budget/new`. # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, # key is allowed to call all models) # - aliases: Optional[dict] - Any alias mappings, on top of anything in the # config.yaml model list. - - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models + # https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models # - config: Optional[dict] - any key-specific configs, overrides config in # config.yaml # - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by # proxy whenever key is used. - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend + # https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend # - send_invite_email: Optional[bool] - Whether to send an invite email to the # user_id, with the generate key # - max_budget: Optional[float] - Specify max budget for a given key. @@ -375,9 +453,11 @@ def check_health(params = {}) # - max_parallel_requests: Optional[int] - Rate limit a user based on the number # of parallel requests. Raises 429 error, if user's parallel requests > x. # - metadata: Optional[dict] - Metadata for key, store information for key. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } + # Example metadata = {"team": "core-infra", "app": "app2", "email": + # "ishaan@berri.ai" } # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. # - permissions: Optional[dict] - key-specific permissions. Currently just used # for turning off pii masking (if connected). Example - {"pii": false} # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets @@ -389,9 +469,19 @@ def check_health(params = {}) # - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model # specific tpm limit. + # - tpm_limit_type: Optional[str] - Type of tpm limit. Options: + # "best_effort_throughput" (no error if we're overallocating tpm), + # "guaranteed_throughput" (raise an error if we're overallocating tpm), + # "dynamic" (dynamically exceed limit when no 429 errors). Defaults to + # "best_effort_throughput". + # - rpm_limit_type: Optional[str] - Type of rpm limit. Options: + # "best_effort_throughput" (no error if we're overallocating rpm), + # "guaranteed_throughput" (raise an error if we're overallocating rpm), + # "dynamic" (dynamically exceed limit when no 429 errors). Defaults to + # "best_effort_throughput". # - allowed_cache_controls: Optional[list] - List of allowed cache control values. # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request + # https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request # - blocked: Optional[bool] - Whether the key is blocked. # - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per # minute) @@ -400,12 +490,45 @@ def check_health(params = {}) # - soft_budget: Optional[float] - Specify soft budget for a given key. Will # trigger a slack alert when this soft budget is reached. # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. # - enforced_params: Optional[List[str]] - List of enforced params for the key # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. + # - allowed_routes: Optional[list] - List of allowed routes for the key. Store the + # actual route or store a wildcard pattern for a set of routes. Example - + # ["/chat/completions", "/embeddings", "/keys/*"] + # - allowed_passthrough_routes: Optional[list] - List of allowed pass through + # endpoints for the key. Store the actual endpoint or store a wildcard pattern + # for a set of endpoints. Example - ["/my-custom-endpoint"]. Use this instead of + # allowed_routes, if you just want to specify which pass through endpoints the + # key can access, without specifying the routes. If allowed_routes is specified, + # allowed_pass_through_endpoints is ignored. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - key_type: Optional[str] - Type of key that determines default allowed routes. + # Options: "llm_api" (can call LLM API routes), "management" (can call + # management routes), "read_only" (can only call info/read routes), "default" + # (uses default allowed routes). Defaults to "default". + # - prompts: Optional[List[str]] - List of allowed prompts for the key. If + # specified, the key will only be able to use these specific prompts. + # - auto_rotate: Optional[bool] - Whether this key should be automatically rotated + # (regenerated) + # - rotation_interval: Optional[str] - How often to auto-rotate this key (e.g., + # '30s', '30m', '30h', '30d'). Required if auto_rotate=True. + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - router_settings: Optional[UpdateRouterConfig] - key-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. # # Examples: # @@ -424,63 +547,88 @@ def check_health(params = {}) # - user_id: (str) Unique user id - used for tracking spend across multiple keys # for same user id. # - # @overload generate(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # @overload generate(aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, key: nil, key_alias: nil, key_type: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, permissions: nil, prompts: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, tpm_limit_type: nil, user_id: nil, litellm_changed_by: nil, request_options: {}) + # + # @param aliases [Hash{Symbol=>Object}, nil] Body param + # + # @param allowed_cache_controls [Array, nil] Body param + # + # @param allowed_passthrough_routes [Array, nil] Body param # - # @param aliases [Object, nil] Body param: + # @param allowed_routes [Array, nil] Body param # - # @param allowed_cache_controls [Array, nil] Body param: + # @param allowed_vector_store_indexes [Array, nil] Body param # - # @param blocked [Boolean, nil] Body param: + # @param auto_rotate [Boolean, nil] Body param: Whether this key should be automatically rotated # - # @param budget_duration [String, nil] Body param: + # @param blocked [Boolean, nil] Body param # - # @param budget_id [String, nil] Body param: + # @param budget_duration [String, nil] Body param # - # @param config [Object, nil] Body param: + # @param budget_id [String, nil] Body param # - # @param duration [String, nil] Body param: + # @param config [Hash{Symbol=>Object}, nil] Body param # - # @param enforced_params [Array, nil] Body param: + # @param duration [String, nil] Body param # - # @param guardrails [Array, nil] Body param: + # @param enforced_params [Array, nil] Body param # - # @param key [String, nil] Body param: + # @param guardrails [Array, nil] Body param # - # @param key_alias [String, nil] Body param: + # @param key [String, nil] Body param # - # @param max_budget [Float, nil] Body param: + # @param key_alias [String, nil] Body param # - # @param max_parallel_requests [Integer, nil] Body param: + # @param key_type [Symbol, Hanzoai::Models::KeyGenerateParams::KeyType, nil] Body param: Enum for key types that determine what routes a key can access # - # @param metadata [Object, nil] Body param: + # @param max_budget [Float, nil] Body param # - # @param model_max_budget [Object, nil] Body param: + # @param max_parallel_requests [Integer, nil] Body param # - # @param model_rpm_limit [Object, nil] Body param: + # @param metadata [Hash{Symbol=>Object}, nil] Body param # - # @param model_tpm_limit [Object, nil] Body param: + # @param model_max_budget [Hash{Symbol=>Object}, nil] Body param # - # @param models [Array, nil] Body param: + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] Body param # - # @param permissions [Object, nil] Body param: + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] Body param # - # @param rpm_limit [Integer, nil] Body param: + # @param models [Array, nil] Body param # - # @param send_invite_email [Boolean, nil] Body param: + # @param object_permission [Hanzoai::Models::KeyGenerateParams::ObjectPermission, nil] Body param # - # @param soft_budget [Float, nil] Body param: + # @param organization_id [String, nil] Body param # - # @param spend [Float, nil] Body param: + # @param permissions [Hash{Symbol=>Object}, nil] Body param # - # @param tags [Array, nil] Body param: + # @param prompts [Array, nil] Body param # - # @param team_id [String, nil] Body param: + # @param rotation_interval [String, nil] Body param: How often to rotate this key (e.g., '30d', '90d'). Required if + # auto\_ # - # @param tpm_limit [Integer, nil] Body param: + # @param router_settings [Hanzoai::Models::KeyGenerateParams::RouterSettings, nil] Body param: Set of params that you can modify via `router.update_settings()`. # - # @param user_id [String, nil] Body param: + # @param rpm_limit [Integer, nil] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param rpm_limit_type [Symbol, Hanzoai::Models::KeyGenerateParams::RpmLimitType, nil] Body param + # + # @param send_invite_email [Boolean, nil] Body param + # + # @param soft_budget [Float, nil] Body param + # + # @param spend [Float, nil] Body param + # + # @param tags [Array, nil] Body param + # + # @param team_id [String, nil] Body param + # + # @param tpm_limit [Integer, nil] Body param + # + # @param tpm_limit_type [Symbol, Hanzoai::Models::KeyGenerateParams::TpmLimitType, nil] Body param + # + # @param user_id [String, nil] Body param + # + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -489,7 +637,7 @@ def check_health(params = {}) # @see Hanzoai::Models::KeyGenerateParams def generate(params = {}) parsed, options = Hanzoai::KeyGenerateParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "key/generate", @@ -510,6 +658,11 @@ def generate(params = {}) # - key: str (path parameter) - The key to regenerate # - data: Optional[RegenerateKeyRequest] - Request body containing optional # parameters to update + # - key: Optional[str] - The key to regenerate. + # - new_master_key: Optional[str] - The new master key to use, if key is the + # master key. + # - new_key: Optional[str] - The new key to use, if key is not the master key. + # If both set, new_master_key will be used. # - key_alias: Optional[str] - User-friendly key alias # - user_id: Optional[str] - User ID associated with key # - team_id: Optional[str] - Team ID associated with key @@ -554,67 +707,94 @@ def generate(params = {}) # # Note: This is an Enterprise feature. It requires a premium license to use. # - # @overload regenerate_by_key(path_key, aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, body_key: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, new_master_key: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, user_id: nil, llm_changed_by: nil, request_options: {}) + # @overload regenerate_by_key(path_key, aliases: nil, allowed_cache_controls: nil, allowed_passthrough_routes: nil, allowed_routes: nil, allowed_vector_store_indexes: nil, auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, duration: nil, enforced_params: nil, guardrails: nil, body_key: nil, key_alias: nil, key_type: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, new_key: nil, new_master_key: nil, object_permission: nil, organization_id: nil, permissions: nil, prompts: nil, rotation_interval: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, tpm_limit_type: nil, user_id: nil, litellm_changed_by: nil, request_options: {}) + # + # @param path_key [String] Path param + # + # @param aliases [Hash{Symbol=>Object}, nil] Body param + # + # @param allowed_cache_controls [Array, nil] Body param + # + # @param allowed_passthrough_routes [Array, nil] Body param + # + # @param allowed_routes [Array, nil] Body param + # + # @param allowed_vector_store_indexes [Array, nil] Body param + # + # @param auto_rotate [Boolean, nil] Body param: Whether this key should be automatically rotated + # + # @param blocked [Boolean, nil] Body param + # + # @param budget_duration [String, nil] Body param + # + # @param budget_id [String, nil] Body param + # + # @param config [Hash{Symbol=>Object}, nil] Body param + # + # @param duration [String, nil] Body param + # + # @param enforced_params [Array, nil] Body param # - # @param path_key [String] Path param: + # @param guardrails [Array, nil] Body param # - # @param aliases [Object, nil] Body param: + # @param body_key [String, nil] Body param # - # @param allowed_cache_controls [Array, nil] Body param: + # @param key_alias [String, nil] Body param # - # @param blocked [Boolean, nil] Body param: + # @param key_type [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::KeyType, nil] Body param: Enum for key types that determine what routes a key can access # - # @param budget_duration [String, nil] Body param: + # @param max_budget [Float, nil] Body param # - # @param budget_id [String, nil] Body param: + # @param max_parallel_requests [Integer, nil] Body param # - # @param config [Object, nil] Body param: + # @param metadata [Hash{Symbol=>Object}, nil] Body param # - # @param duration [String, nil] Body param: + # @param model_max_budget [Hash{Symbol=>Object}, nil] Body param # - # @param enforced_params [Array, nil] Body param: + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] Body param # - # @param guardrails [Array, nil] Body param: + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] Body param # - # @param body_key [String, nil] Body param: + # @param models [Array, nil] Body param # - # @param key_alias [String, nil] Body param: + # @param new_key [String, nil] Body param # - # @param max_budget [Float, nil] Body param: + # @param new_master_key [String, nil] Body param # - # @param max_parallel_requests [Integer, nil] Body param: + # @param object_permission [Hanzoai::Models::Key::RegenerateKeyRequest::ObjectPermission, nil] Body param # - # @param metadata [Object, nil] Body param: + # @param organization_id [String, nil] Body param # - # @param model_max_budget [Object, nil] Body param: + # @param permissions [Hash{Symbol=>Object}, nil] Body param # - # @param model_rpm_limit [Object, nil] Body param: + # @param prompts [Array, nil] Body param # - # @param model_tpm_limit [Object, nil] Body param: + # @param rotation_interval [String, nil] Body param: How often to rotate this key (e.g., '30d', '90d'). Required if + # auto\_ # - # @param models [Array, nil] Body param: + # @param router_settings [Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings, nil] Body param: Set of params that you can modify via `router.update_settings()`. # - # @param new_master_key [String, nil] Body param: + # @param rpm_limit [Integer, nil] Body param # - # @param permissions [Object, nil] Body param: + # @param rpm_limit_type [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::RpmLimitType, nil] Body param # - # @param rpm_limit [Integer, nil] Body param: + # @param send_invite_email [Boolean, nil] Body param # - # @param send_invite_email [Boolean, nil] Body param: + # @param soft_budget [Float, nil] Body param # - # @param soft_budget [Float, nil] Body param: + # @param spend [Float, nil] Body param # - # @param spend [Float, nil] Body param: + # @param tags [Array, nil] Body param # - # @param tags [Array, nil] Body param: + # @param team_id [String, nil] Body param # - # @param team_id [String, nil] Body param: + # @param tpm_limit [Integer, nil] Body param # - # @param tpm_limit [Integer, nil] Body param: + # @param tpm_limit_type [Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::TpmLimitType, nil] Body param # - # @param user_id [String, nil] Body param: + # @param user_id [String, nil] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -623,7 +803,7 @@ def generate(params = {}) # @see Hanzoai::Models::KeyRegenerateByKeyParams def regenerate_by_key(path_key, params = {}) parsed, options = Hanzoai::KeyRegenerateByKeyParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: ["key/%1$s/regenerate", path_key], @@ -642,14 +822,14 @@ def regenerate_by_key(path_key, params = {}) # Example Curl: # # ``` - # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-02Wr4IAlN3NvPXvL5JVvDA" -H "Authorization: Bearer sk-1234" + # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-test-example-key-123" -H "Authorization: Bearer sk-1234" # ``` # # Example Curl - if no key is passed, it will use the Key Passed in Authorization # Header # # ``` - # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" + # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-test-example-key-123" # ``` # # @overload retrieve_info(key: nil, request_options: {}) @@ -692,11 +872,11 @@ def retrieve_info(params = {}) # # Note: This is an admin-only endpoint. Only proxy admins can unblock keys. # - # @overload unblock(key:, llm_changed_by: nil, request_options: {}) + # @overload unblock(key:, litellm_changed_by: nil, request_options: {}) # - # @param key [String] Body param: + # @param key [String] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -705,7 +885,7 @@ def retrieve_info(params = {}) # @see Hanzoai::Models::KeyUnblockParams def unblock(params) parsed, options = Hanzoai::KeyUnblockParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "key/unblock", diff --git a/lib/hanzoai/resources/langfuse.rb b/lib/hanzoai/resources/langfuse.rb index fd20e2bb..a390f3cf 100644 --- a/lib/hanzoai/resources/langfuse.rb +++ b/lib/hanzoai/resources/langfuse.rb @@ -3,9 +3,9 @@ module Hanzoai module Resources class Langfuse - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) # # @overload create(endpoint, request_options: {}) # @@ -24,9 +24,9 @@ def create(endpoint, params = {}) ) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) # # @overload retrieve(endpoint, request_options: {}) # @@ -45,9 +45,9 @@ def retrieve(endpoint, params = {}) ) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) # # @overload update(endpoint, request_options: {}) # @@ -66,9 +66,9 @@ def update(endpoint, params = {}) ) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) # # @overload delete(endpoint, request_options: {}) # @@ -87,9 +87,9 @@ def delete(endpoint, params = {}) ) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) # # @overload patch(endpoint, request_options: {}) # diff --git a/lib/hanzoai/resources/model.rb b/lib/hanzoai/resources/model.rb index 42bd61d0..29f8659a 100644 --- a/lib/hanzoai/resources/model.rb +++ b/lib/hanzoai/resources/model.rb @@ -11,9 +11,9 @@ class Model # Allows adding new models to the model list in the config.yaml # - # @overload create(llm_params:, model_info:, model_name:, request_options: {}) + # @overload create(litellm_params:, model_info:, model_name:, request_options: {}) # - # @param llm_params [Hanzoai::Models::ModelCreateParams::LlmParams] LLM Params with 'model' requirement - used for completions + # @param litellm_params [Hanzoai::Models::ModelCreateParams::LitellmParams] LiteLLM Params with 'model' requirement - used for completions # # @param model_info [Hanzoai::Models::ModelInfo] # diff --git a/lib/hanzoai/resources/model/info.rb b/lib/hanzoai/resources/model/info.rb index 2cd18e99..c515ecc7 100644 --- a/lib/hanzoai/resources/model/info.rb +++ b/lib/hanzoai/resources/model/info.rb @@ -7,11 +7,11 @@ class Info # Provides more info about each model in /models, including config.yaml # descriptions (except api key and api base) # - # Parameters: llm_model_id: Optional[str] = None (this is the value of - # `x-llm-model-id` returned in response headers) + # Parameters: litellm_model_id: Optional[str] = None (this is the value of + # `x-litellm-model-id` returned in response headers) # - # - When llm_model_id is passed, it will return the info for that specific model - # - When llm_model_id is not passed, it will return the info for all models + # - When litellm_model_id is passed, it will return the info for that specific model + # - When litellm_model_id is not passed, it will return the info for all models # # Returns: Returns a dictionary containing information about each model. # @@ -22,7 +22,7 @@ class Info # "data": [ # { # "model_name": "fake-openai-endpoint", - # "llm_params": { + # "litellm_params": { # "api_base": "https://exampleopenaiendpoint-production.up.railway.app/", # "model": "openai/fake" # }, @@ -35,9 +35,9 @@ class Info # } # ``` # - # @overload list(llm_model_id: nil, request_options: {}) + # @overload list(litellm_model_id: nil, request_options: {}) # - # @param llm_model_id [String, nil] + # @param litellm_model_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] diff --git a/lib/hanzoai/resources/model/update.rb b/lib/hanzoai/resources/model/update.rb index 0fb34798..43304906 100644 --- a/lib/hanzoai/resources/model/update.rb +++ b/lib/hanzoai/resources/model/update.rb @@ -6,9 +6,9 @@ class Model class Update # Edit existing model params # - # @overload full(llm_params: nil, model_info: nil, model_name: nil, request_options: {}) + # @overload full(litellm_params: nil, model_info: nil, model_name: nil, request_options: {}) # - # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] + # @param litellm_params [Hanzoai::Models::Model::UpdateDeployment::LitellmParams, nil] # @param model_info [Hanzoai::Models::ModelInfo, nil] # @param model_name [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -40,10 +40,10 @@ def full(params = {}) # Raises: ProxyException: For various error conditions including authentication # and database errors # - # @overload partial(model_id, llm_params: nil, model_info: nil, model_name: nil, request_options: {}) + # @overload partial(model_id, litellm_params: nil, model_info: nil, model_name: nil, request_options: {}) # # @param model_id [String] - # @param llm_params [Hanzoai::Models::Model::UpdateDeployment::LlmParams, nil] + # @param litellm_params [Hanzoai::Models::Model::UpdateDeployment::LitellmParams, nil] # @param model_info [Hanzoai::Models::ModelInfo, nil] # @param model_name [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/lib/hanzoai/resources/model_group.rb b/lib/hanzoai/resources/model_group.rb index 2a32d570..1101ae2d 100644 --- a/lib/hanzoai/resources/model_group.rb +++ b/lib/hanzoai/resources/model_group.rb @@ -3,8 +3,8 @@ module Hanzoai module Resources class ModelGroup - # Get information about all the deployments on llm proxy, including config.yaml - # descriptions (except api key and api base) + # Get information about all the deployments on litellm proxy, including + # config.yaml descriptions (except api key and api base) # # - /model_group/info returns all model groups. End users of proxy should use # /model_group/info since those models will be used for /chat/completions, @@ -33,7 +33,7 @@ class ModelGroup # ``` # # Learn how to use and set wildcard models - # [here](https://docs.hanzo.ai/docs/wildcard_routing) + # [here](https://docs.litellm.ai/docs/wildcard_routing) # # Example Response: # diff --git a/lib/hanzoai/resources/models.rb b/lib/hanzoai/resources/models.rb index 16d8d01b..549056e2 100644 --- a/lib/hanzoai/resources/models.rb +++ b/lib/hanzoai/resources/models.rb @@ -8,8 +8,19 @@ class Models # # This is just for compatibility with openai projects like aider. # - # @overload list(return_wildcard_routes: nil, team_id: nil, request_options: {}) + # Query Parameters: # + # - include_metadata: Include additional metadata in the response with fallback + # information + # - fallback_type: Type of fallbacks to include ("general", "context_window", + # "content_policy") Defaults to "general" when include_metadata=true + # + # @overload list(fallback_type: nil, include_metadata: nil, include_model_access_groups: nil, only_model_access_groups: nil, return_wildcard_routes: nil, team_id: nil, request_options: {}) + # + # @param fallback_type [String, nil] + # @param include_metadata [Boolean, nil] + # @param include_model_access_groups [Boolean, nil] + # @param only_model_access_groups [Boolean, nil] # @param return_wildcard_routes [Boolean, nil] # @param team_id [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/lib/hanzoai/resources/moderations.rb b/lib/hanzoai/resources/moderations.rb index cf2d4b0d..08f3600a 100644 --- a/lib/hanzoai/resources/moderations.rb +++ b/lib/hanzoai/resources/moderations.rb @@ -4,9 +4,7 @@ module Hanzoai module Resources class Moderations # The moderations endpoint is a tool you can use to check whether content complies - # with an LLM Providers policies. - # - # Quick Start + # with an LLM Providers policies. Quick Start # # ``` # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' diff --git a/lib/hanzoai/resources/openai/deployments.rb b/lib/hanzoai/resources/openai/deployments.rb index e6e28421..1ebcb0a1 100644 --- a/lib/hanzoai/resources/openai/deployments.rb +++ b/lib/hanzoai/resources/openai/deployments.rb @@ -52,20 +52,35 @@ def complete(model, params = {}) # }' # ``` # - # @overload embed(model, request_options: {}) + # @overload embed(path_model, body_model:, api_base: nil, api_key: nil, api_type: nil, api_version: nil, caching: nil, custom_llm_provider: nil, input: nil, litellm_call_id: nil, litellm_logging_obj: nil, logger_fn: nil, timeout: nil, user: nil, request_options: {}) # - # @param model [String] + # @param path_model [String] + # @param body_model [String] + # @param api_base [String, nil] + # @param api_key [String, nil] + # @param api_type [String, nil] + # @param api_version [String, nil] + # @param caching [Boolean] + # @param custom_llm_provider [String, Hash{Symbol=>Object}, nil] + # @param input [Array] + # @param litellm_call_id [String, nil] + # @param litellm_logging_obj [Hash{Symbol=>Object}, nil] + # @param logger_fn [String, nil] + # @param timeout [Integer] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::OpenAI::DeploymentEmbedParams - def embed(model, params = {}) + def embed(path_model, params) + parsed, options = Hanzoai::OpenAI::DeploymentEmbedParams.dump_request(params) @client.request( method: :post, - path: ["openai/deployments/%1$s/embeddings", model], + path: ["openai/deployments/%1$s/embeddings", path_model], + body: parsed, model: Hanzoai::Internal::Type::Unknown, - options: params[:request_options] + options: options ) end diff --git a/lib/hanzoai/resources/openai/deployments/chat.rb b/lib/hanzoai/resources/openai/deployments/chat.rb index 228339e7..3f7ac1a8 100644 --- a/lib/hanzoai/resources/openai/deployments/chat.rb +++ b/lib/hanzoai/resources/openai/deployments/chat.rb @@ -23,20 +23,51 @@ class Chat # }' # ``` # - # @overload complete(model, request_options: {}) + # @overload complete(path_model, messages:, body_model:, caching: nil, context_window_fallback_dict: nil, fallbacks: nil, frequency_penalty: nil, function_call: nil, functions: nil, guardrails: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, metadata: nil, n: nil, num_retries: nil, parallel_tool_calls: nil, presence_penalty: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, request_options: {}) # - # @param model [String] + # @param path_model [String] + # @param messages [Array] + # @param body_model [String] + # @param caching [Boolean, nil] + # @param context_window_fallback_dict [Hash{Symbol=>String}, nil] + # @param fallbacks [Array, nil] + # @param frequency_penalty [Float, nil] + # @param function_call [String, Hash{Symbol=>Object}, nil] + # @param functions [ArrayObject}>, nil] + # @param guardrails [Array, nil] + # @param logit_bias [Hash{Symbol=>Float}, nil] + # @param logprobs [Boolean, nil] + # @param max_tokens [Integer, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param n [Integer, nil] + # @param num_retries [Integer, nil] + # @param parallel_tool_calls [Boolean, nil] + # @param presence_penalty [Float, nil] + # @param response_format [Hash{Symbol=>Object}, nil] + # @param seed [Integer, nil] + # @param service_tier [String, nil] + # @param stop [String, Array, nil] + # @param stream [Boolean, nil] + # @param stream_options [Hash{Symbol=>Object}, nil] + # @param temperature [Float, nil] + # @param tool_choice [String, Hash{Symbol=>Object}, nil] + # @param tools [ArrayObject}>, nil] + # @param top_logprobs [Integer, nil] + # @param top_p [Float, nil] + # @param user [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Object] # # @see Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams - def complete(model, params = {}) + def complete(path_model, params) + parsed, options = Hanzoai::OpenAI::Deployments::ChatCompleteParams.dump_request(params) @client.request( method: :post, - path: ["openai/deployments/%1$s/chat/completions", model], + path: ["openai/deployments/%1$s/chat/completions", path_model], + body: parsed, model: Hanzoai::Internal::Type::Unknown, - options: params[:request_options] + options: options ) end diff --git a/lib/hanzoai/resources/organization.rb b/lib/hanzoai/resources/organization.rb index 469f0a01..df1e4416 100644 --- a/lib/hanzoai/resources/organization.rb +++ b/lib/hanzoai/resources/organization.rb @@ -24,6 +24,10 @@ class Organization # - max_budget: _Optional[float]_ - Max budget for org # - tpm_limit: _Optional[int]_ - Max tpm limit for org # - rpm_limit: _Optional[int]_ - Max rpm limit for org + # - model_rpm_limit: _Optional[Dict[str, int]]_ - The RPM (Requests Per Minute) + # limit per model for this organization. + # - model_tpm_limit: _Optional[Dict[str, int]]_ - The TPM (Tokens Per Minute) + # limit per model for this organization. # - max_parallel_requests: _Optional[int]_ - [Not Implemented Yet] Max parallel # requests for org # - soft_budget: _Optional[float]_ - [Not Implemented Yet] Get a slack alert when @@ -35,15 +39,17 @@ class Organization # - blocked: _bool_ - Flag indicating if the org is blocked or not - will stop all # calls from keys with this org_id. # - tags: _Optional[List[str]]_ - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). # - organization_id: _Optional[str]_ - The organization id of the team. Default is # None. Create via `/organization/new`. # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - # Case 1: Create new org **without** a budget_id + # [Docs](https://docs.litellm.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - + # organization-specific object permission. Example - {"vector_stores": + # ["vector_store_1", "vector_store_2"]}. IF null or {} then no object + # permission. Case 1: Create new org **without** a budget_id # # ```bash # curl --location 'http://0.0.0.0:4000/organization/new' @@ -71,16 +77,19 @@ class Organization # }' # ``` # - # @overload create(organization_alias:, budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, models: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) + # @overload create(organization_alias:, budget_duration: nil, budget_id: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, tpm_limit: nil, request_options: {}) # # @param organization_alias [String] # @param budget_duration [String, nil] # @param budget_id [String, nil] # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # @param model_rpm_limit [Hash{Symbol=>Integer}, nil] + # @param model_tpm_limit [Hash{Symbol=>Integer}, nil] # @param models [Array] + # @param object_permission [Hanzoai::Models::OrganizationCreateParams::ObjectPermission, nil] # @param organization_id [String, nil] # @param rpm_limit [Integer, nil] # @param soft_budget [Float, nil] @@ -103,48 +112,62 @@ def create(params) # Update an organization # - # @overload update(budget_id: nil, metadata: nil, models: nil, organization_alias: nil, organization_id: nil, spend: nil, updated_by: nil, request_options: {}) + # @overload update(request_options: {}) # - # @param budget_id [String, nil] - # @param metadata [Object, nil] - # @param models [Array, nil] - # @param organization_alias [String, nil] - # @param organization_id [String, nil] - # @param spend [Float, nil] - # @param updated_by [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::OrganizationUpdateResponse] + # @return [Hanzoai::Models::OrganizationTableWithMembers] # # @see Hanzoai::Models::OrganizationUpdateParams def update(params = {}) - parsed, options = Hanzoai::OrganizationUpdateParams.dump_request(params) @client.request( method: :patch, path: "organization/update", - body: parsed, - model: Hanzoai::Models::OrganizationUpdateResponse, - options: options + model: Hanzoai::OrganizationTableWithMembers, + options: params[:request_options] ) end + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::OrganizationListParams} for more details. + # + # Get a list of organizations with optional filtering. + # + # Parameters: org_id: Optional[str] Filter organizations by exact organization_id + # match org_alias: Optional[str] Filter organizations by partial + # organization_alias match (case-insensitive) + # + # Example: + # + # ``` + # curl --location --request GET 'http://0.0.0.0:4000/organization/list?org_alias=my-org' --header 'Authorization: Bearer sk-1234' + # ``` + # + # Example with org_id: + # # ``` - # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' + # curl --location --request GET 'http://0.0.0.0:4000/organization/list?org_id=123e4567-e89b-12d3-a456-426614174000' --header 'Authorization: Bearer sk-1234' # ``` # - # @overload list(request_options: {}) + # @overload list(org_alias: nil, org_id: nil, request_options: {}) + # + # @param org_alias [String, nil] Filter organizations by partial organization_alias match. Supports case-insensit + # + # @param org_id [String, nil] Filter organizations by exact organization_id match # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Hanzoai::Models::OrganizationListParams def list(params = {}) + parsed, options = Hanzoai::OrganizationListParams.dump_request(params) @client.request( method: :get, path: "organization/list", - model: Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationListResponseItem], - options: params[:request_options] + query: parsed, + model: Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers], + options: options ) end @@ -159,7 +182,7 @@ def list(params = {}) # @param organization_ids [Array] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Array] + # @return [Array] # # @see Hanzoai::Models::OrganizationDeleteParams def delete(params) @@ -168,7 +191,7 @@ def delete(params) method: :delete, path: "organization/delete", body: parsed, - model: Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationDeleteResponseItem], + model: Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers], options: options ) end @@ -185,7 +208,7 @@ def delete(params) # # - organization_id: str (required) # - member: Union[List[Member], Member] (required) - # - role: Literal[LLMUserRoles] (required) + # - role: Literal[LitellmUserRoles] (required) # - user_id: Optional[str] # - user_email: Optional[str] # @@ -198,7 +221,7 @@ def delete(params) # "organization_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", # "member": { # "role": "internal_user", - # "user_id": "dev247652@hanzo.ai" + # "user_id": "krrish247652@berri.ai" # }, # "max_budget_in_organization": 100.0 # }' @@ -208,8 +231,8 @@ def delete(params) # # 1. Check if organization exists # 2. Creates a new Internal User if the user_id or user_email is not found in - # LLM_UserTable - # 3. Add Internal User to the `LLM_OrganizationMembership` table + # LiteLLM_UserTable + # 3. Add Internal User to the `LiteLLM_OrganizationMembership` table # # @overload add_member(member:, organization_id:, max_budget_in_organization: nil, request_options: {}) # @@ -266,7 +289,7 @@ def delete_member(params) # # @param max_budget_in_organization [Float, nil] # - # @param role [Symbol, Hanzoai::Models::OrganizationUpdateMemberParams::Role, nil] Admin Roles: + # @param role [Symbol, Hanzoai::Models::UserRoles, nil] Admin Roles: # # @param user_email [String, nil] # @@ -274,7 +297,7 @@ def delete_member(params) # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::OrganizationUpdateMemberResponse] + # @return [Hanzoai::Models::OrganizationMembershipTable] # # @see Hanzoai::Models::OrganizationUpdateMemberParams def update_member(params) @@ -283,7 +306,7 @@ def update_member(params) method: :patch, path: "organization/member_update", body: parsed, - model: Hanzoai::Models::OrganizationUpdateMemberResponse, + model: Hanzoai::OrganizationMembershipTable, options: options ) end diff --git a/lib/hanzoai/resources/organization/info.rb b/lib/hanzoai/resources/organization/info.rb index 2bbad54c..94d132a1 100644 --- a/lib/hanzoai/resources/organization/info.rb +++ b/lib/hanzoai/resources/organization/info.rb @@ -11,7 +11,7 @@ class Info # @param organization_id [String] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [Hanzoai::Models::Organization::InfoRetrieveResponse] + # @return [Hanzoai::Models::OrganizationTableWithMembers] # # @see Hanzoai::Models::Organization::InfoRetrieveParams def retrieve(params) @@ -20,7 +20,7 @@ def retrieve(params) method: :get, path: "organization/info", query: parsed, - model: Hanzoai::Models::Organization::InfoRetrieveResponse, + model: Hanzoai::OrganizationTableWithMembers, options: options ) end diff --git a/lib/hanzoai/resources/provider.rb b/lib/hanzoai/resources/provider.rb index e264c438..7ea0ae33 100644 --- a/lib/hanzoai/resources/provider.rb +++ b/lib/hanzoai/resources/provider.rb @@ -4,7 +4,7 @@ module Hanzoai module Resources class Provider # Provider Budget Routing - Get Budget, Spend Details - # https://docs.hanzo.ai/docs/proxy/provider_budget_routing + # https://docs.litellm.ai/docs/proxy/provider_budget_routing # # Use this endpoint to check current budget, spend and budget reset time for a # provider diff --git a/lib/hanzoai/resources/responses.rb b/lib/hanzoai/resources/responses.rb index b6430573..5eef40cf 100644 --- a/lib/hanzoai/resources/responses.rb +++ b/lib/hanzoai/resources/responses.rb @@ -9,11 +9,23 @@ class Responses # Follows the OpenAI Responses API spec: # https://platform.openai.com/docs/api-reference/responses # + # Supports background mode with polling_via_cache for partial response retrieval. + # When background=true and polling_via_cache is enabled, returns a polling_id + # immediately and streams the response in the background, updating Redis cache. + # # ```bash + # # Normal request # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ # "model": "gpt-4o", # "input": "Tell me about AI" # }' + # + # # Background request with polling + # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "model": "gpt-4o", + # "input": "Tell me about AI", + # "background": true + # }' # ``` # # @overload create(request_options: {}) @@ -34,10 +46,20 @@ def create(params = {}) # Get a response by ID. # + # Supports both: + # + # - Polling IDs (litellm*poll*\*): Returns cumulative cached content from + # background responses + # - Provider response IDs: Passes through to provider API + # # Follows the OpenAI Responses API spec: # https://platform.openai.com/docs/api-reference/responses/get # # ```bash + # # Get polling response + # curl -X GET http://localhost:4000/v1/responses/litellm_poll_abc123 -H "Authorization: Bearer sk-1234" + # + # # Get provider response # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" # ``` # @@ -60,6 +82,11 @@ def retrieve(response_id, params = {}) # Delete a response by ID. # + # Supports both: + # + # - Polling IDs (litellm*poll*\*): Deletes from Redis cache + # - Provider response IDs: Passes through to provider API + # # Follows the OpenAI Responses API spec: # https://platform.openai.com/docs/api-reference/responses/delete # diff --git a/lib/hanzoai/resources/responses/input_items.rb b/lib/hanzoai/resources/responses/input_items.rb index 4407af73..7d7a234a 100644 --- a/lib/hanzoai/resources/responses/input_items.rb +++ b/lib/hanzoai/resources/responses/input_items.rb @@ -4,14 +4,7 @@ module Hanzoai module Resources class Responses class InputItems - # Get input items for a response. - # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/input-items - # - # ```bash - # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" - # ``` + # List input items for a response. # # @overload list(response_id, request_options: {}) # diff --git a/lib/hanzoai/resources/settings.rb b/lib/hanzoai/resources/settings.rb index 02682f85..55f91a92 100644 --- a/lib/hanzoai/resources/settings.rb +++ b/lib/hanzoai/resources/settings.rb @@ -3,7 +3,7 @@ module Hanzoai module Resources class Settings - # Returns a list of llm level settings + # Returns a list of litellm level settings # # This is useful for debugging and ensuring the proxy server is configured # correctly. @@ -13,17 +13,17 @@ class Settings # ``` # { # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), + # "litellm.callbacks": litellm_callbacks, + # "litellm.input_callback": litellm_input_callbacks, + # "litellm.failure_callback": litellm_failure_callbacks, + # "litellm.success_callback": litellm_success_callbacks, + # "litellm._async_success_callback": litellm_async_success_callbacks, + # "litellm._async_failure_callback": litellm_async_failure_callbacks, + # "litellm._async_input_callback": litellm_async_input_callbacks, + # "all_litellm_callbacks": all_litellm_callbacks, + # "num_callbacks": len(all_litellm_callbacks), # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, + # "litellm.request_timeout": litellm.request_timeout, # } # ``` # diff --git a/lib/hanzoai/resources/spend.rb b/lib/hanzoai/resources/spend.rb index 31e992c1..4711cacc 100644 --- a/lib/hanzoai/resources/spend.rb +++ b/lib/hanzoai/resources/spend.rb @@ -8,7 +8,7 @@ class Spend # Calculate spend **before** making call: # # Note: If you see a spend of $0.0 you need to set custom_pricing for your model: - # https://docs.hanzo.ai/docs/proxy/custom_pricing + # https://docs.litellm.ai/docs/proxy/custom_pricing # # ``` # curl --location 'http://localhost:4000/spend/calculate' @@ -53,7 +53,7 @@ class Spend # # @overload calculate_spend(completion_response: nil, messages: nil, model: nil, request_options: {}) # - # @param completion_response [Object, nil] + # @param completion_response [Hash{Symbol=>Object}, nil] # @param messages [Array, nil] # @param model [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -75,9 +75,18 @@ def calculate_spend(params = {}) # Some parameter documentations has been truncated, see # {Hanzoai::Models::SpendListLogsParams} for more details. # + # [DEPRECATED] This endpoint is not paginated and can cause performance issues. + # Please use `/spend/logs/v2` instead for paginated access to spend logs. + # # View all spend logs, if request_id is provided, only logs for that request_id # will be returned # + # When start_date and end_date are provided: + # + # - summarize=true (default): Returns aggregated spend data grouped by date + # (maintains backward compatibility) + # - summarize=false: Returns filtered individual log entries within the date range + # # Example Request for all logs # # ``` @@ -93,16 +102,22 @@ def calculate_spend(params = {}) # Example Request for specific api_key # # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-Fn8Ej39NkBQmUagFEoUWPQ" -H "Authorization: Bearer sk-1234" + # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-test-example-key-123" -H "Authorization: Bearer sk-1234" # ``` # # Example Request for specific user_id # # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=z@hanzo.ai" -H "Authorization: Bearer sk-1234" + # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=ishaan@berri.ai" -H "Authorization: Bearer sk-1234" + # ``` + # + # Example Request for date range with individual logs (unsummarized) + # + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?start_date=2024-01-01&end_date=2024-01-02&summarize=false" -H "Authorization: Bearer sk-1234" # ``` # - # @overload list_logs(api_key: nil, end_date: nil, request_id: nil, start_date: nil, user_id: nil, request_options: {}) + # @overload list_logs(api_key: nil, end_date: nil, request_id: nil, start_date: nil, summarize: nil, user_id: nil, request_options: {}) # # @param api_key [String, nil] Get spend logs based on api key # @@ -112,6 +127,8 @@ def calculate_spend(params = {}) # # @param start_date [String, nil] Time from which to start viewing key spend # + # @param summarize [Boolean] When start_date and end_date are provided, summarize=true returns aggregated dat + # # @param user_id [String, nil] Get spend logs based on user_id # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] @@ -130,7 +147,7 @@ def list_logs(params = {}) ) end - # LLM Enterprise - View Spend Per Request Tag + # LiteLLM Enterprise - View Spend Per Request Tag # # Example Request: # diff --git a/lib/hanzoai/resources/team.rb b/lib/hanzoai/resources/team.rb index cad453e5..e2037bf4 100644 --- a/lib/hanzoai/resources/team.rb +++ b/lib/hanzoai/resources/team.rb @@ -15,7 +15,7 @@ class Team # Allow users to create a new team. Apply user permissions to their team. # # 👉 - # [Detailed Doc on setting team budgets](https://docs.hanzo.ai/docs/proxy/team_budgets) + # [Detailed Doc on setting team budgets](https://docs.litellm.ai/docs/proxy/team_budgets) # # Parameters: # @@ -25,16 +25,31 @@ class Team # - members_with_roles: List[{"role": "admin" or "user", "user_id": # ""}] - A list of users and their roles in the team. Get user_id when # making a new user via `/user/new`. + # - team_member_permissions: Optional[List[str]] - A list of routes that non-admin + # team members can access. example: ["/key/generate", "/key/update", + # "/key/delete"] # - metadata: Optional[dict] - Metadata for team, store information for team. # Example metadata = {"extra_info": "some info"} + # - model_rpm_limit: Optional[Dict[str, int]] - The RPM (Requests Per Minute) + # limit for this team - applied across all keys for this team. + # - model_tpm_limit: Optional[Dict[str, int]] - The TPM (Tokens Per Minute) limit + # for this team - applied across all keys for this team. # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - # all keys with this team_id will have at max this TPM limit # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - # all keys associated with this team_id will have at max this RPM limit + # - rpm_limit_type: Optional[Literal["guaranteed_throughput", + # "best_effort_throughput"]] - The type of RPM limit enforcement. Use + # "guaranteed_throughput" to raise an error if overallocating RPM, or + # "best_effort_throughput" for best effort enforcement. + # - tpm_limit_type: Optional[Literal["guaranteed_throughput", + # "best_effort_throughput"]] - The type of TPM limit enforcement. Use + # "guaranteed_throughput" to raise an error if overallocating TPM, or + # "best_effort_throughput" for best effort enforcement. # - max_budget: Optional[float] - The maximum budget allocated to the team - all # keys for this team_id will have at max this max_budget # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # [here](https://docs.litellm.ai/docs/proxy/team_budgets) # - models: Optional[list] - A list of models associated with the team - all keys # for this team_id will have at most, these models. If empty, assumes all models # are allowed. @@ -43,15 +58,46 @@ class Team # - members: Optional[List] - Control team members via `/team/member/add` and # `/team/member/delete`. # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). + # - prompts: Optional[List[str]] - List of prompts that the team is allowed to + # use. # - organization_id: Optional[str] - The organization id of the team. Default is # None. Create via `/organization/new`. # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # [Docs](https://docs.litellm.ai/docs/proxy/team_based_routing#create-team-with-model-alias) # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Returns: + # [Docs](https://docs.litellm.ai/docs/proxy/guardrails) + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - team-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - team_member_budget: Optional[float] - The maximum budget allocated to an + # individual team member. + # - team_member_rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for + # individual team members. + # - team_member_tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for + # individual team members. + # - team_member_key_duration: Optional[str] - The duration for a team member's + # key. e.g. "1d", "1w", "1mo" + # - allowed_passthrough_routes: Optional[List[str]] - List of allowed pass through + # routes for the team. + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - secret_manager_settings: Optional[dict] - Secret manager settings for the + # team. [Docs](https://docs.litellm.ai/docs/secret_managers/overview) + # - router_settings: Optional[UpdateRouterConfig] - team-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. + # + # Returns: + # # - team_id: (str) Unique team id - used for tracking spend across multiple keys # for same team id. # @@ -79,41 +125,71 @@ class Team # }' # ``` # - # @overload create(admins: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, team_id: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # @overload create(admins: nil, allowed_passthrough_routes: nil, allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, members: nil, members_with_roles: nil, metadata: nil, model_aliases: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, prompts: nil, router_settings: nil, rpm_limit: nil, rpm_limit_type: nil, secret_manager_settings: nil, tags: nil, team_alias: nil, team_id: nil, team_member_budget: nil, team_member_key_duration: nil, team_member_permissions: nil, team_member_rpm_limit: nil, team_member_tpm_limit: nil, tpm_limit: nil, tpm_limit_type: nil, litellm_changed_by: nil, request_options: {}) + # + # @param admins [Array] Body param + # + # @param allowed_passthrough_routes [Array, nil] Body param + # + # @param allowed_vector_store_indexes [Array, nil] Body param + # + # @param blocked [Boolean] Body param + # + # @param budget_duration [String, nil] Body param + # + # @param guardrails [Array, nil] Body param + # + # @param max_budget [Float, nil] Body param + # + # @param members [Array] Body param + # + # @param members_with_roles [Array] Body param # - # @param admins [Array] Body param: + # @param metadata [Hash{Symbol=>Object}, nil] Body param # - # @param blocked [Boolean] Body param: + # @param model_aliases [Hash{Symbol=>Object}, nil] Body param # - # @param budget_duration [String, nil] Body param: + # @param model_rpm_limit [Hash{Symbol=>Integer}, nil] Body param # - # @param guardrails [Array, nil] Body param: + # @param model_tpm_limit [Hash{Symbol=>Integer}, nil] Body param # - # @param max_budget [Float, nil] Body param: + # @param models [Array] Body param # - # @param members [Array] Body param: + # @param object_permission [Hanzoai::Models::TeamCreateParams::ObjectPermission, nil] Body param # - # @param members_with_roles [Array] Body param: + # @param organization_id [String, nil] Body param # - # @param metadata [Object, nil] Body param: + # @param prompts [Array, nil] Body param # - # @param model_aliases [Object, nil] Body param: + # @param router_settings [Hash{Symbol=>Object}, nil] Body param # - # @param models [Array] Body param: + # @param rpm_limit [Integer, nil] Body param # - # @param organization_id [String, nil] Body param: + # @param rpm_limit_type [Symbol, Hanzoai::Models::TeamCreateParams::RpmLimitType, nil] Body param # - # @param rpm_limit [Integer, nil] Body param: + # @param secret_manager_settings [Hash{Symbol=>Object}, nil] Body param # - # @param tags [Array, nil] Body param: + # @param tags [Array, nil] Body param # - # @param team_alias [String, nil] Body param: + # @param team_alias [String, nil] Body param # - # @param team_id [String, nil] Body param: + # @param team_id [String, nil] Body param # - # @param tpm_limit [Integer, nil] Body param: + # @param team_member_budget [Float, nil] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param team_member_key_duration [String, nil] Body param + # + # @param team_member_permissions [Array, nil] Body param + # + # @param team_member_rpm_limit [Integer, nil] Body param + # + # @param team_member_tpm_limit [Integer, nil] Body param + # + # @param tpm_limit [Integer, nil] Body param + # + # @param tpm_limit_type [Symbol, Hanzoai::Models::TeamCreateParams::TpmLimitType, nil] Body param + # + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -122,7 +198,7 @@ class Team # @see Hanzoai::Models::TeamCreateParams def create(params = {}) parsed, options = Hanzoai::TeamCreateParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "team/new", @@ -144,9 +220,12 @@ def create(params = {}) # # - team_id: str - The team id of the user. Required param. # - team_alias: Optional[str] - User defined team alias + # - team_member_permissions: Optional[List[str]] - A list of routes that non-admin + # team members can access. example: ["/key/generate", "/key/update", + # "/key/delete"] # - metadata: Optional[dict] - Metadata for team, store information for team. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } + # Example metadata = {"team": "core-infra", "app": "app2", "email": + # "ishaan@berri.ai" } # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - # all keys with this team_id will have at max this TPM limit # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - @@ -154,23 +233,57 @@ def create(params = {}) # - max_budget: Optional[float] - The maximum budget allocated to the team - all # keys for this team_id will have at max this max_budget # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # [here](https://docs.litellm.ai/docs/proxy/team_budgets) # - models: Optional[list] - A list of models associated with the team - all keys # for this team_id will have at most, these models. If empty, assumes all models # are allowed. + # - prompts: Optional[List[str]] - List of prompts that the team is allowed to + # use. # - blocked: bool - Flag indicating if the team is blocked or not - will stop all # calls from keys with this team_id. # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). # - organization_id: Optional[str] - The organization id of the team. Default is # None. Create via `/organization/new`. # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # [Docs](https://docs.litellm.ai/docs/proxy/team_based_routing#create-team-with-model-alias) # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Example - update team TPM - # Limit + # [Docs](https://docs.litellm.ai/docs/proxy/guardrails) + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - team-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - team_member_budget: Optional[float] - The maximum budget allocated to an + # individual team member. + # - team_member_budget_duration: Optional[str] - The duration of the budget for + # the team member. Doc [here](https://docs.litellm.ai/docs/proxy/team_budgets) + # - team_member_rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for + # individual team members. + # - team_member_tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for + # individual team members. + # - team_member_key_duration: Optional[str] - The duration for a team member's + # key. e.g. "1d", "1w", "1mo" + # - allowed_passthrough_routes: Optional[List[str]] - List of allowed pass through + # routes for the team. + # - model_rpm_limit: Optional[Dict[str, int]] - The RPM (Requests Per Minute) + # limit per model for this team. Example: {"gpt-4": 100, "gpt-3.5-turbo": 200} + # - model_tpm_limit: Optional[Dict[str, int]] - The TPM (Tokens Per Minute) limit + # per model for this team. Example: {"gpt-4": 10000, "gpt-3.5-turbo": 20000} + # Example - update team TPM Limit + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - secret_manager_settings: Optional[dict] - Secret manager settings for the + # team. [Docs](https://docs.litellm.ai/docs/secret_managers/overview) + # - router_settings: Optional[UpdateRouterConfig] - team-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. # # ``` # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ @@ -188,35 +301,61 @@ def create(params = {}) # }' # ``` # - # @overload update(team_id:, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, models: nil, organization_id: nil, rpm_limit: nil, tags: nil, team_alias: nil, tpm_limit: nil, llm_changed_by: nil, request_options: {}) + # @overload update(team_id:, allowed_passthrough_routes: nil, allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organization_id: nil, prompts: nil, router_settings: nil, rpm_limit: nil, secret_manager_settings: nil, tags: nil, team_alias: nil, team_member_budget: nil, team_member_budget_duration: nil, team_member_key_duration: nil, team_member_rpm_limit: nil, team_member_tpm_limit: nil, tpm_limit: nil, litellm_changed_by: nil, request_options: {}) + # + # @param team_id [String] Body param + # + # @param allowed_passthrough_routes [Array, nil] Body param + # + # @param allowed_vector_store_indexes [Array, nil] Body param + # + # @param blocked [Boolean, nil] Body param + # + # @param budget_duration [String, nil] Body param # - # @param team_id [String] Body param: + # @param guardrails [Array, nil] Body param # - # @param blocked [Boolean, nil] Body param: + # @param max_budget [Float, nil] Body param # - # @param budget_duration [String, nil] Body param: + # @param metadata [Hash{Symbol=>Object}, nil] Body param # - # @param guardrails [Array, nil] Body param: + # @param model_aliases [Hash{Symbol=>Object}, nil] Body param # - # @param max_budget [Float, nil] Body param: + # @param model_rpm_limit [Hash{Symbol=>Integer}, nil] Body param # - # @param metadata [Object, nil] Body param: + # @param model_tpm_limit [Hash{Symbol=>Integer}, nil] Body param # - # @param model_aliases [Object, nil] Body param: + # @param models [Array, nil] Body param # - # @param models [Array, nil] Body param: + # @param object_permission [Hanzoai::Models::TeamUpdateParams::ObjectPermission, nil] Body param # - # @param organization_id [String, nil] Body param: + # @param organization_id [String, nil] Body param # - # @param rpm_limit [Integer, nil] Body param: + # @param prompts [Array, nil] Body param # - # @param tags [Array, nil] Body param: + # @param router_settings [Hash{Symbol=>Object}, nil] Body param # - # @param team_alias [String, nil] Body param: + # @param rpm_limit [Integer, nil] Body param # - # @param tpm_limit [Integer, nil] Body param: + # @param secret_manager_settings [Hash{Symbol=>Object}, nil] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param tags [Array, nil] Body param + # + # @param team_alias [String, nil] Body param + # + # @param team_member_budget [Float, nil] Body param + # + # @param team_member_budget_duration [String, nil] Body param + # + # @param team_member_key_duration [String, nil] Body param + # + # @param team_member_rpm_limit [Integer, nil] Body param + # + # @param team_member_tpm_limit [Integer, nil] Body param + # + # @param tpm_limit [Integer, nil] Body param + # + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -225,7 +364,7 @@ def create(params = {}) # @see Hanzoai::Models::TeamUpdateParams def update(params) parsed, options = Hanzoai::TeamUpdateParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "team/update", @@ -286,11 +425,11 @@ def list(params = {}) # }' # ``` # - # @overload delete(team_ids:, llm_changed_by: nil, request_options: {}) + # @overload delete(team_ids:, litellm_changed_by: nil, request_options: {}) # - # @param team_ids [Array] Body param: + # @param team_ids [Array] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -299,7 +438,7 @@ def list(params = {}) # @see Hanzoai::Models::TeamDeleteParams def delete(params) parsed, options = Hanzoai::TeamDeleteParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "team/delete", @@ -310,7 +449,8 @@ def delete(params) ) end - # [BETA] + # Some parameter documentations has been truncated, see + # {Hanzoai::Models::TeamAddMemberParams} for more details. # # Add new members (either via user_email or user_id) to a team # @@ -320,15 +460,18 @@ def delete(params) # # ``` # - # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "dev247652@hanzo.ai"}}' + # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "krrish247652@berri.ai"}}' # # ``` # # @overload add_member(member:, team_id:, max_budget_in_team: nil, request_options: {}) # - # @param member [Array, Hanzoai::Models::Member] - # @param team_id [String] - # @param max_budget_in_team [Float, nil] + # @param member [Array, Hanzoai::Models::Member] Member object or list of member objects to add. Each member must include either + # + # @param team_id [String] The ID of the team to add the member to + # + # @param max_budget_in_team [Float, nil] Maximum budget allocated to this user within the team. If not set, user has unli + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::TeamAddMemberResponse] @@ -444,7 +587,7 @@ def list_available(params = {}) # -H 'Content-Type: application/json' # -d '{ # "team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", - # "user_id": "dev247652@hanzo.ai" + # "user_id": "krrish247652@berri.ai" # }' # ``` # @@ -536,13 +679,22 @@ def unblock(params) # # Update team member budgets and team member role # - # @overload update_member(team_id:, max_budget_in_team: nil, role: nil, user_email: nil, user_id: nil, request_options: {}) + # @overload update_member(team_id:, max_budget_in_team: nil, role: nil, rpm_limit: nil, tpm_limit: nil, user_email: nil, user_id: nil, request_options: {}) # # @param team_id [String] + # # @param max_budget_in_team [Float, nil] + # # @param role [Symbol, Hanzoai::Models::TeamUpdateMemberParams::Role, nil] + # + # @param rpm_limit [Integer, nil] Requests per minute limit for this team member + # + # @param tpm_limit [Integer, nil] Tokens per minute limit for this team member + # # @param user_email [String, nil] + # # @param user_id [String, nil] + # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::TeamUpdateMemberResponse] diff --git a/lib/hanzoai/resources/team/callback.rb b/lib/hanzoai/resources/team/callback.rb index 5209626e..9db395ea 100644 --- a/lib/hanzoai/resources/team/callback.rb +++ b/lib/hanzoai/resources/team/callback.rb @@ -85,17 +85,17 @@ def retrieve(team_id, params = {}) # all LLM calls will be logged to langfuse using the public key pk-lf-xxxx1 and # the secret key sk-xxxxx # - # @overload add(team_id, callback_name:, callback_vars:, callback_type: nil, llm_changed_by: nil, request_options: {}) + # @overload add(team_id, callback_name:, callback_vars:, callback_type: nil, litellm_changed_by: nil, request_options: {}) # - # @param team_id [String] Path param: + # @param team_id [String] Path param # - # @param callback_name [String] Body param: + # @param callback_name [String] Body param # - # @param callback_vars [Hash{Symbol=>String}] Body param: + # @param callback_vars [Hash{Symbol=>String}] Body param # - # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] Body param: + # @param callback_type [Symbol, Hanzoai::Models::Team::CallbackAddParams::CallbackType, nil] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -104,7 +104,7 @@ def retrieve(team_id, params = {}) # @see Hanzoai::Models::Team::CallbackAddParams def add(team_id, params) parsed, options = Hanzoai::Team::CallbackAddParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: ["team/%1$s/callback", team_id], diff --git a/lib/hanzoai/resources/user.rb b/lib/hanzoai/resources/user.rb index 43aa96a5..2dd4a2ef 100644 --- a/lib/hanzoai/resources/user.rb +++ b/lib/hanzoai/resources/user.rb @@ -4,8 +4,8 @@ module Hanzoai module Resources class User # Use this to create a new INTERNAL user with a budget. Internal Users can access - # LLM Admin UI to make keys, request access to models. This creates a new user and - # generates a new api key for the new user. The new api key is returned. + # LiteLLM Admin UI to make keys, request access to models. This creates a new user + # and generates a new api key for the new user. The new api key is returned. # # Returns user id, budget + new key. # @@ -21,7 +21,7 @@ class User # - user_role: Optional[str] - Specify a user role - "proxy_admin", # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` + # `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` # - max_budget: Optional[float] - Specify max budget for a given user. # - budget_duration: Optional[str] - Budget is reset at the end of specified # duration. If not set, budget is never reset. You can set duration as seconds @@ -36,29 +36,29 @@ class User # - auto_create_key: bool - Default=True. Flag used for returning a key as part of # the /user/new response # - aliases: Optional[dict] - Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) # - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. # - allowed_cache_controls: Optional[list] - List of allowed cache control values. # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- + # https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- # - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. # - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active # guardrails for the user # - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, # eg. turning off pii masking. # - metadata: Optional[dict] - Metadata for user, store information for user. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } + # Example metadata = {"team": "core-infra", "app": "app2", "email": + # "ishaan@berri.ai" } # - max_parallel_requests: Optional[int] - Rate limit a user based on the number # of parallel requests. Raises 429 error, if user's parallel requests > x. # - soft_budget: Optional[float] - Get alerts when user crosses given budget, # doesn't block requests. # - model_max_budget: Optional[dict] - Model-specific max budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) # - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) # - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) # - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated # by proxy whenever user is used. You can set duration as seconds ("30s"), # minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). @@ -68,9 +68,15 @@ class User # Default is None. # - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. # Default is None. - # - # Returns: - # + # - sso_user_id: Optional[str] - The id of the user in the SSO provider. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - internal + # user-specific object permission. Example - {"vector_stores": + # ["vector_store_1", "vector_store_2"]}. IF null or {} then no object + # permission. + # - prompts: Optional[List[str]] - List of allowed prompts for the user. If + # specified, the user will only be able to use these specific prompts. + # - organizations: List[str] - List of organization id's the user is a member of + # Returns: # - key: (str) The generated api key for the user # - expires: (datetime) Datetime object for when key expires. # - user_id: (str) Unique user id - used for tracking spend across multiple keys @@ -86,30 +92,34 @@ class User # }' # ``` # - # @overload create(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, permissions: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) + # @overload create(aliases: nil, allowed_cache_controls: nil, auto_create_key: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, organizations: nil, permissions: nil, prompts: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, sso_user_id: nil, team_id: nil, teams: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) # - # @param aliases [Object, nil] + # @param aliases [Hash{Symbol=>Object}, nil] # @param allowed_cache_controls [Array, nil] # @param auto_create_key [Boolean] # @param blocked [Boolean, nil] # @param budget_duration [String, nil] - # @param config [Object, nil] + # @param config [Hash{Symbol=>Object}, nil] # @param duration [String, nil] # @param guardrails [Array, nil] # @param key_alias [String, nil] # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] # @param models [Array, nil] - # @param permissions [Object, nil] + # @param object_permission [Hanzoai::Models::UserCreateParams::ObjectPermission, nil] + # @param organizations [Array, nil] + # @param permissions [Hash{Symbol=>Object}, nil] + # @param prompts [Array, nil] # @param rpm_limit [Integer, nil] # @param send_invite_email [Boolean, nil] # @param spend [Float, nil] + # @param sso_user_id [String, nil] # @param team_id [String, nil] - # @param teams [Array, nil] + # @param teams [Array, Array, nil] # @param tpm_limit [Integer, nil] # @param user_alias [String, nil] # @param user_email [String, nil] @@ -135,7 +145,7 @@ def create(params = {}) # # ``` # curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", + # "user_id": "test-litellm-user-4", # "user_role": "proxy_admin_viewer" # }' # ``` @@ -149,7 +159,7 @@ def create(params = {}) # user_role: Optional[str] - Specify a user role - "proxy_admin", # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - max_budget: + # `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` - max_budget: # Optional[float] - Specify max budget for a given user. - budget_duration: # Optional[str] - Budget is reset at the end of specified duration. If not set, # budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), @@ -160,57 +170,64 @@ def create(params = {}) # (Requests per minute) - auto_create_key: bool - Default=True. Flag used for # returning a key as part of the /user/new response - aliases: Optional[dict] - # Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: - # Optional[dict] - [DEPRECATED PARAM] User-specific config. - + # [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) - + # config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - # allowed_cache_controls: Optional[list] - List of allowed cache control values. # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - + # https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- - # blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - # guardrails: Optional[List[str]] - [Not Implemented Yet] List of active # guardrails for the user - permissions: Optional[dict] - [Not Implemented Yet] # User-specific permissions, eg. turning off pii masking. - metadata: # Optional[dict] - Metadata for user, store information for user. Example metadata - # = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" } - + # = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - # max_parallel_requests: Optional[int] - Rate limit a user based on the number of # parallel requests. Raises 429 error, if user's parallel requests > x. - # soft_budget: Optional[float] - Get alerts when user crosses given budget, # doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max # budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - # model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by # proxy whenever user is used. You can set duration as seconds ("30s"), minutes # ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - team_id: Optional[str] - # [DEPRECATED PARAM] The team id of the user. Default is None. - duration: # Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT - # IMPLEMENTED]. + # IMPLEMENTED]. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - + # internal user-specific object permission. Example - {"vector_stores": + # ["vector_store_1", "vector_store_2"]}. IF null or {} then no object + # permission. - prompts: Optional[List[str]] - List of allowed prompts for the + # user. If specified, the user will only be able to use these specific prompts. # - # @overload update(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, password: nil, permissions: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) + # @overload update(aliases: nil, allowed_cache_controls: nil, blocked: nil, budget_duration: nil, config: nil, duration: nil, guardrails: nil, key_alias: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_rpm_limit: nil, model_tpm_limit: nil, models: nil, object_permission: nil, password: nil, permissions: nil, prompts: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, user_alias: nil, user_email: nil, user_id: nil, user_role: nil, request_options: {}) # - # @param aliases [Object, nil] + # @param aliases [Hash{Symbol=>Object}, nil] # @param allowed_cache_controls [Array, nil] # @param blocked [Boolean, nil] # @param budget_duration [String, nil] - # @param config [Object, nil] + # @param config [Hash{Symbol=>Object}, nil] # @param duration [String, nil] # @param guardrails [Array, nil] # @param key_alias [String, nil] # @param max_budget [Float, nil] # @param max_parallel_requests [Integer, nil] - # @param metadata [Object, nil] - # @param model_max_budget [Object, nil] - # @param model_rpm_limit [Object, nil] - # @param model_tpm_limit [Object, nil] + # @param metadata [Hash{Symbol=>Object}, nil] + # @param model_max_budget [Hash{Symbol=>Object}, nil] + # @param model_rpm_limit [Hash{Symbol=>Object}, nil] + # @param model_tpm_limit [Hash{Symbol=>Object}, nil] # @param models [Array, nil] + # @param object_permission [Hanzoai::Models::UserUpdateParams::ObjectPermission, nil] # @param password [String, nil] - # @param permissions [Object, nil] + # @param permissions [Hash{Symbol=>Object}, nil] + # @param prompts [Array, nil] # @param rpm_limit [Integer, nil] # @param spend [Float, nil] # @param team_id [String, nil] # @param tpm_limit [Integer, nil] + # @param user_alias [String, nil] # @param user_email [String, nil] # @param user_id [String, nil] # @param user_role [Symbol, Hanzoai::Models::UserUpdateParams::UserRole, nil] @@ -230,50 +247,6 @@ def update(params = {}) ) end - # Get a paginated list of users, optionally filtered by role. - # - # Used by the UI to populate the user lists. - # - # Parameters: role: Optional[str] Filter users by role. Can be one of: - - # proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer - # user_ids: Optional[str] Get list of users by user_ids. Comma separated list of - # user_ids. page: int The page number to return page_size: int The number of items - # per page - # - # Currently - admin-only endpoint. - # - # Example curl: - # - # ``` - # http://0.0.0.0:4000/user/list?user_ids=default_user_id,693c1a4a-1cc0-4c7c-afe8-b5d2c8d52e17 - # ``` - # - # @overload list(page: nil, page_size: nil, role: nil, user_ids: nil, request_options: {}) - # - # @param page [Integer] Page number - # - # @param page_size [Integer] Number of items per page - # - # @param role [String, nil] Filter users by role - # - # @param user_ids [String, nil] Get list of users by user_ids - # - # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] - # - # @return [Object] - # - # @see Hanzoai::Models::UserListParams - def list(params = {}) - parsed, options = Hanzoai::UserListParams.dump_request(params) - @client.request( - method: :get, - path: "user/get_users", - query: parsed, - model: Hanzoai::Internal::Type::Unknown, - options: options - ) - end - # Some parameter documentations has been truncated, see # {Hanzoai::Models::UserDeleteParams} for more details. # @@ -292,11 +265,11 @@ def list(params = {}) # # - user_ids: List[str] - The list of user id's to be deleted. # - # @overload delete(user_ids:, llm_changed_by: nil, request_options: {}) + # @overload delete(user_ids:, litellm_changed_by: nil, request_options: {}) # - # @param user_ids [Array] Body param: + # @param user_ids [Array] Body param # - # @param llm_changed_by [String] Header param: The llm-changed-by header enables tracking of actions performed by + # @param litellm_changed_by [String] Header param: The litellm-changed-by header enables tracking of actions performe # # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -305,7 +278,7 @@ def list(params = {}) # @see Hanzoai::Models::UserDeleteParams def delete(params) parsed, options = Hanzoai::UserDeleteParams.dump_request(params) - header_params = {llm_changed_by: "llm-changed-by"} + header_params = {litellm_changed_by: "litellm-changed-by"} @client.request( method: :post, path: "user/delete", @@ -323,7 +296,7 @@ def delete(params) # Example request # # ``` - # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' + # curl -X GET 'http://localhost:4000/user/info?user_id=krrish7%40berri.ai' --header 'Authorization: Bearer sk-1234' # ``` # # @overload retrieve_info(user_id: nil, request_options: {}) diff --git a/lib/hanzoai/resources/utils.rb b/lib/hanzoai/resources/utils.rb index 2b49befa..4cfaa4f3 100644 --- a/lib/hanzoai/resources/utils.rb +++ b/lib/hanzoai/resources/utils.rb @@ -3,7 +3,7 @@ module Hanzoai module Resources class Utils - # Returns supported openai params for a given llm model name + # Returns supported openai params for a given litellm model name # # e.g. `gpt-4` vs `gpt-3.5-turbo` # @@ -32,13 +32,24 @@ def get_supported_openai_params(params) ) end - # Token Counter + # Args: request: TokenCountRequest call_endpoint: bool - When set to "True" it + # will call the token counting endpoint - e.g Anthropic or Google AI Studio Token + # Counting APIs. # - # @overload token_counter(model:, messages: nil, prompt: nil, request_options: {}) + # Returns: TokenCountResponse + # + # @overload token_counter(model:, call_endpoint: nil, contents: nil, messages: nil, prompt: nil, request_options: {}) + # + # @param model [String] Body param + # + # @param call_endpoint [Boolean] Query param + # + # @param contents [ArrayObject}>, nil] Body param + # + # @param messages [ArrayObject}>, nil] Body param + # + # @param prompt [String, nil] Body param # - # @param model [String] - # @param messages [Array, nil] - # @param prompt [String, nil] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::UtilTokenCounterResponse] @@ -46,10 +57,12 @@ def get_supported_openai_params(params) # @see Hanzoai::Models::UtilTokenCounterParams def token_counter(params) parsed, options = Hanzoai::UtilTokenCounterParams.dump_request(params) + query_params = [:call_endpoint] @client.request( method: :post, path: "utils/token_counter", - body: parsed, + query: parsed.slice(*query_params), + body: parsed.except(*query_params), model: Hanzoai::Models::UtilTokenCounterResponse, options: options ) @@ -60,7 +73,7 @@ def token_counter(params) # @overload transform_request(call_type:, request_body:, request_options: {}) # # @param call_type [Symbol, Hanzoai::Models::UtilTransformRequestParams::CallType] - # @param request_body [Object] + # @param request_body [Hash{Symbol=>Object}] # @param request_options [Hanzoai::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [Hanzoai::Models::UtilTransformRequestResponse] diff --git a/lib/hanzoai/resources/vertex_ai.rb b/lib/hanzoai/resources/vertex_ai.rb index a9fc60ad..75da9489 100644 --- a/lib/hanzoai/resources/vertex_ai.rb +++ b/lib/hanzoai/resources/vertex_ai.rb @@ -3,9 +3,9 @@ module Hanzoai module Resources class VertexAI - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) # # @overload create(endpoint, request_options: {}) # @@ -24,9 +24,9 @@ def create(endpoint, params = {}) ) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) # # @overload retrieve(endpoint, request_options: {}) # @@ -45,9 +45,9 @@ def retrieve(endpoint, params = {}) ) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) # # @overload update(endpoint, request_options: {}) # @@ -66,9 +66,9 @@ def update(endpoint, params = {}) ) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) # # @overload delete(endpoint, request_options: {}) # @@ -87,9 +87,9 @@ def delete(endpoint, params = {}) ) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) # # @overload patch(endpoint, request_options: {}) # diff --git a/manifest.yaml b/manifest.yaml index 7853f4ab..a1fd74a9 100644 --- a/manifest.yaml +++ b/manifest.yaml @@ -1,5 +1,6 @@ dependencies: - English + - base64 - cgi - date - erb diff --git a/rbi/hanzoai/models.rbi b/rbi/hanzoai/models.rbi index 77b5eb8b..18667320 100644 --- a/rbi/hanzoai/models.rbi +++ b/rbi/hanzoai/models.rbi @@ -88,6 +88,8 @@ module Hanzoai BudgetSettingsParams = Hanzoai::Models::BudgetSettingsParams + BudgetTable = Hanzoai::Models::BudgetTable + BudgetUpdateParams = Hanzoai::Models::BudgetUpdateParams Cache = Hanzoai::Models::Cache @@ -116,9 +118,6 @@ module Hanzoai Config = Hanzoai::Models::Config - ConfigurableClientsideParamsCustomAuth = - Hanzoai::Models::ConfigurableClientsideParamsCustomAuth - CredentialCreateParams = Hanzoai::Models::CredentialCreateParams CredentialDeleteParams = Hanzoai::Models::CredentialDeleteParams @@ -233,6 +232,8 @@ module Hanzoai LangfuseUpdateParams = Hanzoai::Models::LangfuseUpdateParams + LiteLlmEndUserTable = Hanzoai::Models::LiteLlmEndUserTable + Member = Hanzoai::Models::Member Model = Hanzoai::Models::Model @@ -274,6 +275,10 @@ module Hanzoai OrganizationListParams = Hanzoai::Models::OrganizationListParams + OrganizationMembershipTable = Hanzoai::Models::OrganizationMembershipTable + + OrganizationTableWithMembers = Hanzoai::Models::OrganizationTableWithMembers + OrganizationUpdateMemberParams = Hanzoai::Models::OrganizationUpdateMemberParams @@ -345,10 +350,10 @@ module Hanzoai UserDeleteParams = Hanzoai::Models::UserDeleteParams - UserListParams = Hanzoai::Models::UserListParams - UserRetrieveInfoParams = Hanzoai::Models::UserRetrieveInfoParams + UserRoles = Hanzoai::Models::UserRoles + UserUpdateParams = Hanzoai::Models::UserUpdateParams UtilGetSupportedOpenAIParamsParams = diff --git a/rbi/hanzoai/models/batch_list_params.rbi b/rbi/hanzoai/models/batch_list_params.rbi index 4c536632..7824ba2a 100644 --- a/rbi/hanzoai/models/batch_list_params.rbi +++ b/rbi/hanzoai/models/batch_list_params.rbi @@ -20,15 +20,25 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :provider + sig { returns(T.nilable(String)) } + attr_accessor :target_model_names + sig do params( after: T.nilable(String), limit: T.nilable(Integer), provider: T.nilable(String), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(after: nil, limit: nil, provider: nil, request_options: {}) + def self.new( + after: nil, + limit: nil, + provider: nil, + target_model_names: nil, + request_options: {} + ) end sig do @@ -37,6 +47,7 @@ module Hanzoai after: T.nilable(String), limit: T.nilable(Integer), provider: T.nilable(String), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/batch_list_with_provider_params.rbi b/rbi/hanzoai/models/batch_list_with_provider_params.rbi index 24d197ed..989cebe8 100644 --- a/rbi/hanzoai/models/batch_list_with_provider_params.rbi +++ b/rbi/hanzoai/models/batch_list_with_provider_params.rbi @@ -20,14 +20,23 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :limit + sig { returns(T.nilable(String)) } + attr_accessor :target_model_names + sig do params( after: T.nilable(String), limit: T.nilable(Integer), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(after: nil, limit: nil, request_options: {}) + def self.new( + after: nil, + limit: nil, + target_model_names: nil, + request_options: {} + ) end sig do @@ -35,6 +44,7 @@ module Hanzoai { after: T.nilable(String), limit: T.nilable(Integer), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/budget_new.rbi b/rbi/hanzoai/models/budget_new.rbi index 0c95a0a8..fc008be9 100644 --- a/rbi/hanzoai/models/budget_new.rbi +++ b/rbi/hanzoai/models/budget_new.rbi @@ -14,6 +14,10 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_id + # Datetime when the budget is reset + sig { returns(T.nilable(Time)) } + attr_accessor :budget_reset_at + # Requests will fail if this budget (in USD) is exceeded. sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -45,6 +49,7 @@ module Hanzoai params( budget_duration: T.nilable(String), budget_id: T.nilable(String), + budget_reset_at: T.nilable(Time), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), model_max_budget: @@ -61,6 +66,8 @@ module Hanzoai budget_duration: nil, # The unique budget id. budget_id: nil, + # Datetime when the budget is reset + budget_reset_at: nil, # Requests will fail if this budget (in USD) is exceeded. max_budget: nil, # Max concurrent requests allowed for this budget id. @@ -82,6 +89,7 @@ module Hanzoai { budget_duration: T.nilable(String), budget_id: T.nilable(String), + budget_reset_at: T.nilable(Time), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), model_max_budget: diff --git a/rbi/hanzoai/models/budget_table.rbi b/rbi/hanzoai/models/budget_table.rbi new file mode 100644 index 00000000..30b17549 --- /dev/null +++ b/rbi/hanzoai/models/budget_table.rbi @@ -0,0 +1,76 @@ +# typed: strong + +module Hanzoai + module Models + class BudgetTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(Hanzoai::BudgetTable, Hanzoai::Internal::AnyHash) } + + sig { returns(T.nilable(String)) } + attr_accessor :budget_duration + + sig { returns(T.nilable(String)) } + attr_accessor :budget_id + + sig { returns(T.nilable(Float)) } + attr_accessor :max_budget + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_parallel_requests + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_max_budget + + sig { returns(T.nilable(Integer)) } + attr_accessor :rpm_limit + + sig { returns(T.nilable(Float)) } + attr_accessor :soft_budget + + sig { returns(T.nilable(Integer)) } + attr_accessor :tpm_limit + + # Represents user-controllable params for a LiteLLM_BudgetTable record + sig do + params( + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + ).returns(T.attached_class) + end + def self.new( + budget_duration: nil, + budget_id: nil, + max_budget: nil, + max_parallel_requests: nil, + model_max_budget: nil, + rpm_limit: nil, + soft_budget: nil, + tpm_limit: nil + ) + end + + sig do + override.returns( + { + budget_duration: T.nilable(String), + budget_id: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + rpm_limit: T.nilable(Integer), + soft_budget: T.nilable(Float), + tpm_limit: T.nilable(Integer) + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/hanzoai/models/cache_ping_response.rbi b/rbi/hanzoai/models/cache_ping_response.rbi index b0a0048e..8fc2742d 100644 --- a/rbi/hanzoai/models/cache_ping_response.rbi +++ b/rbi/hanzoai/models/cache_ping_response.rbi @@ -14,11 +14,11 @@ module Hanzoai sig { returns(String) } attr_accessor :status - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :health_check_cache_params sig { returns(T.nilable(String)) } - attr_accessor :llm_cache_params + attr_accessor :litellm_cache_params sig { returns(T.nilable(T::Boolean)) } attr_accessor :ping_response @@ -30,8 +30,8 @@ module Hanzoai params( cache_type: String, status: String, - health_check_cache_params: T.nilable(T.anything), - llm_cache_params: T.nilable(String), + health_check_cache_params: T.nilable(T::Hash[Symbol, T.anything]), + litellm_cache_params: T.nilable(String), ping_response: T.nilable(T::Boolean), set_cache_response: T.nilable(String) ).returns(T.attached_class) @@ -40,7 +40,7 @@ module Hanzoai cache_type:, status:, health_check_cache_params: nil, - llm_cache_params: nil, + litellm_cache_params: nil, ping_response: nil, set_cache_response: nil ) @@ -51,8 +51,8 @@ module Hanzoai { cache_type: String, status: String, - health_check_cache_params: T.nilable(T.anything), - llm_cache_params: T.nilable(String), + health_check_cache_params: T.nilable(T::Hash[Symbol, T.anything]), + litellm_cache_params: T.nilable(String), ping_response: T.nilable(T::Boolean), set_cache_response: T.nilable(String) } diff --git a/rbi/hanzoai/models/chat/completion_create_params.rbi b/rbi/hanzoai/models/chat/completion_create_params.rbi index 7168ace9..ffa38d27 100644 --- a/rbi/hanzoai/models/chat/completion_create_params.rbi +++ b/rbi/hanzoai/models/chat/completion_create_params.rbi @@ -15,28 +15,2626 @@ module Hanzoai ) end - sig { returns(T.nilable(String)) } + sig do + returns( + T::Array[ + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage + ) + ] + ) + end + attr_accessor :messages + + sig { returns(String) } attr_accessor :model + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :caching + + sig { returns(T.nilable(T::Hash[Symbol, String])) } + attr_accessor :context_window_fallback_dict + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :frequency_penalty + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::FunctionCall::Variants + ) + ) + end + attr_accessor :function_call + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :functions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :guardrails + + sig { returns(T.nilable(T::Hash[Symbol, Float])) } + attr_accessor :logit_bias + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :logprobs + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_tokens + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :metadata + + sig { returns(T.nilable(Integer)) } + attr_accessor :n + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :parallel_tool_calls + + sig { returns(T.nilable(Float)) } + attr_accessor :presence_penalty + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :response_format + + sig { returns(T.nilable(Integer)) } + attr_accessor :seed + + sig { returns(T.nilable(String)) } + attr_accessor :service_tier + + sig do + returns( + T.nilable(Hanzoai::Chat::CompletionCreateParams::Stop::Variants) + ) + end + attr_accessor :stop + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :stream + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :stream_options + + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::ToolChoice::Variants + ) + ) + end + attr_accessor :tool_choice + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :tools + + sig { returns(T.nilable(Integer)) } + attr_accessor :top_logprobs + + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + sig { returns(T.nilable(String)) } + attr_accessor :user + sig do params( - model: T.nilable(String), + messages: + T::Array[ + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::OrHash + ) + ], + model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable(Hanzoai::Chat::CompletionCreateParams::Stop::Variants), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(model: nil, request_options: {}) + def self.new( + messages:, + model:, + caching: nil, + context_window_fallback_dict: nil, + fallbacks: nil, + frequency_penalty: nil, + function_call: nil, + functions: nil, + guardrails: nil, + logit_bias: nil, + logprobs: nil, + max_tokens: nil, + metadata: nil, + n: nil, + num_retries: nil, + parallel_tool_calls: nil, + presence_penalty: nil, + response_format: nil, + seed: nil, + service_tier: nil, + stop: nil, + stream: nil, + stream_options: nil, + temperature: nil, + tool_choice: nil, + tools: nil, + top_logprobs: nil, + top_p: nil, + user: nil, + request_options: {} + ) end sig do override.returns( { - model: T.nilable(String), + messages: + T::Array[ + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage + ) + ], + model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Stop::Variants + ), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), request_options: Hanzoai::RequestOptions } ) end def to_hash end + + module Message + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage + ) + end + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::Variants, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl::OrHash, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, cache_control: nil, role: :user) + end + + sig do + override.returns( + { + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::Variants + ] + ) + end + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject + ) + end + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ) + ) + end + attr_accessor :image_url + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + image_url: + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject::OrHash + ), + type: Symbol + ).returns(T.attached_class) + end + def self.new(image_url:, type: :image_url) + end + + sig do + override.returns( + { + image_url: + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ), + type: Symbol + } + ) + end + def to_hash + end + + module ImageURL + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ) + end + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_reader :detail + + sig { params(detail: String).void } + attr_writer :detail + + sig { returns(T.nilable(String)) } + attr_reader :format_ + + sig { params(format_: String).void } + attr_writer :format_ + + sig do + params( + url: String, + detail: String, + format_: String + ).returns(T.attached_class) + end + def self.new(url:, detail: nil, format_: nil) + end + + sig do + override.returns( + { url: String, detail: String, format_: String } + ) + end + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::Variants + ] + ) + end + def self.variants + end + end + end + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio + ) + end + attr_reader :input_audio + + sig do + params( + input_audio: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::OrHash + ).void + end + attr_writer :input_audio + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + input_audio: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(input_audio:, type: :input_audio) + end + + sig do + override.returns( + { + input_audio: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: Symbol + } + ) + end + def to_hash + end + + class InputAudio < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :data + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + ) + end + attr_accessor :format_ + + sig do + params( + data: String, + format_: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + ).returns(T.attached_class) + end + def self.new(data:, format_:) + end + + sig do + override.returns( + { + data: String, + format_: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + } + ) + end + def to_hash + end + + module Format + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + WAV = + T.let( + :wav, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ) + MP3 = + T.let( + :mp3, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + ) + ) + end + attr_reader :citations + + sig do + params( + citations: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations::OrHash + ) + ).void + end + attr_writer :citations + + sig { returns(String) } + attr_accessor :context + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source + ) + end + attr_reader :source + + sig do + params( + source: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source::OrHash + ).void + end + attr_writer :source + + sig { returns(String) } + attr_accessor :title + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + citations: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations::OrHash + ), + context: String, + source: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source::OrHash, + title: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + citations:, + context:, + source:, + title:, + type: :document + ) + end + + sig do + override.returns( + { + citations: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + ), + context: String, + source: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: Symbol + } + ) + end + def to_hash + end + + class Citations < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T::Boolean) } + attr_accessor :enabled + + sig do + params(enabled: T::Boolean).returns(T.attached_class) + end + def self.new(enabled:) + end + + sig { override.returns({ enabled: T::Boolean }) } + def to_hash + end + end + + class Source < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :data + + sig { returns(String) } + attr_accessor :media_type + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + data: String, + media_type: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new(data:, media_type:, type: :text) + end + + sig do + override.returns( + { data: String, media_type: String, type: Symbol } + ) + end + def to_hash + end + end + end + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + ) + end + attr_accessor :video_url + + sig do + params( + video_url: + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject::OrHash + ), + type: Symbol + ).returns(T.attached_class) + end + def self.new(video_url:, type: :video_url) + end + + sig do + override.returns( + { + type: Symbol, + video_url: + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + } + ) + end + def to_hash + end + + module VideoURL + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + end + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_reader :detail + + sig { params(detail: String).void } + attr_writer :detail + + sig do + params(url: String, detail: String).returns( + T.attached_class + ) + end + def self.new(url:, detail: nil) + end + + sig { override.returns({ url: String, detail: String }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::Variants + ] + ) + end + def self.variants + end + end + end + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File + ) + end + attr_reader :file + + sig do + params( + file: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File::OrHash + ).void + end + attr_writer :file + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + file: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(file:, type: :file) + end + + sig do + override.returns( + { + file: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: Symbol + } + ) + end + def to_hash + end + + class File < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :file_data + + sig { params(file_data: String).void } + attr_writer :file_data + + sig { returns(T.nilable(String)) } + attr_reader :file_id + + sig { params(file_id: String).void } + attr_writer :file_id + + sig { returns(T.nilable(String)) } + attr_reader :filename + + sig { params(filename: String).void } + attr_writer :filename + + sig { returns(T.nilable(String)) } + attr_reader :format_ + + sig { params(format_: String).void } + attr_writer :format_ + + sig do + params( + file_data: String, + file_id: String, + filename: String, + format_: String + ).returns(T.attached_class) + end + def self.new( + file_data: nil, + file_id: nil, + filename: nil, + format_: nil + ) + end + + sig do + override.returns( + { + file_data: String, + file_id: String, + filename: String, + format_: String + } + ) + end + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::Variants + ] + ) + end + def self.variants + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + union: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::Variants + ) + ) + end + attr_accessor :content + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall + ) + ) + end + attr_reader :function_call + + sig do + params( + function_call: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall::OrHash + ) + ).void + end + attr_writer :function_call + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(String)) } + attr_accessor :reasoning_content + + sig do + returns( + T.nilable( + T::Array[ + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ) + ) + end + attr_accessor :thinking_blocks + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall + ] + ) + ) + end + attr_accessor :tool_calls + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl::OrHash, + content: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::Variants + ), + function_call: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall::OrHash + ), + name: T.nilable(String), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::OrHash + ) + ] + ), + tool_calls: + T.nilable( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::OrHash + ] + ), + role: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + content: nil, + function_call: nil, + name: nil, + reasoning_content: nil, + thinking_blocks: nil, + tool_calls: nil, + role: :assistant + ) + end + + sig do + override.returns( + { + role: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::Variants + ), + function_call: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall + ), + name: T.nilable(String), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ), + tool_calls: + T.nilable( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall + ] + ) + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::Variants + ] + ) + end + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock + ) + end + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::Variants + ] + ) + end + def self.variants + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + union: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :arguments + + sig { params(arguments: String).void } + attr_writer :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + arguments: nil, + name: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :data + + sig { params(data: String).void } + attr_writer :data + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + data: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + data: nil, + type: :redacted_thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + data: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::Variants + ] + ) + end + def self.variants + end + end + + class ToolCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_accessor :id + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function + ) + end + attr_reader :function + + sig do + params( + function: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function::OrHash + ).void + end + attr_writer :function + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + id: T.nilable(String), + function: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(id:, function:, type: :function) + end + + sig do + override.returns( + { + id: T.nilable(String), + function: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: Symbol + } + ) + end + def to_hash + end + + class Function < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :arguments + + sig { params(arguments: String).void } + attr_writer :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + arguments: nil, + name: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + end + end + end + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig { returns(String) } + attr_accessor :tool_call_id + + sig do + params( + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::Variants, + tool_call_id: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, tool_call_id:, role: :tool) + end + + sig do + override.returns( + { + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::Variants, + role: Symbol, + tool_call_id: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + ] + ) + end + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig do + params( + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::Content::Variants, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl::OrHash, + name: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, cache_control: nil, name: nil, role: :system) + end + + sig do + override.returns( + { + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::Variants + ) + ) + end + attr_accessor :content + + sig { returns(String) } + attr_accessor :name + + sig { returns(Symbol) } + attr_accessor :role + + sig { returns(T.nilable(String)) } + attr_accessor :tool_call_id + + sig do + params( + content: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::Variants + ), + name: String, + tool_call_id: T.nilable(String), + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, name:, tool_call_id:, role: :function) + end + + sig do + override.returns( + { + content: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::Variants + ), + name: String, + role: Symbol, + tool_call_id: T.nilable(String) + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 + ] + ) + end + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig do + params( + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::Content::Variants, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl::OrHash, + name: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new( + content:, + cache_control: nil, + name: nil, + role: :developer + ) + end + + sig do + override.returns( + { + content: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[Hanzoai::Chat::CompletionCreateParams::Message::Variants] + ) + end + def self.variants + end + end + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::FunctionCall::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end + + module Stop + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[String]) } + + sig do + override.returns( + T::Array[Hanzoai::Chat::CompletionCreateParams::Stop::Variants] + ) + end + def self.variants + end + + StringArray = + T.let( + Hanzoai::Internal::Type::ArrayOf[String], + Hanzoai::Internal::Type::Converter + ) + end + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Chat::CompletionCreateParams::ToolChoice::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end end end end diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi index 227748c7..37bc8281 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_list_params.rbi @@ -18,19 +18,24 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :endpoint_id + sig { returns(T.nilable(String)) } + attr_accessor :team_id + sig do params( endpoint_id: T.nilable(String), + team_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(endpoint_id: nil, request_options: {}) + def self.new(endpoint_id: nil, team_id: nil, request_options: {}) end sig do override.returns( { endpoint_id: T.nilable(String), + team_id: T.nilable(String), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi b/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi index 276f9d42..514ea244 100644 --- a/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi +++ b/rbi/hanzoai/models/config/pass_through_endpoint_update_params.rbi @@ -3,7 +3,7 @@ module Hanzoai module Models module Config - class PassThroughEndpointUpdateParams < Hanzoai::Internal::Type::BaseModel + class PassThroughEndpointUpdateParams < Hanzoai::Models::Config::PassThroughGenericEndpoint extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters diff --git a/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi b/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi index 013d31b0..396e1e00 100644 --- a/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi +++ b/rbi/hanzoai/models/config/pass_through_generic_endpoint.rbi @@ -12,12 +12,7 @@ module Hanzoai ) end - # Key-value pairs of headers to be forwarded with the request. You can set any key - # value pair here and it will be forwarded to your target endpoint - sig { returns(T.anything) } - attr_accessor :headers - - # The route to be added to the LLM Proxy Server. + # The route to be added to the LiteLLM Proxy Server. sig { returns(String) } attr_accessor :path @@ -25,29 +20,191 @@ module Hanzoai sig { returns(String) } attr_accessor :target + # Optional unique identifier for the pass-through endpoint. If not provided, + # endpoints will be identified by path for backwards compatibility. + sig { returns(T.nilable(String)) } + attr_accessor :id + + # Whether authentication is required for the pass-through endpoint. If True, + # requests to the endpoint will require a valid LiteLLM API key. + sig { returns(T.nilable(T::Boolean)) } + attr_reader :auth + + sig { params(auth: T::Boolean).void } + attr_writer :auth + + # The USD cost per request to the target endpoint. This is used to calculate the + # cost of the request to the target endpoint. + sig { returns(T.nilable(Float)) } + attr_reader :cost_per_request + + sig { params(cost_per_request: Float).void } + attr_writer :cost_per_request + + # Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # names, values are optional settings for field targeting. When set, all + # org/team/key level guardrails will also execute. Defaults to None (no guardrails + # execute). sig do - params(headers: T.anything, path: String, target: String).returns( - T.attached_class + returns( + T.nilable( + T::Hash[ + Symbol, + T.nilable( + Hanzoai::Config::PassThroughGenericEndpoint::Guardrail + ) + ] + ) ) end + attr_accessor :guardrails + + # Key-value pairs of headers to be forwarded with the request. You can set any key + # value pair here and it will be forwarded to your target endpoint + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :headers + + sig { params(headers: T::Hash[Symbol, T.anything]).void } + attr_writer :headers + + # If True, requests to subpaths of the path will be forwarded to the target + # endpoint. For example, if the path is /bria and include_subpath is True, + # requests to /bria/v1/text-to-image/base/2.3 will be forwarded to the target + # endpoint. + sig { returns(T.nilable(T::Boolean)) } + attr_reader :include_subpath + + sig { params(include_subpath: T::Boolean).void } + attr_writer :include_subpath + + sig do + params( + path: String, + target: String, + id: T.nilable(String), + auth: T::Boolean, + cost_per_request: Float, + guardrails: + T.nilable( + T::Hash[ + Symbol, + T.nilable( + Hanzoai::Config::PassThroughGenericEndpoint::Guardrail::OrHash + ) + ] + ), + headers: T::Hash[Symbol, T.anything], + include_subpath: T::Boolean + ).returns(T.attached_class) + end def self.new( - # Key-value pairs of headers to be forwarded with the request. You can set any key - # value pair here and it will be forwarded to your target endpoint - headers:, - # The route to be added to the LLM Proxy Server. + # The route to be added to the LiteLLM Proxy Server. path:, # The URL to which requests for this path should be forwarded. - target: + target:, + # Optional unique identifier for the pass-through endpoint. If not provided, + # endpoints will be identified by path for backwards compatibility. + id: nil, + # Whether authentication is required for the pass-through endpoint. If True, + # requests to the endpoint will require a valid LiteLLM API key. + auth: nil, + # The USD cost per request to the target endpoint. This is used to calculate the + # cost of the request to the target endpoint. + cost_per_request: nil, + # Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # names, values are optional settings for field targeting. When set, all + # org/team/key level guardrails will also execute. Defaults to None (no guardrails + # execute). + guardrails: nil, + # Key-value pairs of headers to be forwarded with the request. You can set any key + # value pair here and it will be forwarded to your target endpoint + headers: nil, + # If True, requests to subpaths of the path will be forwarded to the target + # endpoint. For example, if the path is /bria and include_subpath is True, + # requests to /bria/v1/text-to-image/base/2.3 will be forwarded to the target + # endpoint. + include_subpath: nil ) end sig do override.returns( - { headers: T.anything, path: String, target: String } + { + path: String, + target: String, + id: T.nilable(String), + auth: T::Boolean, + cost_per_request: Float, + guardrails: + T.nilable( + T::Hash[ + Symbol, + T.nilable( + Hanzoai::Config::PassThroughGenericEndpoint::Guardrail + ) + ] + ), + headers: T::Hash[Symbol, T.anything], + include_subpath: T::Boolean + } ) end def to_hash end + + class Guardrail < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Config::PassThroughGenericEndpoint::Guardrail, + Hanzoai::Internal::AnyHash + ) + end + + # JSONPath expressions for input field targeting (pre_call). Examples: 'query', + # 'documents[*].text', 'messages[*].content'. If not specified, guardrail runs on + # entire request payload. + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :request_fields + + # JSONPath expressions for output field targeting (post_call). Examples: + # 'results[*].text', 'output'. If not specified, guardrail runs on entire response + # payload. + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :response_fields + + # Settings for a specific guardrail on a passthrough endpoint. + # + # Allows field-level targeting for guardrail execution. + sig do + params( + request_fields: T.nilable(T::Array[String]), + response_fields: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + # JSONPath expressions for input field targeting (pre_call). Examples: 'query', + # 'documents[*].text', 'messages[*].content'. If not specified, guardrail runs on + # entire request payload. + request_fields: nil, + # JSONPath expressions for output field targeting (post_call). Examples: + # 'results[*].text', 'output'. If not specified, guardrail runs on entire response + # payload. + response_fields: nil + ) + end + + sig do + override.returns( + { + request_fields: T.nilable(T::Array[String]), + response_fields: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end end end end diff --git a/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi b/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi deleted file mode 100644 index 23bf4039..00000000 --- a/rbi/hanzoai/models/configurable_clientside_params_custom_auth.rbi +++ /dev/null @@ -1,26 +0,0 @@ -# typed: strong - -module Hanzoai - module Models - class ConfigurableClientsideParamsCustomAuth < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::ConfigurableClientsideParamsCustomAuth, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :api_base - - sig { params(api_base: String).returns(T.attached_class) } - def self.new(api_base:) - end - - sig { override.returns({ api_base: String }) } - def to_hash - end - end - end -end diff --git a/rbi/hanzoai/models/credential_create_params.rbi b/rbi/hanzoai/models/credential_create_params.rbi index 0e7c0378..4584f641 100644 --- a/rbi/hanzoai/models/credential_create_params.rbi +++ b/rbi/hanzoai/models/credential_create_params.rbi @@ -11,13 +11,13 @@ module Hanzoai T.any(Hanzoai::CredentialCreateParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.anything) } + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :credential_info sig { returns(String) } attr_accessor :credential_name - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :credential_values sig { returns(T.nilable(String)) } @@ -25,9 +25,9 @@ module Hanzoai sig do params( - credential_info: T.anything, + credential_info: T::Hash[Symbol, T.anything], credential_name: String, - credential_values: T.nilable(T.anything), + credential_values: T.nilable(T::Hash[Symbol, T.anything]), model_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) @@ -44,9 +44,9 @@ module Hanzoai sig do override.returns( { - credential_info: T.anything, + credential_info: T::Hash[Symbol, T.anything], credential_name: String, - credential_values: T.nilable(T.anything), + credential_values: T.nilable(T::Hash[Symbol, T.anything]), model_id: T.nilable(String), request_options: Hanzoai::RequestOptions } diff --git a/rbi/hanzoai/models/credential_item.rbi b/rbi/hanzoai/models/credential_item.rbi index 7d62e670..9a4f255f 100644 --- a/rbi/hanzoai/models/credential_item.rbi +++ b/rbi/hanzoai/models/credential_item.rbi @@ -8,20 +8,20 @@ module Hanzoai T.any(Hanzoai::CredentialItem, Hanzoai::Internal::AnyHash) end - sig { returns(T.anything) } + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :credential_info sig { returns(String) } attr_accessor :credential_name - sig { returns(T.anything) } + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :credential_values sig do params( - credential_info: T.anything, + credential_info: T::Hash[Symbol, T.anything], credential_name: String, - credential_values: T.anything + credential_values: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end def self.new(credential_info:, credential_name:, credential_values:) @@ -30,9 +30,9 @@ module Hanzoai sig do override.returns( { - credential_info: T.anything, + credential_info: T::Hash[Symbol, T.anything], credential_name: String, - credential_values: T.anything + credential_values: T::Hash[Symbol, T.anything] } ) end diff --git a/rbi/hanzoai/models/customer_create_params.rbi b/rbi/hanzoai/models/customer_create_params.rbi index 0b2bb64f..3acc804f 100644 --- a/rbi/hanzoai/models/customer_create_params.rbi +++ b/rbi/hanzoai/models/customer_create_params.rbi @@ -37,6 +37,10 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_id + # Datetime when the budget is reset + sig { returns(T.nilable(Time)) } + attr_accessor :budget_reset_at + sig { returns(T.nilable(String)) } attr_accessor :default_model @@ -67,6 +71,9 @@ module Hanzoai sig { returns(T.nilable(Float)) } attr_accessor :soft_budget + sig { returns(T.nilable(Float)) } + attr_accessor :spend + # Max tokens per minute, allowed for this budget id. sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit @@ -82,6 +89,7 @@ module Hanzoai blocked: T::Boolean, budget_duration: T.nilable(String), budget_id: T.nilable(String), + budget_reset_at: T.nilable(Time), default_model: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), @@ -94,6 +102,7 @@ module Hanzoai ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), + spend: T.nilable(Float), tpm_limit: T.nilable(Integer), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) @@ -106,6 +115,8 @@ module Hanzoai # Max duration budget should be set for (e.g. '1hr', '1d', '28d') budget_duration: nil, budget_id: nil, + # Datetime when the budget is reset + budget_reset_at: nil, default_model: nil, # Requests will fail if this budget (in USD) is exceeded. max_budget: nil, @@ -118,6 +129,7 @@ module Hanzoai rpm_limit: nil, # Requests will NOT fail if this is exceeded. Will fire alerting though. soft_budget: nil, + spend: nil, # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} @@ -136,6 +148,7 @@ module Hanzoai blocked: T::Boolean, budget_duration: T.nilable(String), budget_id: T.nilable(String), + budget_reset_at: T.nilable(Time), default_model: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), @@ -145,6 +158,7 @@ module Hanzoai ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), + spend: T.nilable(Float), tpm_limit: T.nilable(Integer), request_options: Hanzoai::RequestOptions } diff --git a/rbi/hanzoai/models/customer_list_response.rbi b/rbi/hanzoai/models/customer_list_response.rbi index 7c999f10..bb3c1eb6 100644 --- a/rbi/hanzoai/models/customer_list_response.rbi +++ b/rbi/hanzoai/models/customer_list_response.rbi @@ -2,221 +2,9 @@ module Hanzoai module Models - class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::CustomerListResponseItem, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T::Boolean) } - attr_accessor :blocked - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :alias_ - - sig do - returns( - T.nilable( - Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol - ) - ) - end - attr_accessor :allowed_model_region - - sig { returns(T.nilable(String)) } - attr_accessor :default_model - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable(Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig do - params( - blocked: T::Boolean, - user_id: String, - alias_: T.nilable(String), - allowed_model_region: - T.nilable( - Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::OrSymbol - ), - default_model: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable::OrHash - ), - spend: Float - ).returns(T.attached_class) - end - def self.new( - blocked:, - user_id:, - alias_: nil, - allowed_model_region: nil, - default_model: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil - ) - end - - sig do - override.returns( - { - blocked: T::Boolean, - user_id: String, - alias_: T.nilable(String), - allowed_model_region: - T.nilable( - Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol - ), - default_model: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable - ), - spend: Float - } - ) - end - def to_hash - end - - module AllowedModelRegion - extend Hanzoai::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - EU = - T.let( - :eu, - Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol - ) - US = - T.let( - :us, - Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - Hanzoai::Models::CustomerListResponseItem::AllowedModelRegion::TaggedSymbol - ] - ) - end - def self.values - end - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - CustomerListResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[ - Hanzoai::Models::CustomerListResponseItem - ], + Hanzoai::Internal::Type::ArrayOf[Hanzoai::LiteLlmEndUserTable], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/customer_retrieve_info_response.rbi b/rbi/hanzoai/models/customer_retrieve_info_response.rbi deleted file mode 100644 index 0bd082da..00000000 --- a/rbi/hanzoai/models/customer_retrieve_info_response.rbi +++ /dev/null @@ -1,217 +0,0 @@ -# typed: strong - -module Hanzoai - module Models - class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::CustomerRetrieveInfoResponse, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T::Boolean) } - attr_accessor :blocked - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :alias_ - - sig do - returns( - T.nilable( - Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol - ) - ) - end - attr_accessor :allowed_model_region - - sig { returns(T.nilable(String)) } - attr_accessor :default_model - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig do - params( - blocked: T::Boolean, - user_id: String, - alias_: T.nilable(String), - allowed_model_region: - T.nilable( - Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::OrSymbol - ), - default_model: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable::OrHash - ), - spend: Float - ).returns(T.attached_class) - end - def self.new( - blocked:, - user_id:, - alias_: nil, - allowed_model_region: nil, - default_model: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil - ) - end - - sig do - override.returns( - { - blocked: T::Boolean, - user_id: String, - alias_: T.nilable(String), - allowed_model_region: - T.nilable( - Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol - ), - default_model: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable - ), - spend: Float - } - ) - end - def to_hash - end - - module AllowedModelRegion - extend Hanzoai::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - EU = - T.let( - :eu, - Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol - ) - US = - T.let( - :us, - Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion::TaggedSymbol - ] - ) - end - def self.values - end - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - end -end diff --git a/rbi/hanzoai/models/embedding_create_params.rbi b/rbi/hanzoai/models/embedding_create_params.rbi index 2cf6ef89..64b8c3ca 100644 --- a/rbi/hanzoai/models/embedding_create_params.rbi +++ b/rbi/hanzoai/models/embedding_create_params.rbi @@ -11,25 +11,144 @@ module Hanzoai T.any(Hanzoai::EmbeddingCreateParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(String)) } + sig { returns(String) } attr_accessor :model + sig { returns(T.nilable(String)) } + attr_accessor :api_base + + sig { returns(T.nilable(String)) } + attr_accessor :api_key + + sig { returns(T.nilable(String)) } + attr_accessor :api_type + + sig { returns(T.nilable(String)) } + attr_accessor :api_version + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :caching + + sig { params(caching: T::Boolean).void } + attr_writer :caching + + sig do + returns( + T.nilable(Hanzoai::EmbeddingCreateParams::CustomLlmProvider::Variants) + ) + end + attr_accessor :custom_llm_provider + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :input + + sig { params(input: T::Array[String]).void } + attr_writer :input + + sig { returns(T.nilable(String)) } + attr_accessor :litellm_call_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :litellm_logging_obj + + sig { returns(T.nilable(String)) } + attr_accessor :logger_fn + + sig { returns(T.nilable(Integer)) } + attr_reader :timeout + + sig { params(timeout: Integer).void } + attr_writer :timeout + + sig { returns(T.nilable(String)) } + attr_accessor :user + sig do params( - model: T.nilable(String), + model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable( + Hanzoai::EmbeddingCreateParams::CustomLlmProvider::Variants + ), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(model: nil, request_options: {}) + def self.new( + model:, + api_base: nil, + api_key: nil, + api_type: nil, + api_version: nil, + caching: nil, + custom_llm_provider: nil, + input: nil, + litellm_call_id: nil, + litellm_logging_obj: nil, + logger_fn: nil, + timeout: nil, + user: nil, + request_options: {} + ) end sig do override.returns( - { model: T.nilable(String), request_options: Hanzoai::RequestOptions } + { + model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable( + Hanzoai::EmbeddingCreateParams::CustomLlmProvider::Variants + ), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), + request_options: Hanzoai::RequestOptions + } ) end def to_hash end + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::EmbeddingCreateParams::CustomLlmProvider::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end end end end diff --git a/rbi/hanzoai/models/engine_embed_params.rbi b/rbi/hanzoai/models/engine_embed_params.rbi index 11bd66a2..c0eeef69 100644 --- a/rbi/hanzoai/models/engine_embed_params.rbi +++ b/rbi/hanzoai/models/engine_embed_params.rbi @@ -11,17 +11,140 @@ module Hanzoai T.any(Hanzoai::EngineEmbedParams, Hanzoai::Internal::AnyHash) end + sig { returns(String) } + attr_accessor :body_model + + sig { returns(T.nilable(String)) } + attr_accessor :api_base + + sig { returns(T.nilable(String)) } + attr_accessor :api_key + + sig { returns(T.nilable(String)) } + attr_accessor :api_type + + sig { returns(T.nilable(String)) } + attr_accessor :api_version + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :caching + + sig { params(caching: T::Boolean).void } + attr_writer :caching + sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T.attached_class + returns( + T.nilable(Hanzoai::EngineEmbedParams::CustomLlmProvider::Variants) ) end - def self.new(request_options: {}) + attr_accessor :custom_llm_provider + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :input + + sig { params(input: T::Array[String]).void } + attr_writer :input + + sig { returns(T.nilable(String)) } + attr_accessor :litellm_call_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :litellm_logging_obj + + sig { returns(T.nilable(String)) } + attr_accessor :logger_fn + + sig { returns(T.nilable(Integer)) } + attr_reader :timeout + + sig { params(timeout: Integer).void } + attr_writer :timeout + + sig { returns(T.nilable(String)) } + attr_accessor :user + + sig do + params( + body_model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable(Hanzoai::EngineEmbedParams::CustomLlmProvider::Variants), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + body_model:, + api_base: nil, + api_key: nil, + api_type: nil, + api_version: nil, + caching: nil, + custom_llm_provider: nil, + input: nil, + litellm_call_id: nil, + litellm_logging_obj: nil, + logger_fn: nil, + timeout: nil, + user: nil, + request_options: {} + ) end - sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + sig do + override.returns( + { + body_model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable( + Hanzoai::EngineEmbedParams::CustomLlmProvider::Variants + ), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end def to_hash end + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[Hanzoai::EngineEmbedParams::CustomLlmProvider::Variants] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end end end end diff --git a/rbi/hanzoai/models/engines/chat_complete_params.rbi b/rbi/hanzoai/models/engines/chat_complete_params.rbi index cca91415..af5b79b8 100644 --- a/rbi/hanzoai/models/engines/chat_complete_params.rbi +++ b/rbi/hanzoai/models/engines/chat_complete_params.rbi @@ -16,16 +16,2623 @@ module Hanzoai end sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T.attached_class + returns( + T::Array[ + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + ) + ] ) end - def self.new(request_options: {}) + attr_accessor :messages + + sig { returns(String) } + attr_accessor :body_model + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :caching + + sig { returns(T.nilable(T::Hash[Symbol, String])) } + attr_accessor :context_window_fallback_dict + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :frequency_penalty + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::FunctionCall::Variants + ) + ) + end + attr_accessor :function_call + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :functions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :guardrails + + sig { returns(T.nilable(T::Hash[Symbol, Float])) } + attr_accessor :logit_bias + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :logprobs + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_tokens + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :metadata + + sig { returns(T.nilable(Integer)) } + attr_accessor :n + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :parallel_tool_calls + + sig { returns(T.nilable(Float)) } + attr_accessor :presence_penalty + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :response_format + + sig { returns(T.nilable(Integer)) } + attr_accessor :seed + + sig { returns(T.nilable(String)) } + attr_accessor :service_tier + + sig do + returns( + T.nilable(Hanzoai::Engines::ChatCompleteParams::Stop::Variants) + ) + end + attr_accessor :stop + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :stream + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :stream_options + + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::ToolChoice::Variants + ) + ) + end + attr_accessor :tool_choice + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :tools + + sig { returns(T.nilable(Integer)) } + attr_accessor :top_logprobs + + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + sig { returns(T.nilable(String)) } + attr_accessor :user + + sig do + params( + messages: + T::Array[ + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::OrHash + ) + ], + body_model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable(Hanzoai::Engines::ChatCompleteParams::Stop::Variants), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + messages:, + body_model:, + caching: nil, + context_window_fallback_dict: nil, + fallbacks: nil, + frequency_penalty: nil, + function_call: nil, + functions: nil, + guardrails: nil, + logit_bias: nil, + logprobs: nil, + max_tokens: nil, + metadata: nil, + n: nil, + num_retries: nil, + parallel_tool_calls: nil, + presence_penalty: nil, + response_format: nil, + seed: nil, + service_tier: nil, + stop: nil, + stream: nil, + stream_options: nil, + temperature: nil, + tool_choice: nil, + tools: nil, + top_logprobs: nil, + top_p: nil, + user: nil, + request_options: {} + ) end - sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + sig do + override.returns( + { + messages: + T::Array[ + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + ) + ], + body_model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable(Hanzoai::Engines::ChatCompleteParams::Stop::Variants), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end def to_hash end + + module Message + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + ) + end + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl::OrHash, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, cache_control: nil, role: :user) + end + + sig do + override.returns( + { + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::Variants + ] + ) + end + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject + ) + end + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ) + ) + end + attr_accessor :image_url + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + image_url: + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject::OrHash + ), + type: Symbol + ).returns(T.attached_class) + end + def self.new(image_url:, type: :image_url) + end + + sig do + override.returns( + { + image_url: + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ), + type: Symbol + } + ) + end + def to_hash + end + + module ImageURL + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ) + end + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_reader :detail + + sig { params(detail: String).void } + attr_writer :detail + + sig { returns(T.nilable(String)) } + attr_reader :format_ + + sig { params(format_: String).void } + attr_writer :format_ + + sig do + params( + url: String, + detail: String, + format_: String + ).returns(T.attached_class) + end + def self.new(url:, detail: nil, format_: nil) + end + + sig do + override.returns( + { url: String, detail: String, format_: String } + ) + end + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::Variants + ] + ) + end + def self.variants + end + end + end + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio + ) + end + attr_reader :input_audio + + sig do + params( + input_audio: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::OrHash + ).void + end + attr_writer :input_audio + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + input_audio: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(input_audio:, type: :input_audio) + end + + sig do + override.returns( + { + input_audio: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: Symbol + } + ) + end + def to_hash + end + + class InputAudio < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :data + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + ) + end + attr_accessor :format_ + + sig do + params( + data: String, + format_: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + ).returns(T.attached_class) + end + def self.new(data:, format_:) + end + + sig do + override.returns( + { + data: String, + format_: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + } + ) + end + def to_hash + end + + module Format + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + WAV = + T.let( + :wav, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ) + MP3 = + T.let( + :mp3, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + ) + ) + end + attr_reader :citations + + sig do + params( + citations: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations::OrHash + ) + ).void + end + attr_writer :citations + + sig { returns(String) } + attr_accessor :context + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source + ) + end + attr_reader :source + + sig do + params( + source: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source::OrHash + ).void + end + attr_writer :source + + sig { returns(String) } + attr_accessor :title + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + citations: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations::OrHash + ), + context: String, + source: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source::OrHash, + title: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + citations:, + context:, + source:, + title:, + type: :document + ) + end + + sig do + override.returns( + { + citations: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + ), + context: String, + source: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: Symbol + } + ) + end + def to_hash + end + + class Citations < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T::Boolean) } + attr_accessor :enabled + + sig do + params(enabled: T::Boolean).returns(T.attached_class) + end + def self.new(enabled:) + end + + sig { override.returns({ enabled: T::Boolean }) } + def to_hash + end + end + + class Source < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :data + + sig { returns(String) } + attr_accessor :media_type + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + data: String, + media_type: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new(data:, media_type:, type: :text) + end + + sig do + override.returns( + { data: String, media_type: String, type: Symbol } + ) + end + def to_hash + end + end + end + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + ) + end + attr_accessor :video_url + + sig do + params( + video_url: + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject::OrHash + ), + type: Symbol + ).returns(T.attached_class) + end + def self.new(video_url:, type: :video_url) + end + + sig do + override.returns( + { + type: Symbol, + video_url: + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + } + ) + end + def to_hash + end + + module VideoURL + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + end + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_reader :detail + + sig { params(detail: String).void } + attr_writer :detail + + sig do + params(url: String, detail: String).returns( + T.attached_class + ) + end + def self.new(url:, detail: nil) + end + + sig { override.returns({ url: String, detail: String }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::Variants + ] + ) + end + def self.variants + end + end + end + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File + ) + end + attr_reader :file + + sig do + params( + file: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File::OrHash + ).void + end + attr_writer :file + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + file: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(file:, type: :file) + end + + sig do + override.returns( + { + file: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: Symbol + } + ) + end + def to_hash + end + + class File < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :file_data + + sig { params(file_data: String).void } + attr_writer :file_data + + sig { returns(T.nilable(String)) } + attr_reader :file_id + + sig { params(file_id: String).void } + attr_writer :file_id + + sig { returns(T.nilable(String)) } + attr_reader :filename + + sig { params(filename: String).void } + attr_writer :filename + + sig { returns(T.nilable(String)) } + attr_reader :format_ + + sig { params(format_: String).void } + attr_writer :format_ + + sig do + params( + file_data: String, + file_id: String, + filename: String, + format_: String + ).returns(T.attached_class) + end + def self.new( + file_data: nil, + file_id: nil, + filename: nil, + format_: nil + ) + end + + sig do + override.returns( + { + file_data: String, + file_id: String, + filename: String, + format_: String + } + ) + end + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::Variants + ] + ) + end + def self.variants + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + union: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ) + ) + end + attr_accessor :content + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall + ) + ) + end + attr_reader :function_call + + sig do + params( + function_call: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall::OrHash + ) + ).void + end + attr_writer :function_call + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(String)) } + attr_accessor :reasoning_content + + sig do + returns( + T.nilable( + T::Array[ + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ) + ) + end + attr_accessor :thinking_blocks + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall + ] + ) + ) + end + attr_accessor :tool_calls + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl::OrHash, + content: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ), + function_call: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall::OrHash + ), + name: T.nilable(String), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::OrHash + ) + ] + ), + tool_calls: + T.nilable( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::OrHash + ] + ), + role: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + content: nil, + function_call: nil, + name: nil, + reasoning_content: nil, + thinking_blocks: nil, + tool_calls: nil, + role: :assistant + ) + end + + sig do + override.returns( + { + role: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ), + function_call: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall + ), + name: T.nilable(String), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ), + tool_calls: + T.nilable( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall + ] + ) + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::Variants + ] + ) + end + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock + ) + end + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::Variants + ] + ) + end + def self.variants + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + union: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :arguments + + sig { params(arguments: String).void } + attr_writer :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + arguments: nil, + name: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :data + + sig { params(data: String).void } + attr_writer :data + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + data: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + data: nil, + type: :redacted_thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + data: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::Variants + ] + ) + end + def self.variants + end + end + + class ToolCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_accessor :id + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function + ) + end + attr_reader :function + + sig do + params( + function: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function::OrHash + ).void + end + attr_writer :function + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + id: T.nilable(String), + function: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(id:, function:, type: :function) + end + + sig do + override.returns( + { + id: T.nilable(String), + function: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: Symbol + } + ) + end + def to_hash + end + + class Function < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :arguments + + sig { params(arguments: String).void } + attr_writer :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + arguments: nil, + name: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + end + end + end + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig { returns(String) } + attr_accessor :tool_call_id + + sig do + params( + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants, + tool_call_id: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, tool_call_id:, role: :tool) + end + + sig do + override.returns( + { + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants, + role: Symbol, + tool_call_id: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + ] + ) + end + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig do + params( + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl::OrHash, + name: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, cache_control: nil, name: nil, role: :system) + end + + sig do + override.returns( + { + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ) + ) + end + attr_accessor :content + + sig { returns(String) } + attr_accessor :name + + sig { returns(Symbol) } + attr_accessor :role + + sig { returns(T.nilable(String)) } + attr_accessor :tool_call_id + + sig do + params( + content: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ), + name: String, + tool_call_id: T.nilable(String), + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, name:, tool_call_id:, role: :function) + end + + sig do + override.returns( + { + content: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ), + name: String, + role: Symbol, + tool_call_id: T.nilable(String) + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 + ] + ) + end + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig do + params( + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl::OrHash, + name: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new( + content:, + cache_control: nil, + name: nil, + role: :developer + ) + end + + sig do + override.returns( + { + content: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[Hanzoai::Engines::ChatCompleteParams::Message::Variants] + ) + end + def self.variants + end + end + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::FunctionCall::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end + + module Stop + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[String]) } + + sig do + override.returns( + T::Array[Hanzoai::Engines::ChatCompleteParams::Stop::Variants] + ) + end + def self.variants + end + + StringArray = + T.let( + Hanzoai::Internal::Type::ArrayOf[String], + Hanzoai::Internal::Type::Converter + ) + end + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Engines::ChatCompleteParams::ToolChoice::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end end end end diff --git a/rbi/hanzoai/models/file_create_params.rbi b/rbi/hanzoai/models/file_create_params.rbi index a7e4d9b3..47cf578f 100644 --- a/rbi/hanzoai/models/file_create_params.rbi +++ b/rbi/hanzoai/models/file_create_params.rbi @@ -23,11 +23,29 @@ module Hanzoai sig { params(custom_llm_provider: String).void } attr_writer :custom_llm_provider + sig { returns(T.nilable(String)) } + attr_accessor :litellm_metadata + + sig { returns(T.nilable(String)) } + attr_reader :target_model_names + + sig { params(target_model_names: String).void } + attr_writer :target_model_names + + sig { returns(T.nilable(String)) } + attr_reader :target_storage + + sig { params(target_storage: String).void } + attr_writer :target_storage + sig do params( file: Hanzoai::Internal::FileInput, purpose: String, custom_llm_provider: String, + litellm_metadata: T.nilable(String), + target_model_names: String, + target_storage: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end @@ -35,6 +53,9 @@ module Hanzoai file:, purpose:, custom_llm_provider: nil, + litellm_metadata: nil, + target_model_names: nil, + target_storage: nil, request_options: {} ) end @@ -45,6 +66,9 @@ module Hanzoai file: Hanzoai::Internal::FileInput, purpose: String, custom_llm_provider: String, + litellm_metadata: T.nilable(String), + target_model_names: String, + target_storage: String, request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/file_list_params.rbi b/rbi/hanzoai/models/file_list_params.rbi index 502de195..4630cb7c 100644 --- a/rbi/hanzoai/models/file_list_params.rbi +++ b/rbi/hanzoai/models/file_list_params.rbi @@ -14,19 +14,24 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :purpose + sig { returns(T.nilable(String)) } + attr_accessor :target_model_names + sig do params( purpose: T.nilable(String), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(purpose: nil, request_options: {}) + def self.new(purpose: nil, target_model_names: nil, request_options: {}) end sig do override.returns( { purpose: T.nilable(String), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi index 1b76469d..6e5a7f02 100644 --- a/rbi/hanzoai/models/fine_tuning/job_create_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_create_params.rbi @@ -3,7 +3,7 @@ module Hanzoai module Models module FineTuning - class JobCreateParams < Hanzoai::Internal::Type::BaseModel + class JobCreateParams < Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters @@ -16,266 +16,16 @@ module Hanzoai end sig do - returns( - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class ) end - attr_accessor :custom_llm_provider - - sig { returns(String) } - attr_accessor :model - - sig { returns(String) } - attr_accessor :training_file - - sig do - returns( - T.nilable(Hanzoai::FineTuning::JobCreateParams::Hyperparameters) - ) - end - attr_reader :hyperparameters - - sig do - params( - hyperparameters: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::OrHash - ) - ).void - end - attr_writer :hyperparameters - - sig { returns(T.nilable(T::Array[String])) } - attr_accessor :integrations - - sig { returns(T.nilable(Integer)) } - attr_accessor :seed - - sig { returns(T.nilable(String)) } - attr_accessor :suffix - - sig { returns(T.nilable(String)) } - attr_accessor :validation_file - - sig do - params( - custom_llm_provider: - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, - model: String, - training_file: String, - hyperparameters: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::OrHash - ), - integrations: T.nilable(T::Array[String]), - seed: T.nilable(Integer), - suffix: T.nilable(String), - validation_file: T.nilable(String), - request_options: Hanzoai::RequestOptions::OrHash - ).returns(T.attached_class) - end - def self.new( - custom_llm_provider:, - model:, - training_file:, - hyperparameters: nil, - integrations: nil, - seed: nil, - suffix: nil, - validation_file: nil, - request_options: {} - ) + def self.new(request_options: {}) end - sig do - override.returns( - { - custom_llm_provider: - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, - model: String, - training_file: String, - hyperparameters: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters - ), - integrations: T.nilable(T::Array[String]), - seed: T.nilable(Integer), - suffix: T.nilable(String), - validation_file: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) - end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } def to_hash end - - module CustomLlmProvider - extend Hanzoai::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - OPENAI = - T.let( - :openai, - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol - ) - AZURE = - T.let( - :azure, - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol - ) - VERTEX_AI = - T.let( - :vertex_ai, - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::TaggedSymbol - ] - ) - end - def self.values - end - end - - class Hyperparameters < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters, - Hanzoai::Internal::AnyHash - ) - end - - sig do - returns( - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants - ) - ) - end - attr_accessor :batch_size - - sig do - returns( - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants - ) - ) - end - attr_accessor :learning_rate_multiplier - - sig do - returns( - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants - ) - ) - end - attr_accessor :n_epochs - - sig do - params( - batch_size: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants - ), - learning_rate_multiplier: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants - ), - n_epochs: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants - ) - ).returns(T.attached_class) - end - def self.new( - batch_size: nil, - learning_rate_multiplier: nil, - n_epochs: nil - ) - end - - sig do - override.returns( - { - batch_size: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants - ), - learning_rate_multiplier: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants - ), - n_epochs: - T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants - ) - } - ) - end - def to_hash - end - - module BatchSize - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(String, Integer) } - - sig do - override.returns( - T::Array[ - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants - ] - ) - end - def self.variants - end - end - - module LearningRateMultiplier - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(String, Float) } - - sig do - override.returns( - T::Array[ - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants - ] - ) - end - def self.variants - end - end - - module NEpochs - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(String, Integer) } - - sig do - override.returns( - T::Array[ - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants - ] - ) - end - def self.variants - end - end - end end end end diff --git a/rbi/hanzoai/models/fine_tuning/job_list_params.rbi b/rbi/hanzoai/models/fine_tuning/job_list_params.rbi index ba438c78..b1d23efb 100644 --- a/rbi/hanzoai/models/fine_tuning/job_list_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_list_params.rbi @@ -15,32 +15,43 @@ module Hanzoai ) end + sig { returns(T.nilable(String)) } + attr_accessor :after + sig do returns( - Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol + T.nilable( + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol + ) ) end attr_accessor :custom_llm_provider - sig { returns(T.nilable(String)) } - attr_accessor :after - sig { returns(T.nilable(Integer)) } attr_accessor :limit + # Comma separated list of model names to filter by. Example: 'gpt-4o,gpt-4o-mini' + sig { returns(T.nilable(String)) } + attr_accessor :target_model_names + sig do params( - custom_llm_provider: - Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, after: T.nilable(String), + custom_llm_provider: + T.nilable( + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol + ), limit: T.nilable(Integer), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( - custom_llm_provider:, after: nil, + custom_llm_provider: nil, limit: nil, + # Comma separated list of model names to filter by. Example: 'gpt-4o,gpt-4o-mini' + target_model_names: nil, request_options: {} ) end @@ -48,10 +59,13 @@ module Hanzoai sig do override.returns( { - custom_llm_provider: - Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, after: T.nilable(String), + custom_llm_provider: + T.nilable( + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol + ), limit: T.nilable(Integer), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi b/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi index 59671251..849d3877 100644 --- a/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi +++ b/rbi/hanzoai/models/fine_tuning/job_retrieve_params.rbi @@ -17,7 +17,9 @@ module Hanzoai sig do returns( - Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol + T.nilable( + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol + ) ) end attr_accessor :custom_llm_provider @@ -25,18 +27,22 @@ module Hanzoai sig do params( custom_llm_provider: - Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, + T.nilable( + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol + ), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(custom_llm_provider:, request_options: {}) + def self.new(custom_llm_provider: nil, request_options: {}) end sig do override.returns( { custom_llm_provider: - Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, + T.nilable( + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol + ), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbi b/rbi/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbi new file mode 100644 index 00000000..2b249eba --- /dev/null +++ b/rbi/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbi @@ -0,0 +1,284 @@ +# typed: strong + +module Hanzoai + module Models + module FineTuning + class LiteLlmFineTuningJobCreate < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :model + + sig { returns(String) } + attr_accessor :training_file + + sig do + returns( + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::OrSymbol + ) + ) + end + attr_accessor :custom_llm_provider + + sig do + returns( + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters + ) + ) + end + attr_reader :hyperparameters + + sig do + params( + hyperparameters: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::OrHash + ) + ).void + end + attr_writer :hyperparameters + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :integrations + + sig { returns(T.nilable(Integer)) } + attr_accessor :seed + + sig { returns(T.nilable(String)) } + attr_accessor :suffix + + sig { returns(T.nilable(String)) } + attr_accessor :validation_file + + sig do + params( + model: String, + training_file: String, + custom_llm_provider: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::OrSymbol + ), + hyperparameters: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::OrHash + ), + integrations: T.nilable(T::Array[String]), + seed: T.nilable(Integer), + suffix: T.nilable(String), + validation_file: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + model:, + training_file:, + custom_llm_provider: nil, + hyperparameters: nil, + integrations: nil, + seed: nil, + suffix: nil, + validation_file: nil + ) + end + + sig do + override.returns( + { + model: String, + training_file: String, + custom_llm_provider: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::OrSymbol + ), + hyperparameters: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters + ), + integrations: T.nilable(T::Array[String]), + seed: T.nilable(Integer), + suffix: T.nilable(String), + validation_file: T.nilable(String) + } + ) + end + def to_hash + end + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + OPENAI = + T.let( + :openai, + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::TaggedSymbol + ) + AZURE = + T.let( + :azure, + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::TaggedSymbol + ) + VERTEX_AI = + T.let( + :vertex_ai, + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::TaggedSymbol + ] + ) + end + def self.values + end + end + + class Hyperparameters < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::BatchSize::Variants + ) + ) + end + attr_accessor :batch_size + + sig do + returns( + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::LearningRateMultiplier::Variants + ) + ) + end + attr_accessor :learning_rate_multiplier + + sig do + returns( + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::NEpochs::Variants + ) + ) + end + attr_accessor :n_epochs + + sig do + params( + batch_size: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::BatchSize::Variants + ), + learning_rate_multiplier: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::LearningRateMultiplier::Variants + ), + n_epochs: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::NEpochs::Variants + ) + ).returns(T.attached_class) + end + def self.new( + batch_size: nil, + learning_rate_multiplier: nil, + n_epochs: nil + ) + end + + sig do + override.returns( + { + batch_size: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::BatchSize::Variants + ), + learning_rate_multiplier: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::LearningRateMultiplier::Variants + ), + n_epochs: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::NEpochs::Variants + ) + } + ) + end + def to_hash + end + + module BatchSize + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, Integer) } + + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end + end + + module LearningRateMultiplier + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, Float) } + + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end + end + + module NEpochs + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, Integer) } + + sig do + override.returns( + T::Array[ + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end + end + end + end + end + end +end diff --git a/rbi/hanzoai/models/generate_key_response.rbi b/rbi/hanzoai/models/generate_key_response.rbi index 59a33e75..54bb5116 100644 --- a/rbi/hanzoai/models/generate_key_response.rbi +++ b/rbi/hanzoai/models/generate_key_response.rbi @@ -8,21 +8,33 @@ module Hanzoai T.any(Hanzoai::GenerateKeyResponse, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(Time)) } - attr_accessor :expires - sig { returns(String) } attr_accessor :key sig { returns(T.nilable(String)) } attr_accessor :token - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :aliases sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :allowed_cache_controls + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_passthrough_routes + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + + sig do + returns( + T.nilable( + T::Array[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex] + ) + ) + end + attr_accessor :allowed_vector_store_indexes + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -32,9 +44,12 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_id - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :config + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + sig { returns(T.nilable(String)) } attr_accessor :created_by @@ -44,6 +59,9 @@ module Hanzoai sig { returns(T.nilable(T::Array[String])) } attr_accessor :enforced_params + sig { returns(T.nilable(Time)) } + attr_accessor :expires + sig { returns(T.nilable(T::Array[String])) } attr_accessor :guardrails @@ -54,10 +72,10 @@ module Hanzoai attr_accessor :key_name sig { returns(T.nilable(T.anything)) } - attr_reader :llm_budget_table + attr_reader :litellm_budget_table - sig { params(llm_budget_table: T.anything).void } - attr_writer :llm_budget_table + sig { params(litellm_budget_table: T.anything).void } + attr_writer :litellm_budget_table sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -65,27 +83,63 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_rpm_limit - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_tpm_limit sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(Hanzoai::GenerateKeyResponse::ObjectPermission)) } + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable(Hanzoai::GenerateKeyResponse::ObjectPermission::OrHash) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :organization_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :permissions + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + + # Set of params that you can modify via `router.update_settings()`. + sig { returns(T.nilable(Hanzoai::GenerateKeyResponse::RouterSettings)) } + attr_reader :router_settings + + sig do + params( + router_settings: + T.nilable(Hanzoai::GenerateKeyResponse::RouterSettings::OrHash) + ).void + end + attr_writer :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit + sig do + returns( + T.nilable(Hanzoai::GenerateKeyResponse::RpmLimitType::TaggedSymbol) + ) + end + attr_accessor :rpm_limit_type + sig { returns(T.nilable(Float)) } attr_accessor :spend @@ -101,6 +155,16 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig do + returns( + T.nilable(Hanzoai::GenerateKeyResponse::TpmLimitType::TaggedSymbol) + ) + end + attr_accessor :tpm_limit_type + + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + sig { returns(T.nilable(String)) } attr_accessor :updated_by @@ -109,57 +173,81 @@ module Hanzoai sig do params( - expires: T.nilable(Time), key: String, token: T.nilable(String), - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::OrHash + ] + ), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), + created_at: T.nilable(Time), created_by: T.nilable(String), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), + expires: T.nilable(Time), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), key_name: T.nilable(String), - llm_budget_table: T.anything, + litellm_budget_table: T.anything, max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::GenerateKeyResponse::ObjectPermission::OrHash), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + router_settings: + T.nilable(Hanzoai::GenerateKeyResponse::RouterSettings::OrHash), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::GenerateKeyResponse::RpmLimitType::OrSymbol), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), token_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable(Hanzoai::GenerateKeyResponse::TpmLimitType::OrSymbol), + updated_at: T.nilable(Time), updated_by: T.nilable(String), user_id: T.nilable(String) ).returns(T.attached_class) end def self.new( - expires:, key:, token: nil, aliases: nil, allowed_cache_controls: nil, + allowed_passthrough_routes: nil, + allowed_routes: nil, + allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, + created_at: nil, created_by: nil, duration: nil, enforced_params: nil, + expires: nil, guardrails: nil, key_alias: nil, key_name: nil, - llm_budget_table: nil, + litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, @@ -167,13 +255,21 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, + organization_id: nil, permissions: nil, + prompts: nil, + # Set of params that you can modify via `router.update_settings()`. + router_settings: nil, rpm_limit: nil, + rpm_limit_type: nil, spend: nil, tags: nil, team_id: nil, token_id: nil, tpm_limit: nil, + tpm_limit_type: nil, + updated_at: nil, updated_by: nil, user_id: nil ) @@ -182,36 +278,58 @@ module Hanzoai sig do override.returns( { - expires: T.nilable(Time), key: String, token: T.nilable(String), - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex] + ), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), + created_at: T.nilable(Time), created_by: T.nilable(String), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), + expires: T.nilable(Time), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), key_name: T.nilable(String), - llm_budget_table: T.anything, + litellm_budget_table: T.anything, max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::GenerateKeyResponse::ObjectPermission), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + router_settings: + T.nilable(Hanzoai::GenerateKeyResponse::RouterSettings), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable( + Hanzoai::GenerateKeyResponse::RpmLimitType::TaggedSymbol + ), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), token_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable( + Hanzoai::GenerateKeyResponse::TpmLimitType::TaggedSymbol + ), + updated_at: T.nilable(Time), updated_by: T.nilable(String), user_id: T.nilable(String) } @@ -219,6 +337,365 @@ module Hanzoai end def to_hash end + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :index_name + + sig do + returns( + T::Array[ + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + attr_accessor :index_permissions + + sig do + params( + index_name: String, + index_permissions: + T::Array[ + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ).returns(T.attached_class) + end + def self.new(index_name:, index_permissions:) + end + + sig do + override.returns( + { + index_name: String, + index_permissions: + T::Array[ + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + } + ) + end + def to_hash + end + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + READ = + T.let( + :read, + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + WRITE = + T.let( + :write, + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::GenerateKeyResponse::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::GenerateKeyResponse::RouterSettings, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Integer)) } + attr_accessor :allowed_fails + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :context_window_fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :cooldown_time + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_retries + + sig do + returns( + T.nilable( + T::Hash[ + Symbol, + Hanzoai::GenerateKeyResponse::RouterSettings::ModelGroupAlias::Variants + ] + ) + ) + end + attr_accessor :model_group_alias + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_group_retry_policy + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(Float)) } + attr_accessor :retry_after + + sig { returns(T.nilable(String)) } + attr_accessor :routing_strategy + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :routing_strategy_args + + sig { returns(T.nilable(Float)) } + attr_accessor :timeout + + # Set of params that you can modify via `router.update_settings()`. + sig do + params( + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::GenerateKeyResponse::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + ).returns(T.attached_class) + end + def self.new( + allowed_fails: nil, + context_window_fallbacks: nil, + cooldown_time: nil, + fallbacks: nil, + max_retries: nil, + model_group_alias: nil, + model_group_retry_policy: nil, + num_retries: nil, + retry_after: nil, + routing_strategy: nil, + routing_strategy_args: nil, + timeout: nil + ) + end + + sig do + override.returns( + { + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::GenerateKeyResponse::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + } + ) + end + def to_hash + end + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::GenerateKeyResponse::RouterSettings::ModelGroupAlias::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::GenerateKeyResponse::RpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::GenerateKeyResponse::RpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::GenerateKeyResponse::RpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::GenerateKeyResponse::RpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[Hanzoai::GenerateKeyResponse::RpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::GenerateKeyResponse::TpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::GenerateKeyResponse::TpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::GenerateKeyResponse::TpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::GenerateKeyResponse::TpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[Hanzoai::GenerateKeyResponse::TpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end end end end diff --git a/rbi/hanzoai/models/global/spend_list_tags_response.rbi b/rbi/hanzoai/models/global/spend_list_tags_response.rbi index 9096a717..b5043de3 100644 --- a/rbi/hanzoai/models/global/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/global/spend_list_tags_response.rbi @@ -217,7 +217,9 @@ module Hanzoai extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -236,13 +238,21 @@ module Hanzoai ], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module Response extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -261,6 +271,12 @@ module Hanzoai ], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module StartTime diff --git a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi index 2ac16f5e..2ecd17fc 100644 --- a/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi +++ b/rbi/hanzoai/models/global/spend_retrieve_report_response.rbi @@ -217,7 +217,9 @@ module Hanzoai extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -236,13 +238,21 @@ module Hanzoai ], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module Response extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -261,6 +271,12 @@ module Hanzoai ], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module StartTime diff --git a/rbi/hanzoai/models/guardrail_list_response.rbi b/rbi/hanzoai/models/guardrail_list_response.rbi index b324fde9..df181f3d 100644 --- a/rbi/hanzoai/models/guardrail_list_response.rbi +++ b/rbi/hanzoai/models/guardrail_list_response.rbi @@ -45,125 +45,379 @@ module Hanzoai ) end - sig { returns(T.nilable(T.anything)) } - attr_accessor :guardrail_info - sig { returns(String) } attr_accessor :guardrail_name - # The returned LLM Params object for /guardrails/list + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + sig do - returns(Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams) + returns( + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation::TaggedSymbol + ) + ) + end + attr_reader :guardrail_definition_location + + sig do + params( + guardrail_definition_location: + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation::OrSymbol + ).void + end + attr_writer :guardrail_definition_location + + sig { returns(T.nilable(String)) } + attr_accessor :guardrail_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :guardrail_info + + sig do + returns( + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams + ) + ) end - attr_reader :llm_params + attr_reader :litellm_params sig do params( - llm_params: - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::OrHash + litellm_params: + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::OrHash + ) ).void end - attr_writer :llm_params + attr_writer :litellm_params + + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at sig do params( - guardrail_info: T.nilable(T.anything), guardrail_name: String, - llm_params: - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::OrHash + created_at: T.nilable(Time), + guardrail_definition_location: + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation::OrSymbol, + guardrail_id: T.nilable(String), + guardrail_info: T.nilable(T::Hash[Symbol, T.anything]), + litellm_params: + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::OrHash + ), + updated_at: T.nilable(Time) ).returns(T.attached_class) end def self.new( - guardrail_info:, guardrail_name:, - # The returned LLM Params object for /guardrails/list - llm_params: + created_at: nil, + guardrail_definition_location: nil, + guardrail_id: nil, + guardrail_info: nil, + litellm_params: nil, + updated_at: nil ) end sig do override.returns( { - guardrail_info: T.nilable(T.anything), guardrail_name: String, - llm_params: - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams + created_at: T.nilable(Time), + guardrail_definition_location: + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation::TaggedSymbol, + guardrail_id: T.nilable(String), + guardrail_info: T.nilable(T::Hash[Symbol, T.anything]), + litellm_params: + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams + ), + updated_at: T.nilable(Time) } ) end def to_hash end - class LlmParams < Hanzoai::Internal::Type::BaseModel + module GuardrailDefinitionLocation + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + DB = + T.let( + :db, + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation::TaggedSymbol + ) + CONFIG = + T.let( + :config, + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Models::GuardrailListResponse::Guardrail::GuardrailDefinitionLocation::TaggedSymbol + ] + ) + end + def self.values + end + end + + class LitellmParams < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do T.any( - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams, + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams, Hanzoai::Internal::AnyHash ) end - sig { returns(String) } - attr_accessor :guardrail + # Additional provider-specific parameters for generic guardrail APIs + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :additional_provider_specific_params + + # Base URL for the guardrail service API + sig { returns(T.nilable(String)) } + attr_accessor :api_base + + # Optional custom API endpoint for Model Armor + sig { returns(T.nilable(String)) } + attr_accessor :api_endpoint + # API key for the guardrail service + sig { returns(T.nilable(String)) } + attr_accessor :api_key + + # Threshold configuration for Lakera guardrail categories sig do returns( - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds + ) ) end - attr_accessor :mode + attr_reader :category_thresholds + + sig do + params( + category_thresholds: + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds::OrHash + ) + ).void + end + attr_writer :category_thresholds + # Path to Google Cloud credentials JSON file or JSON string + sig { returns(T.nilable(String)) } + attr_accessor :credentials + + # Whether the guardrail is enabled by default + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :default_on + + # Configuration for detect-secrets guardrail + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :detect_secrets_config + + # When True, guardrails only receive the latest message for the relevant role + # (e.g., newest user input pre-call, newest assistant output post-call) sig { returns(T.nilable(T::Boolean)) } - attr_reader :default_on + attr_accessor :experimental_use_latest_role_message_only - sig { params(default_on: T::Boolean).void } - attr_writer :default_on + # Whether to fail the request if Model Armor encounters an error + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :fail_on_error + + # Name of the guardrail in guardrails.ai + sig { returns(T.nilable(String)) } + attr_accessor :guard_name + + # Google Cloud location/region (e.g., us-central1) + sig { returns(T.nilable(String)) } + attr_accessor :location + + # Will mask request content if guardrail makes any changes + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :mask_request_content + + # Will mask response content if guardrail makes any changes + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :mask_response_content + + # Optional field if guardrail requires a 'model' parameter + sig { returns(T.nilable(String)) } + attr_accessor :model + + # Recipe for input (LLM request) + sig { returns(T.nilable(String)) } + attr_accessor :pangea_input_recipe + + # Recipe for output (LLM response) + sig { returns(T.nilable(String)) } + attr_accessor :pangea_output_recipe + + # The ID of your Model Armor template + sig { returns(T.nilable(String)) } + attr_accessor :template_id + + # Custom message when a guardrail blocks an action. Supports placeholders like + # {tool_name}, {rule_id}, and {default_message}. + sig { returns(T.nilable(String)) } + attr_accessor :violation_message_template - # The returned LLM Params object for /guardrails/list sig do params( - guardrail: String, - mode: - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants, - default_on: T::Boolean + additional_provider_specific_params: + T.nilable(T::Hash[Symbol, T.anything]), + api_base: T.nilable(String), + api_endpoint: T.nilable(String), + api_key: T.nilable(String), + category_thresholds: + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds::OrHash + ), + credentials: T.nilable(String), + default_on: T.nilable(T::Boolean), + detect_secrets_config: T.nilable(T::Hash[Symbol, T.anything]), + experimental_use_latest_role_message_only: T.nilable(T::Boolean), + fail_on_error: T.nilable(T::Boolean), + guard_name: T.nilable(String), + location: T.nilable(String), + mask_request_content: T.nilable(T::Boolean), + mask_response_content: T.nilable(T::Boolean), + model: T.nilable(String), + pangea_input_recipe: T.nilable(String), + pangea_output_recipe: T.nilable(String), + template_id: T.nilable(String), + violation_message_template: T.nilable(String) ).returns(T.attached_class) end - def self.new(guardrail:, mode:, default_on: nil) + def self.new( + # Additional provider-specific parameters for generic guardrail APIs + additional_provider_specific_params: nil, + # Base URL for the guardrail service API + api_base: nil, + # Optional custom API endpoint for Model Armor + api_endpoint: nil, + # API key for the guardrail service + api_key: nil, + # Threshold configuration for Lakera guardrail categories + category_thresholds: nil, + # Path to Google Cloud credentials JSON file or JSON string + credentials: nil, + # Whether the guardrail is enabled by default + default_on: nil, + # Configuration for detect-secrets guardrail + detect_secrets_config: nil, + # When True, guardrails only receive the latest message for the relevant role + # (e.g., newest user input pre-call, newest assistant output post-call) + experimental_use_latest_role_message_only: nil, + # Whether to fail the request if Model Armor encounters an error + fail_on_error: nil, + # Name of the guardrail in guardrails.ai + guard_name: nil, + # Google Cloud location/region (e.g., us-central1) + location: nil, + # Will mask request content if guardrail makes any changes + mask_request_content: nil, + # Will mask response content if guardrail makes any changes + mask_response_content: nil, + # Optional field if guardrail requires a 'model' parameter + model: nil, + # Recipe for input (LLM request) + pangea_input_recipe: nil, + # Recipe for output (LLM response) + pangea_output_recipe: nil, + # The ID of your Model Armor template + template_id: nil, + # Custom message when a guardrail blocks an action. Supports placeholders like + # {tool_name}, {rule_id}, and {default_message}. + violation_message_template: nil + ) end sig do override.returns( { - guardrail: String, - mode: - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants, - default_on: T::Boolean + additional_provider_specific_params: + T.nilable(T::Hash[Symbol, T.anything]), + api_base: T.nilable(String), + api_endpoint: T.nilable(String), + api_key: T.nilable(String), + category_thresholds: + T.nilable( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds + ), + credentials: T.nilable(String), + default_on: T.nilable(T::Boolean), + detect_secrets_config: T.nilable(T::Hash[Symbol, T.anything]), + experimental_use_latest_role_message_only: + T.nilable(T::Boolean), + fail_on_error: T.nilable(T::Boolean), + guard_name: T.nilable(String), + location: T.nilable(String), + mask_request_content: T.nilable(T::Boolean), + mask_response_content: T.nilable(T::Boolean), + model: T.nilable(String), + pangea_input_recipe: T.nilable(String), + pangea_output_recipe: T.nilable(String), + template_id: T.nilable(String), + violation_message_template: T.nilable(String) } ) end def to_hash end - module Mode - extend Hanzoai::Internal::Type::Union + class CategoryThresholds < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Float)) } + attr_reader :jailbreak + + sig { params(jailbreak: Float).void } + attr_writer :jailbreak + + sig { returns(T.nilable(Float)) } + attr_reader :prompt_injection - Variants = T.type_alias { T.any(String, T::Array[String]) } + sig { params(prompt_injection: Float).void } + attr_writer :prompt_injection + # Threshold configuration for Lakera guardrail categories sig do - override.returns( - T::Array[ - Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::Mode::Variants - ] + params(jailbreak: Float, prompt_injection: Float).returns( + T.attached_class ) end - def self.variants + def self.new(jailbreak: nil, prompt_injection: nil) end - StringArray = - T.let( - Hanzoai::Internal::Type::ArrayOf[String], - Hanzoai::Internal::Type::Converter - ) + sig do + override.returns({ jailbreak: Float, prompt_injection: Float }) + end + def to_hash + end end end end diff --git a/rbi/hanzoai/models/health_check_all_params.rbi b/rbi/hanzoai/models/health_check_all_params.rbi index 838a4827..be348f61 100644 --- a/rbi/hanzoai/models/health_check_all_params.rbi +++ b/rbi/hanzoai/models/health_check_all_params.rbi @@ -15,22 +15,33 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :model + # Specify the model ID (optional) + sig { returns(T.nilable(String)) } + attr_accessor :model_id + sig do params( model: T.nilable(String), + model_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( # Specify the model name (optional) model: nil, + # Specify the model ID (optional) + model_id: nil, request_options: {} ) end sig do override.returns( - { model: T.nilable(String), request_options: Hanzoai::RequestOptions } + { + model: T.nilable(String), + model_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } ) end def to_hash diff --git a/rbi/hanzoai/models/health_check_services_params.rbi b/rbi/hanzoai/models/health_check_services_params.rbi index 3bbe5fb6..428ffec5 100644 --- a/rbi/hanzoai/models/health_check_services_params.rbi +++ b/rbi/hanzoai/models/health_check_services_params.rbi @@ -87,6 +87,11 @@ module Hanzoai :langfuse, Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol ) + LANGFUSE_OTEL = + T.let( + :langfuse_otel, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) SLACK = T.let( :slack, @@ -117,6 +122,18 @@ module Hanzoai :datadog, Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol ) + GENERIC_API = + T.let( + :generic_api, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + ARIZE = + T.let( + :arize, + Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol + ) + SQS = + T.let(:sqs, Hanzoai::HealthCheckServicesParams::Service::TaggedSymbol) end end end diff --git a/rbi/hanzoai/models/images/generation_create_params.rbi b/rbi/hanzoai/models/images/generation_create_params.rbi index c9018a35..fe4aefe6 100644 --- a/rbi/hanzoai/models/images/generation_create_params.rbi +++ b/rbi/hanzoai/models/images/generation_create_params.rbi @@ -15,15 +15,26 @@ module Hanzoai ) end + sig { returns(T.nilable(String)) } + attr_accessor :model + sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T.attached_class - ) + params( + model: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end - def self.new(request_options: {}) + def self.new(model: nil, request_options: {}) end - sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + sig do + override.returns( + { + model: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end def to_hash end end diff --git a/rbi/hanzoai/models/key/regenerate_key_request.rbi b/rbi/hanzoai/models/key/regenerate_key_request.rbi index 52cd9ae3..0c80d418 100644 --- a/rbi/hanzoai/models/key/regenerate_key_request.rbi +++ b/rbi/hanzoai/models/key/regenerate_key_request.rbi @@ -12,12 +12,33 @@ module Hanzoai ) end - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :aliases sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :allowed_cache_controls + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_passthrough_routes + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex + ] + ) + ) + end + attr_accessor :allowed_vector_store_indexes + + # Whether this key should be automatically rotated + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :auto_rotate + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -27,7 +48,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_id - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :config sig { returns(T.nilable(String)) } @@ -45,36 +66,99 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :key_alias + # Enum for key types that determine what routes a key can access + sig do + returns( + T.nilable(Hanzoai::Key::RegenerateKeyRequest::KeyType::OrSymbol) + ) + end + attr_accessor :key_type + sig { returns(T.nilable(Float)) } attr_accessor :max_budget sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_rpm_limit - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_tpm_limit sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models + sig { returns(T.nilable(String)) } + attr_accessor :new_key + sig { returns(T.nilable(String)) } attr_accessor :new_master_key - sig { returns(T.nilable(T.anything)) } + sig do + returns( + T.nilable(Hanzoai::Key::RegenerateKeyRequest::ObjectPermission) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :organization_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :permissions + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + + # How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + sig { returns(T.nilable(String)) } + attr_accessor :rotation_interval + + # Set of params that you can modify via `router.update_settings()`. + sig do + returns(T.nilable(Hanzoai::Key::RegenerateKeyRequest::RouterSettings)) + end + attr_reader :router_settings + + sig do + params( + router_settings: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::RouterSettings::OrHash + ) + ).void + end + attr_writer :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit + sig do + returns( + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::OrSymbol + ) + ) + end + attr_accessor :rpm_limit_type + sig { returns(T.nilable(T::Boolean)) } attr_accessor :send_invite_email @@ -93,44 +177,89 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig do + returns( + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::OrSymbol + ) + ) + end + attr_accessor :tpm_limit_type + sig { returns(T.nilable(String)) } attr_accessor :user_id sig do params( - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::OrHash + ] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key: T.nilable(String), key_alias: T.nilable(String), + key_type: + T.nilable(Hanzoai::Key::RegenerateKeyRequest::KeyType::OrSymbol), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), + new_key: T.nilable(String), new_master_key: T.nilable(String), - permissions: T.nilable(T.anything), + object_permission: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::ObjectPermission::OrHash + ), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::RouterSettings::OrHash + ), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::OrSymbol + ), send_invite_email: T.nilable(T::Boolean), soft_budget: T.nilable(Float), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::OrSymbol + ), user_id: T.nilable(String) ).returns(T.attached_class) end def self.new( aliases: nil, allowed_cache_controls: nil, + allowed_passthrough_routes: nil, + allowed_routes: nil, + allowed_vector_store_indexes: nil, + # Whether this key should be automatically rotated + auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, @@ -140,6 +269,8 @@ module Hanzoai guardrails: nil, key: nil, key_alias: nil, + # Enum for key types that determine what routes a key can access + key_type: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, @@ -147,15 +278,25 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + new_key: nil, new_master_key: nil, + object_permission: nil, + organization_id: nil, permissions: nil, + prompts: nil, + # How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + rotation_interval: nil, + # Set of params that you can modify via `router.update_settings()`. + router_settings: nil, rpm_limit: nil, + rpm_limit_type: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, + tpm_limit_type: nil, user_id: nil ) end @@ -163,39 +304,478 @@ module Hanzoai sig do override.returns( { - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex + ] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key: T.nilable(String), key_alias: T.nilable(String), + key_type: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::KeyType::OrSymbol + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), + new_key: T.nilable(String), new_master_key: T.nilable(String), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::Key::RegenerateKeyRequest::ObjectPermission), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable(Hanzoai::Key::RegenerateKeyRequest::RouterSettings), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::OrSymbol + ), send_invite_email: T.nilable(T::Boolean), soft_budget: T.nilable(Float), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::OrSymbol + ), user_id: T.nilable(String) } ) end def to_hash end + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :index_name + + sig do + returns( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ) + end + attr_accessor :index_permissions + + sig do + params( + index_name: String, + index_permissions: + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ).returns(T.attached_class) + end + def self.new(index_name:, index_permissions:) + end + + sig do + override.returns( + { + index_name: String, + index_permissions: + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + } + ) + end + def to_hash + end + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + READ = + T.let( + :read, + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + WRITE = + T.let( + :write, + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + # Enum for key types that determine what routes a key can access + module KeyType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Key::RegenerateKeyRequest::KeyType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + LLM_API = + T.let( + :llm_api, + Hanzoai::Key::RegenerateKeyRequest::KeyType::TaggedSymbol + ) + MANAGEMENT = + T.let( + :management, + Hanzoai::Key::RegenerateKeyRequest::KeyType::TaggedSymbol + ) + READ_ONLY = + T.let( + :read_only, + Hanzoai::Key::RegenerateKeyRequest::KeyType::TaggedSymbol + ) + DEFAULT = + T.let( + :default, + Hanzoai::Key::RegenerateKeyRequest::KeyType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::KeyType::TaggedSymbol + ] + ) + end + def self.values + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Key::RegenerateKeyRequest::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Key::RegenerateKeyRequest::RouterSettings, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Integer)) } + attr_accessor :allowed_fails + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :context_window_fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :cooldown_time + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_retries + + sig do + returns( + T.nilable( + T::Hash[ + Symbol, + Hanzoai::Key::RegenerateKeyRequest::RouterSettings::ModelGroupAlias::Variants + ] + ) + ) + end + attr_accessor :model_group_alias + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_group_retry_policy + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(Float)) } + attr_accessor :retry_after + + sig { returns(T.nilable(String)) } + attr_accessor :routing_strategy + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :routing_strategy_args + + sig { returns(T.nilable(Float)) } + attr_accessor :timeout + + # Set of params that you can modify via `router.update_settings()`. + sig do + params( + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::Key::RegenerateKeyRequest::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + ).returns(T.attached_class) + end + def self.new( + allowed_fails: nil, + context_window_fallbacks: nil, + cooldown_time: nil, + fallbacks: nil, + max_retries: nil, + model_group_alias: nil, + model_group_retry_policy: nil, + num_retries: nil, + retry_after: nil, + routing_strategy: nil, + routing_strategy_args: nil, + timeout: nil + ) + end + + sig do + override.returns( + { + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::Key::RegenerateKeyRequest::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: + T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + } + ) + end + def to_hash + end + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::RouterSettings::ModelGroupAlias::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Key::RegenerateKeyRequest::RpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::TaggedSymbol + ] + ) + end + def self.values + end + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Key::RegenerateKeyRequest::TpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::TaggedSymbol + ] + ) + end + def self.values + end + end end end end diff --git a/rbi/hanzoai/models/key_block_params.rbi b/rbi/hanzoai/models/key_block_params.rbi index a896c762..a8132fc6 100644 --- a/rbi/hanzoai/models/key_block_params.rbi +++ b/rbi/hanzoai/models/key_block_params.rbi @@ -11,31 +11,36 @@ module Hanzoai T.any(Hanzoai::KeyBlockParams, Hanzoai::Internal::AnyHash) end - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end sig do override.returns( - { llm_changed_by: String, request_options: Hanzoai::RequestOptions } + { + litellm_changed_by: String, + request_options: Hanzoai::RequestOptions + } ) end def to_hash diff --git a/rbi/hanzoai/models/key_block_response.rbi b/rbi/hanzoai/models/key_block_response.rbi index 63e72344..8deb6828 100644 --- a/rbi/hanzoai/models/key_block_response.rbi +++ b/rbi/hanzoai/models/key_block_response.rbi @@ -11,15 +11,21 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :token - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :aliases - sig { params(aliases: T.anything).void } + sig { params(aliases: T::Hash[Symbol, T.anything]).void } attr_writer :aliases sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :allowed_cache_controls + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :auto_rotate + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -29,10 +35,10 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :budget_reset_at - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :config - sig { params(config: T.anything).void } + sig { params(config: T::Hash[Symbol, T.anything]).void } attr_writer :config sig { returns(T.nilable(Time)) } @@ -52,8 +58,14 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :key_name - sig { returns(T.nilable(T.anything)) } - attr_accessor :llm_budget_table + sig { returns(T.nilable(Time)) } + attr_accessor :key_rotation_at + + sig { returns(T.nilable(Time)) } + attr_accessor :last_rotation_at + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :litellm_budget_table sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -61,22 +73,22 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :metadata - sig { params(metadata: T.anything).void } + sig { params(metadata: T::Hash[Symbol, T.anything]).void } attr_writer :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :model_max_budget - sig { params(model_max_budget: T.anything).void } + sig { params(model_max_budget: T::Hash[Symbol, T.anything]).void } attr_writer :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :model_spend - sig { params(model_spend: T.anything).void } + sig { params(model_spend: T::Hash[Symbol, T.anything]).void } attr_writer :model_spend sig { returns(T.nilable(T::Array[T.anything])) } @@ -85,15 +97,43 @@ module Hanzoai sig { params(models: T::Array[T.anything]).void } attr_writer :models + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns(T.nilable(Hanzoai::Models::KeyBlockResponse::ObjectPermission)) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::KeyBlockResponse::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + sig { returns(T.nilable(String)) } attr_accessor :org_id - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :permissions - sig { params(permissions: T.anything).void } + sig { params(permissions: T::Hash[Symbol, T.anything]).void } attr_writer :permissions + sig { returns(T.nilable(Integer)) } + attr_accessor :rotation_count + + sig { returns(T.nilable(String)) } + attr_accessor :rotation_interval + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit @@ -127,27 +167,39 @@ module Hanzoai sig do params( token: T.nilable(String), - aliases: T.anything, + aliases: T::Hash[Symbol, T.anything], allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), - config: T.anything, + config: T::Hash[Symbol, T.anything], created_at: T.nilable(Time), created_by: T.nilable(String), expires: T.nilable(Hanzoai::Models::KeyBlockResponse::Expires::Variants), key_alias: T.nilable(String), key_name: T.nilable(String), - llm_budget_table: T.nilable(T.anything), + key_rotation_at: T.nilable(Time), + last_rotation_at: T.nilable(Time), + litellm_budget_table: T.nilable(T::Hash[Symbol, T.anything]), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.anything, - model_max_budget: T.anything, - model_spend: T.anything, + metadata: T::Hash[Symbol, T.anything], + model_max_budget: T::Hash[Symbol, T.anything], + model_spend: T::Hash[Symbol, T.anything], models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::KeyBlockResponse::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), org_id: T.nilable(String), - permissions: T.anything, + permissions: T::Hash[Symbol, T.anything], + rotation_count: T.nilable(Integer), + rotation_interval: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), soft_budget_cooldown: T::Boolean, spend: Float, @@ -162,6 +214,8 @@ module Hanzoai token: nil, aliases: nil, allowed_cache_controls: nil, + allowed_routes: nil, + auto_rotate: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, @@ -171,15 +225,23 @@ module Hanzoai expires: nil, key_alias: nil, key_name: nil, - llm_budget_table: nil, + key_rotation_at: nil, + last_rotation_at: nil, + litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, org_id: nil, permissions: nil, + rotation_count: nil, + rotation_interval: nil, + router_settings: nil, rpm_limit: nil, soft_budget_cooldown: nil, spend: nil, @@ -195,27 +257,37 @@ module Hanzoai override.returns( { token: T.nilable(String), - aliases: T.anything, + aliases: T::Hash[Symbol, T.anything], allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), - config: T.anything, + config: T::Hash[Symbol, T.anything], created_at: T.nilable(Time), created_by: T.nilable(String), expires: T.nilable(Hanzoai::Models::KeyBlockResponse::Expires::Variants), key_alias: T.nilable(String), key_name: T.nilable(String), - llm_budget_table: T.nilable(T.anything), + key_rotation_at: T.nilable(Time), + last_rotation_at: T.nilable(Time), + litellm_budget_table: T.nilable(T::Hash[Symbol, T.anything]), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.anything, - model_max_budget: T.anything, - model_spend: T.anything, + metadata: T::Hash[Symbol, T.anything], + model_max_budget: T::Hash[Symbol, T.anything], + model_spend: T::Hash[Symbol, T.anything], models: T::Array[T.anything], + object_permission: + T.nilable(Hanzoai::Models::KeyBlockResponse::ObjectPermission), + object_permission_id: T.nilable(String), org_id: T.nilable(String), - permissions: T.anything, + permissions: T::Hash[Symbol, T.anything], + rotation_count: T.nilable(Integer), + rotation_interval: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), soft_budget_cooldown: T::Boolean, spend: Float, @@ -243,6 +315,77 @@ module Hanzoai def self.variants end end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::KeyBlockResponse::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end end end end diff --git a/rbi/hanzoai/models/key_delete_params.rbi b/rbi/hanzoai/models/key_delete_params.rbi index 4a2c4fe5..aa159a27 100644 --- a/rbi/hanzoai/models/key_delete_params.rbi +++ b/rbi/hanzoai/models/key_delete_params.rbi @@ -17,28 +17,30 @@ module Hanzoai sig { returns(T.nilable(T::Array[String])) } attr_accessor :keys - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( key_aliases: T.nilable(T::Array[String]), keys: T.nilable(T::Array[String]), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( key_aliases: nil, keys: nil, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -48,7 +50,7 @@ module Hanzoai { key_aliases: T.nilable(T::Array[String]), keys: T.nilable(T::Array[String]), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/key_generate_params.rbi b/rbi/hanzoai/models/key_generate_params.rbi index 07934dc2..1204c50c 100644 --- a/rbi/hanzoai/models/key_generate_params.rbi +++ b/rbi/hanzoai/models/key_generate_params.rbi @@ -11,12 +11,31 @@ module Hanzoai T.any(Hanzoai::KeyGenerateParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :aliases sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :allowed_cache_controls + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_passthrough_routes + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + + sig do + returns( + T.nilable( + T::Array[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex] + ) + ) + end + attr_accessor :allowed_vector_store_indexes + + # Whether this key should be automatically rotated + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :auto_rotate + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -26,7 +45,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_id - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :config sig { returns(T.nilable(String)) } @@ -44,33 +63,75 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :key_alias + # Enum for key types that determine what routes a key can access + sig { returns(T.nilable(Hanzoai::KeyGenerateParams::KeyType::OrSymbol)) } + attr_accessor :key_type + sig { returns(T.nilable(Float)) } attr_accessor :max_budget sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_rpm_limit - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_tpm_limit sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(Hanzoai::KeyGenerateParams::ObjectPermission)) } + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable(Hanzoai::KeyGenerateParams::ObjectPermission::OrHash) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :organization_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :permissions + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + + # How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + sig { returns(T.nilable(String)) } + attr_accessor :rotation_interval + + # Set of params that you can modify via `router.update_settings()`. + sig { returns(T.nilable(Hanzoai::KeyGenerateParams::RouterSettings)) } + attr_reader :router_settings + + sig do + params( + router_settings: + T.nilable(Hanzoai::KeyGenerateParams::RouterSettings::OrHash) + ).void + end + attr_writer :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit + sig do + returns(T.nilable(Hanzoai::KeyGenerateParams::RpmLimitType::OrSymbol)) + end + attr_accessor :rpm_limit_type + sig { returns(T.nilable(T::Boolean)) } attr_accessor :send_invite_email @@ -89,53 +150,85 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig do + returns(T.nilable(Hanzoai::KeyGenerateParams::TpmLimitType::OrSymbol)) + end + attr_accessor :tpm_limit_type + sig { returns(T.nilable(String)) } attr_accessor :user_id - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::OrHash + ] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key: T.nilable(String), key_alias: T.nilable(String), + key_type: T.nilable(Hanzoai::KeyGenerateParams::KeyType::OrSymbol), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::KeyGenerateParams::ObjectPermission::OrHash), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable(Hanzoai::KeyGenerateParams::RouterSettings::OrHash), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::KeyGenerateParams::RpmLimitType::OrSymbol), send_invite_email: T.nilable(T::Boolean), soft_budget: T.nilable(Float), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable(Hanzoai::KeyGenerateParams::TpmLimitType::OrSymbol), user_id: T.nilable(String), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( aliases: nil, allowed_cache_controls: nil, + allowed_passthrough_routes: nil, + allowed_routes: nil, + allowed_vector_store_indexes: nil, + # Whether this key should be automatically rotated + auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, @@ -145,6 +238,8 @@ module Hanzoai guardrails: nil, key: nil, key_alias: nil, + # Enum for key types that determine what routes a key can access + key_type: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, @@ -152,18 +247,28 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, + organization_id: nil, permissions: nil, + prompts: nil, + # How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True + rotation_interval: nil, + # Set of params that you can modify via `router.update_settings()`. + router_settings: nil, rpm_limit: nil, + rpm_limit_type: nil, send_invite_email: nil, soft_budget: nil, spend: nil, tags: nil, team_id: nil, tpm_limit: nil, + tpm_limit_type: nil, user_id: nil, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -171,40 +276,444 @@ module Hanzoai sig do override.returns( { - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key: T.nilable(String), key_alias: T.nilable(String), + key_type: T.nilable(Hanzoai::KeyGenerateParams::KeyType::OrSymbol), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::KeyGenerateParams::ObjectPermission), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable(Hanzoai::KeyGenerateParams::RouterSettings), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::KeyGenerateParams::RpmLimitType::OrSymbol), send_invite_email: T.nilable(T::Boolean), soft_budget: T.nilable(Float), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable(Hanzoai::KeyGenerateParams::TpmLimitType::OrSymbol), user_id: T.nilable(String), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) end def to_hash end + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :index_name + + sig do + returns( + T::Array[ + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ) + end + attr_accessor :index_permissions + + sig do + params( + index_name: String, + index_permissions: + T::Array[ + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ).returns(T.attached_class) + end + def self.new(index_name:, index_permissions:) + end + + sig do + override.returns( + { + index_name: String, + index_permissions: + T::Array[ + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + } + ) + end + def to_hash + end + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + READ = + T.let( + :read, + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + WRITE = + T.let( + :write, + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + # Enum for key types that determine what routes a key can access + module KeyType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Hanzoai::KeyGenerateParams::KeyType) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + LLM_API = + T.let(:llm_api, Hanzoai::KeyGenerateParams::KeyType::TaggedSymbol) + MANAGEMENT = + T.let(:management, Hanzoai::KeyGenerateParams::KeyType::TaggedSymbol) + READ_ONLY = + T.let(:read_only, Hanzoai::KeyGenerateParams::KeyType::TaggedSymbol) + DEFAULT = + T.let(:default, Hanzoai::KeyGenerateParams::KeyType::TaggedSymbol) + + sig do + override.returns( + T::Array[Hanzoai::KeyGenerateParams::KeyType::TaggedSymbol] + ) + end + def self.values + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::KeyGenerateParams::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::KeyGenerateParams::RouterSettings, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Integer)) } + attr_accessor :allowed_fails + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :context_window_fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :cooldown_time + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_retries + + sig do + returns( + T.nilable( + T::Hash[ + Symbol, + Hanzoai::KeyGenerateParams::RouterSettings::ModelGroupAlias::Variants + ] + ) + ) + end + attr_accessor :model_group_alias + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_group_retry_policy + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(Float)) } + attr_accessor :retry_after + + sig { returns(T.nilable(String)) } + attr_accessor :routing_strategy + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :routing_strategy_args + + sig { returns(T.nilable(Float)) } + attr_accessor :timeout + + # Set of params that you can modify via `router.update_settings()`. + sig do + params( + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::KeyGenerateParams::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + ).returns(T.attached_class) + end + def self.new( + allowed_fails: nil, + context_window_fallbacks: nil, + cooldown_time: nil, + fallbacks: nil, + max_retries: nil, + model_group_alias: nil, + model_group_retry_policy: nil, + num_retries: nil, + retry_after: nil, + routing_strategy: nil, + routing_strategy_args: nil, + timeout: nil + ) + end + + sig do + override.returns( + { + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::KeyGenerateParams::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + } + ) + end + def to_hash + end + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::KeyGenerateParams::RouterSettings::ModelGroupAlias::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::KeyGenerateParams::RpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::KeyGenerateParams::RpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::KeyGenerateParams::RpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::KeyGenerateParams::RpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[Hanzoai::KeyGenerateParams::RpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::KeyGenerateParams::TpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::KeyGenerateParams::TpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::KeyGenerateParams::TpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::KeyGenerateParams::TpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[Hanzoai::KeyGenerateParams::TpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end end end end diff --git a/rbi/hanzoai/models/key_list_params.rbi b/rbi/hanzoai/models/key_list_params.rbi index dfda5dfc..b701c34f 100644 --- a/rbi/hanzoai/models/key_list_params.rbi +++ b/rbi/hanzoai/models/key_list_params.rbi @@ -11,6 +11,17 @@ module Hanzoai T.any(Hanzoai::KeyListParams, Hanzoai::Internal::AnyHash) end + # Expand related objects (e.g. 'user') + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :expand + + # Include keys created by the user + sig { returns(T.nilable(T::Boolean)) } + attr_reader :include_created_by_keys + + sig { params(include_created_by_keys: T::Boolean).void } + attr_writer :include_created_by_keys + # Include all keys for teams that user is an admin of. sig { returns(T.nilable(T::Boolean)) } attr_reader :include_team_keys @@ -22,6 +33,10 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :key_alias + # Filter keys by key hash + sig { returns(T.nilable(String)) } + attr_accessor :key_hash + # Filter keys by organization ID sig { returns(T.nilable(String)) } attr_accessor :organization_id @@ -47,6 +62,21 @@ module Hanzoai sig { params(size: Integer).void } attr_writer :size + # Column to sort by (e.g. 'user_id', 'created_at', 'spend') + sig { returns(T.nilable(String)) } + attr_accessor :sort_by + + # Sort order ('asc' or 'desc') + sig { returns(T.nilable(String)) } + attr_reader :sort_order + + sig { params(sort_order: String).void } + attr_writer :sort_order + + # Filter by status (e.g. 'deleted') + sig { returns(T.nilable(String)) } + attr_accessor :status + # Filter keys by team ID sig { returns(T.nilable(String)) } attr_accessor :team_id @@ -57,22 +87,34 @@ module Hanzoai sig do params( + expand: T.nilable(T::Array[String]), + include_created_by_keys: T::Boolean, include_team_keys: T::Boolean, key_alias: T.nilable(String), + key_hash: T.nilable(String), organization_id: T.nilable(String), page: Integer, return_full_object: T::Boolean, size: Integer, + sort_by: T.nilable(String), + sort_order: String, + status: T.nilable(String), team_id: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( + # Expand related objects (e.g. 'user') + expand: nil, + # Include keys created by the user + include_created_by_keys: nil, # Include all keys for teams that user is an admin of. include_team_keys: nil, # Filter keys by key alias key_alias: nil, + # Filter keys by key hash + key_hash: nil, # Filter keys by organization ID organization_id: nil, # Page number @@ -81,6 +123,12 @@ module Hanzoai return_full_object: nil, # Page size size: nil, + # Column to sort by (e.g. 'user_id', 'created_at', 'spend') + sort_by: nil, + # Sort order ('asc' or 'desc') + sort_order: nil, + # Filter by status (e.g. 'deleted') + status: nil, # Filter keys by team ID team_id: nil, # Filter keys by user ID @@ -92,12 +140,18 @@ module Hanzoai sig do override.returns( { + expand: T.nilable(T::Array[String]), + include_created_by_keys: T::Boolean, include_team_keys: T::Boolean, key_alias: T.nilable(String), + key_hash: T.nilable(String), organization_id: T.nilable(String), page: Integer, return_full_object: T::Boolean, size: Integer, + sort_by: T.nilable(String), + sort_order: String, + status: T.nilable(String), team_id: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions diff --git a/rbi/hanzoai/models/key_list_response.rbi b/rbi/hanzoai/models/key_list_response.rbi index 10f00a06..5b9ed89f 100644 --- a/rbi/hanzoai/models/key_list_response.rbi +++ b/rbi/hanzoai/models/key_list_response.rbi @@ -24,7 +24,8 @@ module Hanzoai T::Array[ T.any( String, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::OrHash + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::OrHash, + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::OrHash ) ] ).void @@ -44,7 +45,8 @@ module Hanzoai T::Array[ T.any( String, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::OrHash + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::OrHash, + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::OrHash ) ], total_count: T.nilable(Integer), @@ -78,7 +80,11 @@ module Hanzoai Variants = T.type_alias do - T.any(String, Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth) + T.any( + String, + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth, + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken + ) end class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel @@ -93,10 +99,10 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :token - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :aliases - sig { params(aliases: T.anything).void } + sig { params(aliases: T::Hash[Symbol, T.anything]).void } attr_writer :aliases sig { returns(T.nilable(T::Array[T.anything])) } @@ -111,9 +117,15 @@ module Hanzoai end attr_accessor :allowed_model_region + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + sig { returns(T.nilable(String)) } attr_accessor :api_key + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :auto_rotate + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -123,10 +135,10 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :budget_reset_at - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :config - sig { params(config: T.anything).void } + sig { params(config: T::Hash[Symbol, T.anything]).void } attr_writer :config sig { returns(T.nilable(Time)) } @@ -162,11 +174,17 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :key_name + sig { returns(T.nilable(Time)) } + attr_accessor :key_rotation_at + sig { returns(T.nilable(Float)) } attr_accessor :last_refreshed_at - sig { returns(T.nilable(T.anything)) } - attr_accessor :llm_budget_table + sig { returns(T.nilable(Time)) } + attr_accessor :last_rotation_at + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :litellm_budget_table sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -174,22 +192,22 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :metadata - sig { params(metadata: T.anything).void } + sig { params(metadata: T::Hash[Symbol, T.anything]).void } attr_writer :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :model_max_budget - sig { params(model_max_budget: T.anything).void } + sig { params(model_max_budget: T::Hash[Symbol, T.anything]).void } attr_writer :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :model_spend - sig { params(model_spend: T.anything).void } + sig { params(model_spend: T::Hash[Symbol, T.anything]).void } attr_writer :model_spend sig { returns(T.nilable(T::Array[T.anything])) } @@ -198,21 +216,68 @@ module Hanzoai sig { params(models: T::Array[T.anything]).void } attr_writer :models + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission + ) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + sig { returns(T.nilable(String)) } attr_accessor :org_id + sig { returns(T.nilable(Float)) } + attr_accessor :organization_max_budget + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :organization_metadata + + sig { returns(T.nilable(Integer)) } + attr_accessor :organization_rpm_limit + + sig { returns(T.nilable(Integer)) } + attr_accessor :organization_tpm_limit + sig { returns(T.nilable(T.anything)) } attr_reader :parent_otel_span sig { params(parent_otel_span: T.anything).void } attr_writer :parent_otel_span - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :permissions - sig { params(permissions: T.anything).void } + sig { params(permissions: T::Hash[Symbol, T.anything]).void } attr_writer :permissions + sig { returns(T.nilable(String)) } + attr_accessor :request_route + + sig { returns(T.nilable(Integer)) } + attr_accessor :rotation_count + + sig { returns(T.nilable(String)) } + attr_accessor :rotation_interval + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit @@ -255,13 +320,19 @@ module Hanzoai sig { params(team_member: T.nilable(Hanzoai::Member::OrHash)).void } attr_writer :team_member + sig { returns(T.nilable(Integer)) } + attr_accessor :team_member_rpm_limit + sig { returns(T.nilable(Float)) } attr_accessor :team_member_spend - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(Integer)) } + attr_accessor :team_member_tpm_limit + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :team_metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :team_model_aliases sig { returns(T.nilable(T::Array[T.anything])) } @@ -270,6 +341,9 @@ module Hanzoai sig { params(team_models: T::Array[T.anything]).void } attr_writer :team_models + sig { returns(T.nilable(String)) } + attr_accessor :team_object_permission_id + sig { returns(T.nilable(Integer)) } attr_accessor :team_rpm_limit @@ -291,12 +365,21 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :updated_by + sig { returns(T.nilable(T.anything)) } + attr_reader :user + + sig { params(user: T.anything).void } + attr_writer :user + sig { returns(T.nilable(String)) } attr_accessor :user_email sig { returns(T.nilable(String)) } attr_accessor :user_id + sig { returns(T.nilable(Float)) } + attr_accessor :user_max_budget + # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can # login, view all own keys, view all spend ORG_ADMIN: admin over a specific # organization, can create teams, users only within their organization @@ -308,18 +391,15 @@ module Hanzoai # Team Roles: TEAM: used for JWT auth # # Customer Roles: CUSTOMER: External users -> these are customers - sig do - returns( - T.nilable( - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol - ) - ) - end + sig { returns(T.nilable(Hanzoai::UserRoles::TaggedSymbol)) } attr_accessor :user_role sig { returns(T.nilable(Integer)) } attr_accessor :user_rpm_limit + sig { returns(T.nilable(Float)) } + attr_accessor :user_spend + sig { returns(T.nilable(Integer)) } attr_accessor :user_tpm_limit @@ -327,17 +407,19 @@ module Hanzoai sig do params( token: T.nilable(String), - aliases: T.anything, + aliases: T::Hash[Symbol, T.anything], allowed_cache_controls: T.nilable(T::Array[T.anything]), allowed_model_region: T.nilable( Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::OrSymbol ), + allowed_routes: T.nilable(T::Array[T.anything]), api_key: T.nilable(String), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), - config: T.anything, + config: T::Hash[Symbol, T.anything], created_at: T.nilable(Time), created_by: T.nilable(String), end_user_id: T.nilable(String), @@ -350,17 +432,32 @@ module Hanzoai ), key_alias: T.nilable(String), key_name: T.nilable(String), + key_rotation_at: T.nilable(Time), last_refreshed_at: T.nilable(Float), - llm_budget_table: T.nilable(T.anything), + last_rotation_at: T.nilable(Time), + litellm_budget_table: T.nilable(T::Hash[Symbol, T.anything]), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.anything, - model_max_budget: T.anything, - model_spend: T.anything, + metadata: T::Hash[Symbol, T.anything], + model_max_budget: T::Hash[Symbol, T.anything], + model_spend: T::Hash[Symbol, T.anything], models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), org_id: T.nilable(String), + organization_max_budget: T.nilable(Float), + organization_metadata: T.nilable(T::Hash[Symbol, T.anything]), + organization_rpm_limit: T.nilable(Integer), + organization_tpm_limit: T.nilable(Integer), parent_otel_span: T.anything, - permissions: T.anything, + permissions: T::Hash[Symbol, T.anything], + request_route: T.nilable(String), + rotation_count: T.nilable(Integer), + rotation_interval: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), rpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), soft_budget: T.nilable(Float), @@ -371,10 +468,13 @@ module Hanzoai team_id: T.nilable(String), team_max_budget: T.nilable(Float), team_member: T.nilable(Hanzoai::Member::OrHash), + team_member_rpm_limit: T.nilable(Integer), team_member_spend: T.nilable(Float), - team_metadata: T.nilable(T.anything), - team_model_aliases: T.nilable(T.anything), + team_member_tpm_limit: T.nilable(Integer), + team_metadata: T.nilable(T::Hash[Symbol, T.anything]), + team_model_aliases: T.nilable(T::Hash[Symbol, T.anything]), team_models: T::Array[T.anything], + team_object_permission_id: T.nilable(String), team_rpm_limit: T.nilable(Integer), team_spend: T.nilable(Float), team_tpm_limit: T.nilable(Integer), @@ -382,13 +482,13 @@ module Hanzoai tpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), updated_at: T.nilable(Time), updated_by: T.nilable(String), + user: T.anything, user_email: T.nilable(String), user_id: T.nilable(String), - user_role: - T.nilable( - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::OrSymbol - ), + user_max_budget: T.nilable(Float), + user_role: T.nilable(Hanzoai::UserRoles::OrSymbol), user_rpm_limit: T.nilable(Integer), + user_spend: T.nilable(Float), user_tpm_limit: T.nilable(Integer) ).returns(T.attached_class) end @@ -397,7 +497,9 @@ module Hanzoai aliases: nil, allowed_cache_controls: nil, allowed_model_region: nil, + allowed_routes: nil, api_key: nil, + auto_rotate: nil, blocked: nil, budget_duration: nil, budget_reset_at: nil, @@ -411,17 +513,30 @@ module Hanzoai expires: nil, key_alias: nil, key_name: nil, + key_rotation_at: nil, last_refreshed_at: nil, - llm_budget_table: nil, + last_rotation_at: nil, + litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, org_id: nil, + organization_max_budget: nil, + organization_metadata: nil, + organization_rpm_limit: nil, + organization_tpm_limit: nil, parent_otel_span: nil, permissions: nil, + request_route: nil, + rotation_count: nil, + rotation_interval: nil, + router_settings: nil, rpm_limit: nil, rpm_limit_per_model: nil, soft_budget: nil, @@ -432,10 +547,13 @@ module Hanzoai team_id: nil, team_max_budget: nil, team_member: nil, + team_member_rpm_limit: nil, team_member_spend: nil, + team_member_tpm_limit: nil, team_metadata: nil, team_model_aliases: nil, team_models: nil, + team_object_permission_id: nil, team_rpm_limit: nil, team_spend: nil, team_tpm_limit: nil, @@ -443,8 +561,10 @@ module Hanzoai tpm_limit_per_model: nil, updated_at: nil, updated_by: nil, + user: nil, user_email: nil, user_id: nil, + user_max_budget: nil, # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can # login, view all own keys, view all spend ORG_ADMIN: admin over a specific # organization, can create teams, users only within their organization @@ -458,6 +578,7 @@ module Hanzoai # Customer Roles: CUSTOMER: External users -> these are customers user_role: nil, user_rpm_limit: nil, + user_spend: nil, user_tpm_limit: nil ) end @@ -466,17 +587,19 @@ module Hanzoai override.returns( { token: T.nilable(String), - aliases: T.anything, + aliases: T::Hash[Symbol, T.anything], allowed_cache_controls: T.nilable(T::Array[T.anything]), allowed_model_region: T.nilable( Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::AllowedModelRegion::TaggedSymbol ), + allowed_routes: T.nilable(T::Array[T.anything]), api_key: T.nilable(String), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), - config: T.anything, + config: T::Hash[Symbol, T.anything], created_at: T.nilable(Time), created_by: T.nilable(String), end_user_id: T.nilable(String), @@ -489,17 +612,32 @@ module Hanzoai ), key_alias: T.nilable(String), key_name: T.nilable(String), + key_rotation_at: T.nilable(Time), last_refreshed_at: T.nilable(Float), - llm_budget_table: T.nilable(T.anything), + last_rotation_at: T.nilable(Time), + litellm_budget_table: T.nilable(T::Hash[Symbol, T.anything]), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.anything, - model_max_budget: T.anything, - model_spend: T.anything, + metadata: T::Hash[Symbol, T.anything], + model_max_budget: T::Hash[Symbol, T.anything], + model_spend: T::Hash[Symbol, T.anything], models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission + ), + object_permission_id: T.nilable(String), org_id: T.nilable(String), + organization_max_budget: T.nilable(Float), + organization_metadata: T.nilable(T::Hash[Symbol, T.anything]), + organization_rpm_limit: T.nilable(Integer), + organization_tpm_limit: T.nilable(Integer), parent_otel_span: T.anything, - permissions: T.anything, + permissions: T::Hash[Symbol, T.anything], + request_route: T.nilable(String), + rotation_count: T.nilable(Integer), + rotation_interval: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), rpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), soft_budget: T.nilable(Float), @@ -510,10 +648,13 @@ module Hanzoai team_id: T.nilable(String), team_max_budget: T.nilable(Float), team_member: T.nilable(Hanzoai::Member), + team_member_rpm_limit: T.nilable(Integer), team_member_spend: T.nilable(Float), - team_metadata: T.nilable(T.anything), - team_model_aliases: T.nilable(T.anything), + team_member_tpm_limit: T.nilable(Integer), + team_metadata: T.nilable(T::Hash[Symbol, T.anything]), + team_model_aliases: T.nilable(T::Hash[Symbol, T.anything]), team_models: T::Array[T.anything], + team_object_permission_id: T.nilable(String), team_rpm_limit: T.nilable(Integer), team_spend: T.nilable(Float), team_tpm_limit: T.nilable(Integer), @@ -521,13 +662,13 @@ module Hanzoai tpm_limit_per_model: T.nilable(T::Hash[Symbol, Integer]), updated_at: T.nilable(Time), updated_by: T.nilable(String), + user: T.anything, user_email: T.nilable(String), user_id: T.nilable(String), - user_role: - T.nilable( - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol - ), + user_max_budget: T.nilable(Float), + user_role: T.nilable(Hanzoai::UserRoles::TaggedSymbol), user_rpm_limit: T.nilable(Integer), + user_spend: T.nilable(Float), user_tpm_limit: T.nilable(Integer) } ) @@ -585,73 +726,513 @@ module Hanzoai end end - # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization - # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend - # - # Team Roles: TEAM: used for JWT auth - # - # Customer Roles: CUSTOMER: External users -> these are customers - module UserRole - extend Hanzoai::Internal::Type::Enum - - TaggedSymbol = + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = T.type_alias do - T.all( - Symbol, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole + T.any( + Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission, + Hanzoai::Internal::AnyHash ) end - OrSymbol = T.type_alias { T.any(Symbol, String) } - PROXY_ADMIN = - T.let( - :proxy_admin, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol - ) - PROXY_ADMIN_VIEWER = - T.let( - :proxy_admin_viewer, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol - ) - ORG_ADMIN = - T.let( - :org_admin, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol - ) - INTERNAL_USER = - T.let( - :internal_user, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } ) - INTERNAL_USER_VIEWER = - T.let( - :internal_user_viewer, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + end + def to_hash + end + end + end + + class LiteLlmDeletedVerificationToken < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken, + Hanzoai::Internal::AnyHash ) - TEAM = - T.let( - :team, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + end + + sig { returns(T.nilable(String)) } + attr_accessor :id + + sig { returns(T.nilable(String)) } + attr_accessor :token + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :aliases + + sig { params(aliases: T::Hash[Symbol, T.anything]).void } + attr_writer :aliases + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_cache_controls + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :auto_rotate + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :blocked + + sig { returns(T.nilable(String)) } + attr_accessor :budget_duration + + sig { returns(T.nilable(Time)) } + attr_accessor :budget_reset_at + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :config + + sig { params(config: T::Hash[Symbol, T.anything]).void } + attr_writer :config + + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + + sig { returns(T.nilable(String)) } + attr_accessor :created_by + + sig { returns(T.nilable(Time)) } + attr_accessor :deleted_at + + sig { returns(T.nilable(String)) } + attr_accessor :deleted_by + + sig { returns(T.nilable(String)) } + attr_accessor :deleted_by_api_key + + sig do + returns( + T.nilable( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::Expires::Variants ) - CUSTOMER = - T.let( - :customer, - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + ) + end + attr_accessor :expires + + sig { returns(T.nilable(String)) } + attr_accessor :key_alias + + sig { returns(T.nilable(String)) } + attr_accessor :key_name + + sig { returns(T.nilable(Time)) } + attr_accessor :key_rotation_at + + sig { returns(T.nilable(Time)) } + attr_accessor :last_rotation_at + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :litellm_budget_table + + sig { returns(T.nilable(String)) } + attr_accessor :litellm_changed_by + + sig { returns(T.nilable(Float)) } + attr_accessor :max_budget + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_parallel_requests + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :metadata + + sig { params(metadata: T::Hash[Symbol, T.anything]).void } + attr_writer :metadata + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :model_max_budget + + sig { params(model_max_budget: T::Hash[Symbol, T.anything]).void } + attr_writer :model_max_budget + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :model_spend + + sig { params(model_spend: T::Hash[Symbol, T.anything]).void } + attr_writer :model_spend + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_reader :models + + sig { params(models: T::Array[T.anything]).void } + attr_writer :models + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission ) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(String)) } + attr_accessor :org_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :permissions + + sig { params(permissions: T::Hash[Symbol, T.anything]).void } + attr_writer :permissions + + sig { returns(T.nilable(Integer)) } + attr_accessor :rotation_count + + sig { returns(T.nilable(String)) } + attr_accessor :rotation_interval + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + + sig { returns(T.nilable(Integer)) } + attr_accessor :rpm_limit + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :soft_budget_cooldown + + sig { params(soft_budget_cooldown: T::Boolean).void } + attr_writer :soft_budget_cooldown + + sig { returns(T.nilable(Float)) } + attr_reader :spend + + sig { params(spend: Float).void } + attr_writer :spend + + sig { returns(T.nilable(String)) } + attr_accessor :team_id + + sig { returns(T.nilable(Integer)) } + attr_accessor :tpm_limit + + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + + sig { returns(T.nilable(String)) } + attr_accessor :updated_by + + sig { returns(T.nilable(String)) } + attr_accessor :user_id + + # Recording of deleted keys for audit purposes. Mirrors LiteLLM_VerificationToken + # plus metadata captured at deletion time. + sig do + params( + id: T.nilable(String), + token: T.nilable(String), + aliases: T::Hash[Symbol, T.anything], + allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + auto_rotate: T.nilable(T::Boolean), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + config: T::Hash[Symbol, T.anything], + created_at: T.nilable(Time), + created_by: T.nilable(String), + deleted_at: T.nilable(Time), + deleted_by: T.nilable(String), + deleted_by_api_key: T.nilable(String), + expires: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::Expires::Variants + ), + key_alias: T.nilable(String), + key_name: T.nilable(String), + key_rotation_at: T.nilable(Time), + last_rotation_at: T.nilable(Time), + litellm_budget_table: T.nilable(T::Hash[Symbol, T.anything]), + litellm_changed_by: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T::Hash[Symbol, T.anything], + model_max_budget: T::Hash[Symbol, T.anything], + model_spend: T::Hash[Symbol, T.anything], + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), + org_id: T.nilable(String), + permissions: T::Hash[Symbol, T.anything], + rotation_count: T.nilable(Integer), + rotation_interval: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), + rpm_limit: T.nilable(Integer), + soft_budget_cooldown: T::Boolean, + spend: Float, + team_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + updated_by: T.nilable(String), + user_id: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + id: nil, + token: nil, + aliases: nil, + allowed_cache_controls: nil, + allowed_routes: nil, + auto_rotate: nil, + blocked: nil, + budget_duration: nil, + budget_reset_at: nil, + config: nil, + created_at: nil, + created_by: nil, + deleted_at: nil, + deleted_by: nil, + deleted_by_api_key: nil, + expires: nil, + key_alias: nil, + key_name: nil, + key_rotation_at: nil, + last_rotation_at: nil, + litellm_budget_table: nil, + litellm_changed_by: nil, + max_budget: nil, + max_parallel_requests: nil, + metadata: nil, + model_max_budget: nil, + model_spend: nil, + models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, + org_id: nil, + permissions: nil, + rotation_count: nil, + rotation_interval: nil, + router_settings: nil, + rpm_limit: nil, + soft_budget_cooldown: nil, + spend: nil, + team_id: nil, + tpm_limit: nil, + updated_at: nil, + updated_by: nil, + user_id: nil + ) + end + + sig do + override.returns( + { + id: T.nilable(String), + token: T.nilable(String), + aliases: T::Hash[Symbol, T.anything], + allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + auto_rotate: T.nilable(T::Boolean), + blocked: T.nilable(T::Boolean), + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + config: T::Hash[Symbol, T.anything], + created_at: T.nilable(Time), + created_by: T.nilable(String), + deleted_at: T.nilable(Time), + deleted_by: T.nilable(String), + deleted_by_api_key: T.nilable(String), + expires: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::Expires::Variants + ), + key_alias: T.nilable(String), + key_name: T.nilable(String), + key_rotation_at: T.nilable(Time), + last_rotation_at: T.nilable(Time), + litellm_budget_table: T.nilable(T::Hash[Symbol, T.anything]), + litellm_changed_by: T.nilable(String), + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + metadata: T::Hash[Symbol, T.anything], + model_max_budget: T::Hash[Symbol, T.anything], + model_spend: T::Hash[Symbol, T.anything], + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission + ), + object_permission_id: T.nilable(String), + org_id: T.nilable(String), + permissions: T::Hash[Symbol, T.anything], + rotation_count: T.nilable(Integer), + rotation_interval: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), + rpm_limit: T.nilable(Integer), + soft_budget_cooldown: T::Boolean, + spend: Float, + team_id: T.nilable(String), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + updated_by: T.nilable(String), + user_id: T.nilable(String) + } + ) + end + def to_hash + end + + module Expires + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, Time) } sig do override.returns( T::Array[ - Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::UserRole::TaggedSymbol + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::Expires::Variants ] ) end - def self.values + def self.variants + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash end end end diff --git a/rbi/hanzoai/models/key_regenerate_by_key_params.rbi b/rbi/hanzoai/models/key_regenerate_by_key_params.rbi index de9730c4..5fd672fb 100644 --- a/rbi/hanzoai/models/key_regenerate_by_key_params.rbi +++ b/rbi/hanzoai/models/key_regenerate_by_key_params.rbi @@ -11,31 +11,36 @@ module Hanzoai T.any(Hanzoai::KeyRegenerateByKeyParams, Hanzoai::Internal::AnyHash) end - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end sig do override.returns( - { llm_changed_by: String, request_options: Hanzoai::RequestOptions } + { + litellm_changed_by: String, + request_options: Hanzoai::RequestOptions + } ) end def to_hash diff --git a/rbi/hanzoai/models/key_unblock_params.rbi b/rbi/hanzoai/models/key_unblock_params.rbi index 1229b4a2..ce99aad3 100644 --- a/rbi/hanzoai/models/key_unblock_params.rbi +++ b/rbi/hanzoai/models/key_unblock_params.rbi @@ -11,31 +11,36 @@ module Hanzoai T.any(Hanzoai::KeyUnblockParams, Hanzoai::Internal::AnyHash) end - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end sig do override.returns( - { llm_changed_by: String, request_options: Hanzoai::RequestOptions } + { + litellm_changed_by: String, + request_options: Hanzoai::RequestOptions + } ) end def to_hash diff --git a/rbi/hanzoai/models/key_update_params.rbi b/rbi/hanzoai/models/key_update_params.rbi index 015c0c1f..ff4eeea6 100644 --- a/rbi/hanzoai/models/key_update_params.rbi +++ b/rbi/hanzoai/models/key_update_params.rbi @@ -14,12 +14,28 @@ module Hanzoai sig { returns(String) } attr_accessor :key - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :aliases sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :allowed_cache_controls + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_passthrough_routes + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + + sig do + returns( + T.nilable(T::Array[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex]) + ) + end + attr_accessor :allowed_vector_store_indexes + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :auto_rotate + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -29,7 +45,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_id - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :config sig { returns(T.nilable(String)) } @@ -50,27 +66,61 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_rpm_limit - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_tpm_limit sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(Hanzoai::KeyUpdateParams::ObjectPermission)) } + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable(Hanzoai::KeyUpdateParams::ObjectPermission::OrHash) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :permissions + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + + sig { returns(T.nilable(String)) } + attr_accessor :rotation_interval + + # Set of params that you can modify via `router.update_settings()`. + sig { returns(T.nilable(Hanzoai::KeyUpdateParams::RouterSettings)) } + attr_reader :router_settings + + sig do + params( + router_settings: + T.nilable(Hanzoai::KeyUpdateParams::RouterSettings::OrHash) + ).void + end + attr_writer :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit + sig do + returns(T.nilable(Hanzoai::KeyUpdateParams::RpmLimitType::OrSymbol)) + end + attr_accessor :rpm_limit_type + sig { returns(T.nilable(Float)) } attr_accessor :spend @@ -89,47 +139,72 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig do + returns(T.nilable(Hanzoai::KeyUpdateParams::TpmLimitType::OrSymbol)) + end + attr_accessor :tpm_limit_type + sig { returns(T.nilable(String)) } attr_accessor :user_id - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( key: String, - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::OrHash + ] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::KeyUpdateParams::ObjectPermission::OrHash), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable(Hanzoai::KeyUpdateParams::RouterSettings::OrHash), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::KeyUpdateParams::RpmLimitType::OrSymbol), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), temp_budget_expiry: T.nilable(Time), temp_budget_increase: T.nilable(Float), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable(Hanzoai::KeyUpdateParams::TpmLimitType::OrSymbol), user_id: T.nilable(String), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end @@ -137,6 +212,10 @@ module Hanzoai key:, aliases: nil, allowed_cache_controls: nil, + allowed_passthrough_routes: nil, + allowed_routes: nil, + allowed_vector_store_indexes: nil, + auto_rotate: nil, blocked: nil, budget_duration: nil, budget_id: nil, @@ -152,18 +231,26 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, permissions: nil, + prompts: nil, + rotation_interval: nil, + # Set of params that you can modify via `router.update_settings()`. + router_settings: nil, rpm_limit: nil, + rpm_limit_type: nil, spend: nil, tags: nil, team_id: nil, temp_budget_expiry: nil, temp_budget_increase: nil, tpm_limit: nil, + tpm_limit_type: nil, user_id: nil, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -172,39 +259,405 @@ module Hanzoai override.returns( { key: String, - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::KeyUpdateParams::ObjectPermission), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable(Hanzoai::KeyUpdateParams::RouterSettings), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::KeyUpdateParams::RpmLimitType::OrSymbol), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), temp_budget_expiry: T.nilable(Time), temp_budget_increase: T.nilable(Float), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable(Hanzoai::KeyUpdateParams::TpmLimitType::OrSymbol), user_id: T.nilable(String), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) end def to_hash end + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :index_name + + sig do + returns( + T::Array[ + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ) + end + attr_accessor :index_permissions + + sig do + params( + index_name: String, + index_permissions: + T::Array[ + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ).returns(T.attached_class) + end + def self.new(index_name:, index_permissions:) + end + + sig do + override.returns( + { + index_name: String, + index_permissions: + T::Array[ + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + } + ) + end + def to_hash + end + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + READ = + T.let( + :read, + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + WRITE = + T.let( + :write, + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::KeyUpdateParams::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::KeyUpdateParams::RouterSettings, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Integer)) } + attr_accessor :allowed_fails + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :context_window_fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :cooldown_time + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_retries + + sig do + returns( + T.nilable( + T::Hash[ + Symbol, + Hanzoai::KeyUpdateParams::RouterSettings::ModelGroupAlias::Variants + ] + ) + ) + end + attr_accessor :model_group_alias + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_group_retry_policy + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(Float)) } + attr_accessor :retry_after + + sig { returns(T.nilable(String)) } + attr_accessor :routing_strategy + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :routing_strategy_args + + sig { returns(T.nilable(Float)) } + attr_accessor :timeout + + # Set of params that you can modify via `router.update_settings()`. + sig do + params( + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::KeyUpdateParams::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + ).returns(T.attached_class) + end + def self.new( + allowed_fails: nil, + context_window_fallbacks: nil, + cooldown_time: nil, + fallbacks: nil, + max_retries: nil, + model_group_alias: nil, + model_group_retry_policy: nil, + num_retries: nil, + retry_after: nil, + routing_strategy: nil, + routing_strategy_args: nil, + timeout: nil + ) + end + + sig do + override.returns( + { + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::KeyUpdateParams::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + } + ) + end + def to_hash + end + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::KeyUpdateParams::RouterSettings::ModelGroupAlias::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Hanzoai::KeyUpdateParams::RpmLimitType) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::KeyUpdateParams::RpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::KeyUpdateParams::RpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let(:dynamic, Hanzoai::KeyUpdateParams::RpmLimitType::TaggedSymbol) + + sig do + override.returns( + T::Array[Hanzoai::KeyUpdateParams::RpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, Hanzoai::KeyUpdateParams::TpmLimitType) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::KeyUpdateParams::TpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::KeyUpdateParams::TpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let(:dynamic, Hanzoai::KeyUpdateParams::TpmLimitType::TaggedSymbol) + + sig do + override.returns( + T::Array[Hanzoai::KeyUpdateParams::TpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end end end end diff --git a/rbi/hanzoai/models/lite_llm_end_user_table.rbi b/rbi/hanzoai/models/lite_llm_end_user_table.rbi new file mode 100644 index 00000000..4320b70f --- /dev/null +++ b/rbi/hanzoai/models/lite_llm_end_user_table.rbi @@ -0,0 +1,126 @@ +# typed: strong + +module Hanzoai + module Models + class LiteLlmEndUserTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(Hanzoai::LiteLlmEndUserTable, Hanzoai::Internal::AnyHash) + end + + sig { returns(T::Boolean) } + attr_accessor :blocked + + sig { returns(String) } + attr_accessor :user_id + + sig { returns(T.nilable(String)) } + attr_accessor :alias_ + + sig do + returns( + T.nilable( + Hanzoai::LiteLlmEndUserTable::AllowedModelRegion::TaggedSymbol + ) + ) + end + attr_accessor :allowed_model_region + + sig { returns(T.nilable(String)) } + attr_accessor :default_model + + # Represents user-controllable params for a LiteLLM_BudgetTable record + sig { returns(T.nilable(Hanzoai::BudgetTable)) } + attr_reader :litellm_budget_table + + sig do + params( + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash) + ).void + end + attr_writer :litellm_budget_table + + sig { returns(T.nilable(Float)) } + attr_reader :spend + + sig { params(spend: Float).void } + attr_writer :spend + + sig do + params( + blocked: T::Boolean, + user_id: String, + alias_: T.nilable(String), + allowed_model_region: + T.nilable( + Hanzoai::LiteLlmEndUserTable::AllowedModelRegion::OrSymbol + ), + default_model: T.nilable(String), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash), + spend: Float + ).returns(T.attached_class) + end + def self.new( + blocked:, + user_id:, + alias_: nil, + allowed_model_region: nil, + default_model: nil, + # Represents user-controllable params for a LiteLLM_BudgetTable record + litellm_budget_table: nil, + spend: nil + ) + end + + sig do + override.returns( + { + blocked: T::Boolean, + user_id: String, + alias_: T.nilable(String), + allowed_model_region: + T.nilable( + Hanzoai::LiteLlmEndUserTable::AllowedModelRegion::TaggedSymbol + ), + default_model: T.nilable(String), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable), + spend: Float + } + ) + end + def to_hash + end + + module AllowedModelRegion + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::LiteLlmEndUserTable::AllowedModelRegion) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + EU = + T.let( + :eu, + Hanzoai::LiteLlmEndUserTable::AllowedModelRegion::TaggedSymbol + ) + US = + T.let( + :us, + Hanzoai::LiteLlmEndUserTable::AllowedModelRegion::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::LiteLlmEndUserTable::AllowedModelRegion::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end +end diff --git a/rbi/hanzoai/models/member.rbi b/rbi/hanzoai/models/member.rbi index c3596131..47d310f0 100644 --- a/rbi/hanzoai/models/member.rbi +++ b/rbi/hanzoai/models/member.rbi @@ -6,12 +6,17 @@ module Hanzoai OrHash = T.type_alias { T.any(Hanzoai::Member, Hanzoai::Internal::AnyHash) } + # The role of the user within the team. 'admin' users can manage team settings and + # members, 'user' is a regular team member sig { returns(Hanzoai::Member::Role::OrSymbol) } attr_accessor :role + # The email address of the user to add. Either user_id or user_email must be + # provided sig { returns(T.nilable(String)) } attr_accessor :user_email + # The unique ID of the user to add. Either user_id or user_email must be provided sig { returns(T.nilable(String)) } attr_accessor :user_id @@ -22,7 +27,16 @@ module Hanzoai user_id: T.nilable(String) ).returns(T.attached_class) end - def self.new(role:, user_email: nil, user_id: nil) + def self.new( + # The role of the user within the team. 'admin' users can manage team settings and + # members, 'user' is a regular team member + role:, + # The email address of the user to add. Either user_id or user_email must be + # provided + user_email: nil, + # The unique ID of the user to add. Either user_id or user_email must be provided + user_id: nil + ) end sig do @@ -37,6 +51,8 @@ module Hanzoai def to_hash end + # The role of the user within the team. 'admin' users can manage team settings and + # members, 'user' is a regular team member module Role extend Hanzoai::Internal::Type::Enum diff --git a/rbi/hanzoai/models/model/info_list_params.rbi b/rbi/hanzoai/models/model/info_list_params.rbi index 8e084eff..552007bb 100644 --- a/rbi/hanzoai/models/model/info_list_params.rbi +++ b/rbi/hanzoai/models/model/info_list_params.rbi @@ -13,21 +13,21 @@ module Hanzoai end sig { returns(T.nilable(String)) } - attr_accessor :llm_model_id + attr_accessor :litellm_model_id sig do params( - llm_model_id: T.nilable(String), + litellm_model_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(llm_model_id: nil, request_options: {}) + def self.new(litellm_model_id: nil, request_options: {}) end sig do override.returns( { - llm_model_id: T.nilable(String), + litellm_model_id: T.nilable(String), request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/model/update_deployment.rbi b/rbi/hanzoai/models/model/update_deployment.rbi index 9d4a679e..cf089b86 100644 --- a/rbi/hanzoai/models/model/update_deployment.rbi +++ b/rbi/hanzoai/models/model/update_deployment.rbi @@ -9,16 +9,18 @@ module Hanzoai T.any(Hanzoai::Model::UpdateDeployment, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams)) } - attr_reader :llm_params + sig do + returns(T.nilable(Hanzoai::Model::UpdateDeployment::LitellmParams)) + end + attr_reader :litellm_params sig do params( - llm_params: - T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash) + litellm_params: + T.nilable(Hanzoai::Model::UpdateDeployment::LitellmParams::OrHash) ).void end - attr_writer :llm_params + attr_writer :litellm_params sig { returns(T.nilable(Hanzoai::ModelInfo)) } attr_reader :model_info @@ -31,20 +33,22 @@ module Hanzoai sig do params( - llm_params: - T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash), + litellm_params: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::OrHash + ), model_info: T.nilable(Hanzoai::ModelInfo::OrHash), model_name: T.nilable(String) ).returns(T.attached_class) end - def self.new(llm_params: nil, model_info: nil, model_name: nil) + def self.new(litellm_params: nil, model_info: nil, model_name: nil) end sig do override.returns( { - llm_params: - T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams), + litellm_params: + T.nilable(Hanzoai::Model::UpdateDeployment::LitellmParams), model_info: T.nilable(Hanzoai::ModelInfo), model_name: T.nilable(String) } @@ -53,11 +57,11 @@ module Hanzoai def to_hash end - class LlmParams < Hanzoai::Internal::Type::BaseModel + class LitellmParams < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do T.any( - Hanzoai::Model::UpdateDeployment::LlmParams, + Hanzoai::Model::UpdateDeployment::LitellmParams, Hanzoai::Internal::AnyHash ) end @@ -71,9 +75,24 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :api_version + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_config + + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_config_path + + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_default_model + + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_embedding_model + sig { returns(T.nilable(String)) } attr_accessor :aws_access_key_id + sig { returns(T.nilable(String)) } + attr_accessor :aws_bedrock_runtime_endpoint + sig { returns(T.nilable(String)) } attr_accessor :aws_region_name @@ -83,11 +102,44 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_duration + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_audio_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_token_cost_above_1hr + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_token_cost_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_audio_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost_flex + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost_priority + + sig { returns(T.nilable(Float)) } + attr_accessor :citation_cost_per_token + sig do returns( T.nilable( T::Array[ - T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + T.any( + String, + Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput + ) ] ) ) @@ -97,14 +149,77 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :custom_llm_provider + sig { returns(T.nilable(String)) } + attr_accessor :gcs_bucket_name + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_audio_per_second + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_audio_per_second_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_audio_token + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_character + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_character_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_image + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_image_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_pixel + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_query + sig { returns(T.nilable(Float)) } attr_accessor :input_cost_per_second sig { returns(T.nilable(Float)) } attr_accessor :input_cost_per_token + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_batches + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_cache_hit + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_flex + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_priority + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second_above_15s_interval + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second_above_8s_interval + sig { returns(T.nilable(String)) } - attr_accessor :llm_trace_id + attr_accessor :litellm_credential_name + + sig { returns(T.nilable(String)) } + attr_accessor :litellm_trace_id sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -118,40 +233,110 @@ module Hanzoai sig { returns(T.nilable(T::Boolean)) } attr_accessor :merge_reasoning_content_in_choices + sig { returns(T.nilable(String)) } + attr_accessor :milvus_text_field + + sig do + returns( + T.nilable( + T.any( + String, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse, + T.anything + ) + ) + ) + end + attr_accessor :mock_response + sig { returns(T.nilable(String)) } attr_accessor :model - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_info sig { returns(T.nilable(String)) } attr_accessor :organization + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_audio_per_second + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_audio_token + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_character + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_character_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_image + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_image_token + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_pixel + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_reasoning_token + sig { returns(T.nilable(Float)) } attr_accessor :output_cost_per_second sig { returns(T.nilable(Float)) } attr_accessor :output_cost_per_token + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_batches + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_flex + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_priority + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_video_per_second + sig { returns(T.nilable(String)) } attr_accessor :region_name sig { returns(T.nilable(Integer)) } attr_accessor :rpm + sig { returns(T.nilable(String)) } + attr_accessor :s3_bucket_name + + sig { returns(T.nilable(String)) } + attr_accessor :s3_encryption_key_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :search_context_cost_per_query + sig do returns( T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::StreamTimeout::Variants ) ) end attr_accessor :stream_timeout + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :tiered_pricing + sig do returns( T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::Timeout::Variants ) ) end @@ -163,10 +348,16 @@ module Hanzoai sig { returns(T.nilable(T::Boolean)) } attr_accessor :use_in_pass_through + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :use_litellm_proxy + + sig { returns(T.nilable(String)) } + attr_accessor :vector_store_id + sig do returns( T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::VertexCredentials::Variants ) ) end @@ -186,47 +377,118 @@ module Hanzoai api_base: T.nilable(String), api_key: T.nilable(String), api_version: T.nilable(String), + auto_router_config: T.nilable(String), + auto_router_config_path: T.nilable(String), + auto_router_default_model: T.nilable(String), + auto_router_embedding_model: T.nilable(String), aws_access_key_id: T.nilable(String), + aws_bedrock_runtime_endpoint: T.nilable(String), aws_region_name: T.nilable(String), aws_secret_access_key: T.nilable(String), budget_duration: T.nilable(String), + cache_creation_input_audio_token_cost: T.nilable(Float), + cache_creation_input_token_cost: T.nilable(Float), + cache_creation_input_token_cost_above_1hr: T.nilable(Float), + cache_creation_input_token_cost_above_200k_tokens: + T.nilable(Float), + cache_read_input_audio_token_cost: T.nilable(Float), + cache_read_input_token_cost: T.nilable(Float), + cache_read_input_token_cost_above_200k_tokens: T.nilable(Float), + cache_read_input_token_cost_flex: T.nilable(Float), + cache_read_input_token_cost_priority: T.nilable(Float), + citation_cost_per_token: T.nilable(Float), configurable_clientside_auth_params: T.nilable( T::Array[ T.any( String, - Hanzoai::ConfigurableClientsideParamsCustomAuth::OrHash + Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput::OrHash ) ] ), custom_llm_provider: T.nilable(String), + gcs_bucket_name: T.nilable(String), + input_cost_per_audio_per_second: T.nilable(Float), + input_cost_per_audio_per_second_above_128k_tokens: + T.nilable(Float), + input_cost_per_audio_token: T.nilable(Float), + input_cost_per_character: T.nilable(Float), + input_cost_per_character_above_128k_tokens: T.nilable(Float), + input_cost_per_image: T.nilable(Float), + input_cost_per_image_above_128k_tokens: T.nilable(Float), + input_cost_per_pixel: T.nilable(Float), + input_cost_per_query: T.nilable(Float), input_cost_per_second: T.nilable(Float), input_cost_per_token: T.nilable(Float), - llm_trace_id: T.nilable(String), + input_cost_per_token_above_128k_tokens: T.nilable(Float), + input_cost_per_token_above_200k_tokens: T.nilable(Float), + input_cost_per_token_batches: T.nilable(Float), + input_cost_per_token_cache_hit: T.nilable(Float), + input_cost_per_token_flex: T.nilable(Float), + input_cost_per_token_priority: T.nilable(Float), + input_cost_per_video_per_second: T.nilable(Float), + input_cost_per_video_per_second_above_128k_tokens: + T.nilable(Float), + input_cost_per_video_per_second_above_15s_interval: + T.nilable(Float), + input_cost_per_video_per_second_above_8s_interval: + T.nilable(Float), + litellm_credential_name: T.nilable(String), + litellm_trace_id: T.nilable(String), max_budget: T.nilable(Float), max_file_size_mb: T.nilable(Float), max_retries: T.nilable(Integer), merge_reasoning_content_in_choices: T.nilable(T::Boolean), + milvus_text_field: T.nilable(String), + mock_response: + T.nilable( + T.any( + String, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::OrHash, + T.anything + ) + ), model: T.nilable(String), - model_info: T.nilable(T.anything), + model_info: T.nilable(T::Hash[Symbol, T.anything]), organization: T.nilable(String), + output_cost_per_audio_per_second: T.nilable(Float), + output_cost_per_audio_token: T.nilable(Float), + output_cost_per_character: T.nilable(Float), + output_cost_per_character_above_128k_tokens: T.nilable(Float), + output_cost_per_image: T.nilable(Float), + output_cost_per_image_token: T.nilable(Float), + output_cost_per_pixel: T.nilable(Float), + output_cost_per_reasoning_token: T.nilable(Float), output_cost_per_second: T.nilable(Float), output_cost_per_token: T.nilable(Float), + output_cost_per_token_above_128k_tokens: T.nilable(Float), + output_cost_per_token_above_200k_tokens: T.nilable(Float), + output_cost_per_token_batches: T.nilable(Float), + output_cost_per_token_flex: T.nilable(Float), + output_cost_per_token_priority: T.nilable(Float), + output_cost_per_video_per_second: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), + s3_bucket_name: T.nilable(String), + s3_encryption_key_id: T.nilable(String), + search_context_cost_per_query: + T.nilable(T::Hash[Symbol, T.anything]), stream_timeout: T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::StreamTimeout::Variants ), + tiered_pricing: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), timeout: T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::Timeout::Variants ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), + use_litellm_proxy: T.nilable(T::Boolean), + vector_store_id: T.nilable(String), vertex_credentials: T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::VertexCredentials::Variants ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), @@ -237,30 +499,88 @@ module Hanzoai api_base: nil, api_key: nil, api_version: nil, + auto_router_config: nil, + auto_router_config_path: nil, + auto_router_default_model: nil, + auto_router_embedding_model: nil, aws_access_key_id: nil, + aws_bedrock_runtime_endpoint: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, + cache_creation_input_audio_token_cost: nil, + cache_creation_input_token_cost: nil, + cache_creation_input_token_cost_above_1hr: nil, + cache_creation_input_token_cost_above_200k_tokens: nil, + cache_read_input_audio_token_cost: nil, + cache_read_input_token_cost: nil, + cache_read_input_token_cost_above_200k_tokens: nil, + cache_read_input_token_cost_flex: nil, + cache_read_input_token_cost_priority: nil, + citation_cost_per_token: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, + gcs_bucket_name: nil, + input_cost_per_audio_per_second: nil, + input_cost_per_audio_per_second_above_128k_tokens: nil, + input_cost_per_audio_token: nil, + input_cost_per_character: nil, + input_cost_per_character_above_128k_tokens: nil, + input_cost_per_image: nil, + input_cost_per_image_above_128k_tokens: nil, + input_cost_per_pixel: nil, + input_cost_per_query: nil, input_cost_per_second: nil, input_cost_per_token: nil, - llm_trace_id: nil, + input_cost_per_token_above_128k_tokens: nil, + input_cost_per_token_above_200k_tokens: nil, + input_cost_per_token_batches: nil, + input_cost_per_token_cache_hit: nil, + input_cost_per_token_flex: nil, + input_cost_per_token_priority: nil, + input_cost_per_video_per_second: nil, + input_cost_per_video_per_second_above_128k_tokens: nil, + input_cost_per_video_per_second_above_15s_interval: nil, + input_cost_per_video_per_second_above_8s_interval: nil, + litellm_credential_name: nil, + litellm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, + milvus_text_field: nil, + mock_response: nil, model: nil, model_info: nil, organization: nil, + output_cost_per_audio_per_second: nil, + output_cost_per_audio_token: nil, + output_cost_per_character: nil, + output_cost_per_character_above_128k_tokens: nil, + output_cost_per_image: nil, + output_cost_per_image_token: nil, + output_cost_per_pixel: nil, + output_cost_per_reasoning_token: nil, output_cost_per_second: nil, output_cost_per_token: nil, + output_cost_per_token_above_128k_tokens: nil, + output_cost_per_token_above_200k_tokens: nil, + output_cost_per_token_batches: nil, + output_cost_per_token_flex: nil, + output_cost_per_token_priority: nil, + output_cost_per_video_per_second: nil, region_name: nil, rpm: nil, + s3_bucket_name: nil, + s3_encryption_key_id: nil, + search_context_cost_per_query: nil, stream_timeout: nil, + tiered_pricing: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, + use_litellm_proxy: nil, + vector_store_id: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, @@ -274,47 +594,119 @@ module Hanzoai api_base: T.nilable(String), api_key: T.nilable(String), api_version: T.nilable(String), + auto_router_config: T.nilable(String), + auto_router_config_path: T.nilable(String), + auto_router_default_model: T.nilable(String), + auto_router_embedding_model: T.nilable(String), aws_access_key_id: T.nilable(String), + aws_bedrock_runtime_endpoint: T.nilable(String), aws_region_name: T.nilable(String), aws_secret_access_key: T.nilable(String), budget_duration: T.nilable(String), + cache_creation_input_audio_token_cost: T.nilable(Float), + cache_creation_input_token_cost: T.nilable(Float), + cache_creation_input_token_cost_above_1hr: T.nilable(Float), + cache_creation_input_token_cost_above_200k_tokens: + T.nilable(Float), + cache_read_input_audio_token_cost: T.nilable(Float), + cache_read_input_token_cost: T.nilable(Float), + cache_read_input_token_cost_above_200k_tokens: T.nilable(Float), + cache_read_input_token_cost_flex: T.nilable(Float), + cache_read_input_token_cost_priority: T.nilable(Float), + citation_cost_per_token: T.nilable(Float), configurable_clientside_auth_params: T.nilable( T::Array[ T.any( String, - Hanzoai::ConfigurableClientsideParamsCustomAuth + Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput ) ] ), custom_llm_provider: T.nilable(String), + gcs_bucket_name: T.nilable(String), + input_cost_per_audio_per_second: T.nilable(Float), + input_cost_per_audio_per_second_above_128k_tokens: + T.nilable(Float), + input_cost_per_audio_token: T.nilable(Float), + input_cost_per_character: T.nilable(Float), + input_cost_per_character_above_128k_tokens: T.nilable(Float), + input_cost_per_image: T.nilable(Float), + input_cost_per_image_above_128k_tokens: T.nilable(Float), + input_cost_per_pixel: T.nilable(Float), + input_cost_per_query: T.nilable(Float), input_cost_per_second: T.nilable(Float), input_cost_per_token: T.nilable(Float), - llm_trace_id: T.nilable(String), + input_cost_per_token_above_128k_tokens: T.nilable(Float), + input_cost_per_token_above_200k_tokens: T.nilable(Float), + input_cost_per_token_batches: T.nilable(Float), + input_cost_per_token_cache_hit: T.nilable(Float), + input_cost_per_token_flex: T.nilable(Float), + input_cost_per_token_priority: T.nilable(Float), + input_cost_per_video_per_second: T.nilable(Float), + input_cost_per_video_per_second_above_128k_tokens: + T.nilable(Float), + input_cost_per_video_per_second_above_15s_interval: + T.nilable(Float), + input_cost_per_video_per_second_above_8s_interval: + T.nilable(Float), + litellm_credential_name: T.nilable(String), + litellm_trace_id: T.nilable(String), max_budget: T.nilable(Float), max_file_size_mb: T.nilable(Float), max_retries: T.nilable(Integer), merge_reasoning_content_in_choices: T.nilable(T::Boolean), + milvus_text_field: T.nilable(String), + mock_response: + T.nilable( + T.any( + String, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse, + T.anything + ) + ), model: T.nilable(String), - model_info: T.nilable(T.anything), + model_info: T.nilable(T::Hash[Symbol, T.anything]), organization: T.nilable(String), + output_cost_per_audio_per_second: T.nilable(Float), + output_cost_per_audio_token: T.nilable(Float), + output_cost_per_character: T.nilable(Float), + output_cost_per_character_above_128k_tokens: T.nilable(Float), + output_cost_per_image: T.nilable(Float), + output_cost_per_image_token: T.nilable(Float), + output_cost_per_pixel: T.nilable(Float), + output_cost_per_reasoning_token: T.nilable(Float), output_cost_per_second: T.nilable(Float), output_cost_per_token: T.nilable(Float), + output_cost_per_token_above_128k_tokens: T.nilable(Float), + output_cost_per_token_above_200k_tokens: T.nilable(Float), + output_cost_per_token_batches: T.nilable(Float), + output_cost_per_token_flex: T.nilable(Float), + output_cost_per_token_priority: T.nilable(Float), + output_cost_per_video_per_second: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), + s3_bucket_name: T.nilable(String), + s3_encryption_key_id: T.nilable(String), + search_context_cost_per_query: + T.nilable(T::Hash[Symbol, T.anything]), stream_timeout: T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::StreamTimeout::Variants ), + tiered_pricing: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), timeout: T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::Timeout::Variants ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), + use_litellm_proxy: T.nilable(T::Boolean), + vector_store_id: T.nilable(String), vertex_credentials: T.nilable( - Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::VertexCredentials::Variants ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), @@ -330,13 +722,1300 @@ module Hanzoai Variants = T.type_alias do - T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + T.any( + String, + Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput + ) end + class ConfigurableClientsideParamsCustomAuthInput < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :api_base + + sig { params(api_base: String).returns(T.attached_class) } + def self.new(api_base:) + end + + sig { override.returns({ api_base: String }) } + def to_hash + end + end + sig do override.returns( T::Array[ - Hanzoai::Model::UpdateDeployment::LlmParams::ConfigurableClientsideAuthParam::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::Variants + ] + ) + end + def self.variants + end + end + + module MockResponse + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse, + T.anything + ) + end + + class ModelResponse < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig do + returns( + T::Array[ + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + T::Hash[Symbol, T.anything] + ) + ] + ) + end + attr_accessor :choices + + sig { returns(Integer) } + attr_accessor :created + + sig { returns(String) } + attr_accessor :object + + sig { returns(T.nilable(String)) } + attr_accessor :model + + sig { returns(T.nilable(String)) } + attr_accessor :system_fingerprint + + sig do + params( + id: String, + choices: + T::Array[ + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::OrHash, + T::Hash[Symbol, T.anything] + ) + ], + created: Integer, + object: String, + model: T.nilable(String), + system_fingerprint: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + id:, + choices:, + created:, + object:, + model: nil, + system_fingerprint: nil + ) + end + + sig do + override.returns( + { + id: String, + choices: + T::Array[ + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + T::Hash[Symbol, T.anything] + ) + ], + created: Integer, + object: String, + model: T.nilable(String), + system_fingerprint: T.nilable(String) + } + ) + end + def to_hash + end + + module Choice + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + T::Hash[Symbol, T.anything] + ) + end + + class Choices < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :finish_reason + + sig { returns(Integer) } + attr_accessor :index + + sig do + returns( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message + ) + end + attr_reader :message + + sig do + params( + message: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::OrHash + ).void + end + attr_writer :message + + sig do + returns( + T.nilable( + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + T.anything + ) + ) + ) + end + attr_accessor :logprobs + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + finish_reason: String, + index: Integer, + message: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::OrHash, + logprobs: + T.nilable( + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::OrHash, + T.anything + ) + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + finish_reason:, + index:, + message:, + logprobs: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + finish_reason: String, + index: Integer, + message: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + logprobs: + T.nilable( + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + T.anything + ) + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + + class Message < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_accessor :content + + sig do + returns( + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall + ) + ) + end + attr_reader :function_call + + sig do + params( + function_call: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall::OrHash + ) + ).void + end + attr_writer :function_call + + sig do + returns( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::OrSymbol + ) + end + attr_accessor :role + + sig do + returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) + end + attr_accessor :tool_calls + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation + ] + ) + ) + end + attr_accessor :annotations + + sig do + returns( + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio + ) + ) + end + attr_reader :audio + + sig do + params( + audio: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio::OrHash + ) + ).void + end + attr_writer :audio + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image + ] + ) + ) + end + attr_accessor :images + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig { returns(T.nilable(String)) } + attr_accessor :reasoning_content + + sig do + returns( + T.nilable( + T::Array[ + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ) + ) + end + attr_accessor :thinking_blocks + + sig do + params( + content: T.nilable(String), + function_call: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall::OrHash + ), + role: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::OrSymbol, + tool_calls: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + annotations: + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::OrHash + ] + ), + audio: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio::OrHash + ), + images: + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::OrHash + ] + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::OrHash, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::OrHash + ) + ] + ) + ).returns(T.attached_class) + end + def self.new( + content:, + function_call:, + role:, + tool_calls:, + annotations: nil, + audio: nil, + images: nil, + provider_specific_fields: nil, + reasoning_content: nil, + thinking_blocks: nil + ) + end + + sig do + override.returns( + { + content: T.nilable(String), + function_call: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall + ), + role: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::OrSymbol, + tool_calls: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + annotations: + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation + ] + ), + audio: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio + ), + images: + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image + ] + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ) + } + ) + end + def to_hash + end + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig do + params( + arguments: String, + name: T.nilable(String) + ).returns(T.attached_class) + end + def self.new(arguments:, name: nil) + end + + sig do + override.returns( + { arguments: String, name: T.nilable(String) } + ) + end + def to_hash + end + end + + module Role + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + ASSISTANT = + T.let( + :assistant, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + USER = + T.let( + :user, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + TOOL = + T.let( + :tool, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + FUNCTION = + T.let( + :function, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ] + ) + end + def self.values + end + end + + class Annotation < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol + ).void + end + attr_writer :type + + sig do + returns( + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + ) + ) + end + attr_reader :url_citation + + sig do + params( + url_citation: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation::OrHash + ).void + end + attr_writer :url_citation + + sig do + params( + type: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol, + url_citation: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation::OrHash + ).returns(T.attached_class) + end + def self.new(type: nil, url_citation: nil) + end + + sig do + override.returns( + { + type: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol, + url_citation: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + } + ) + end + def to_hash + end + + module Type + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + URL_CITATION = + T.let( + :url_citation, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::TaggedSymbol + ] + ) + end + def self.values + end + end + + class URLCitation < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Integer)) } + attr_reader :end_index + + sig { params(end_index: Integer).void } + attr_writer :end_index + + sig { returns(T.nilable(Integer)) } + attr_reader :start_index + + sig { params(start_index: Integer).void } + attr_writer :start_index + + sig { returns(T.nilable(String)) } + attr_reader :title + + sig { params(title: String).void } + attr_writer :title + + sig { returns(T.nilable(String)) } + attr_reader :url + + sig { params(url: String).void } + attr_writer :url + + sig do + params( + end_index: Integer, + start_index: Integer, + title: String, + url: String + ).returns(T.attached_class) + end + def self.new( + end_index: nil, + start_index: nil, + title: nil, + url: nil + ) + end + + sig do + override.returns( + { + end_index: Integer, + start_index: Integer, + title: String, + url: String + } + ) + end + def to_hash + end + end + end + + class Audio < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :data + + sig { returns(Integer) } + attr_accessor :expires_at + + sig { returns(String) } + attr_accessor :transcript + + 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 + + sig do + override.returns( + { + id: String, + data: String, + expires_at: Integer, + transcript: String + } + ) + end + def to_hash + end + end + + class Image < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL + ) + end + attr_reader :image_url + + sig do + params( + image_url: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL::OrHash + ).void + end + attr_writer :image_url + + sig { returns(Integer) } + attr_accessor :index + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + image_url: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL::OrHash, + index: Integer, + type: Symbol + ).returns(T.attached_class) + end + def self.new(image_url:, index:, type: :image_url) + end + + sig do + override.returns( + { + image_url: + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + type: Symbol + } + ) + end + def to_hash + end + + class ImageURL < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_accessor :detail + + sig do + params( + url: String, + detail: T.nilable(String) + ).returns(T.attached_class) + end + def self.new(url:, detail: nil) + end + + sig do + override.returns( + { url: String, detail: T.nilable(String) } + ) + end + def to_hash + end + end + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params(type: Symbol).returns(T.attached_class) + end + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :data + + sig { params(data: String).void } + attr_writer :data + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + data: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + data: nil, + type: :redacted_thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + data: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params(type: Symbol).returns(T.attached_class) + end + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::Variants + ] + ) + end + def self.variants + end + end + end + + module Logprobs + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + T.anything + ) + end + + class ChoiceLogprobs < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content + ] + ) + ) + end + attr_accessor :content + + sig do + params( + content: + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::OrHash + ] + ) + ).returns(T.attached_class) + end + def self.new(content: nil) + end + + sig do + override.returns( + { + content: + T.nilable( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content + ] + ) + } + ) + end + def to_hash + end + + class Content < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :token + + sig { returns(Float) } + attr_accessor :logprob + + sig do + returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob + ] + ) + end + attr_accessor :top_logprobs + + sig { returns(T.nilable(T::Array[Integer])) } + attr_accessor :bytes + + sig do + params( + token: String, + logprob: Float, + top_logprobs: + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob::OrHash + ], + bytes: T.nilable(T::Array[Integer]) + ).returns(T.attached_class) + end + def self.new( + token:, + logprob:, + top_logprobs:, + bytes: nil + ) + end + + sig do + override.returns( + { + token: String, + logprob: Float, + top_logprobs: + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob + ], + bytes: T.nilable(T::Array[Integer]) + } + ) + end + def to_hash + end + + class TopLogprob < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :token + + sig { returns(Float) } + attr_accessor :logprob + + sig { returns(T.nilable(T::Array[Integer])) } + attr_accessor :bytes + + sig do + params( + token: String, + logprob: Float, + bytes: T.nilable(T::Array[Integer]) + ).returns(T.attached_class) + end + def self.new(token:, logprob:, bytes: nil) + end + + sig do + override.returns( + { + token: String, + logprob: Float, + bytes: T.nilable(T::Array[Integer]) + } + ) + end + def to_hash + end + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::Variants + ] + ) + end + def self.variants + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Variants + ] + ) + end + def self.variants + end + + StreamingChoiceMap = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::Variants ] ) end @@ -352,7 +2031,7 @@ module Hanzoai sig do override.returns( T::Array[ - Hanzoai::Model::UpdateDeployment::LlmParams::StreamTimeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::StreamTimeout::Variants ] ) end @@ -368,7 +2047,7 @@ module Hanzoai sig do override.returns( T::Array[ - Hanzoai::Model::UpdateDeployment::LlmParams::Timeout::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::Timeout::Variants ] ) end @@ -379,17 +2058,26 @@ module Hanzoai module VertexCredentials extend Hanzoai::Internal::Type::Union - Variants = T.type_alias { T.any(T.anything, String) } + Variants = + T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } sig do override.returns( T::Array[ - Hanzoai::Model::UpdateDeployment::LlmParams::VertexCredentials::Variants + Hanzoai::Model::UpdateDeployment::LitellmParams::VertexCredentials::Variants ] ) end def self.variants end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) end end end diff --git a/rbi/hanzoai/models/model_create_params.rbi b/rbi/hanzoai/models/model_create_params.rbi index f67b4c85..f0f1862d 100644 --- a/rbi/hanzoai/models/model_create_params.rbi +++ b/rbi/hanzoai/models/model_create_params.rbi @@ -11,14 +11,16 @@ module Hanzoai T.any(Hanzoai::ModelCreateParams, Hanzoai::Internal::AnyHash) end - # LLM Params with 'model' requirement - used for completions - sig { returns(Hanzoai::ModelCreateParams::LlmParams) } - attr_reader :llm_params + # LiteLLM Params with 'model' requirement - used for completions + sig { returns(Hanzoai::ModelCreateParams::LitellmParams) } + attr_reader :litellm_params sig do - params(llm_params: Hanzoai::ModelCreateParams::LlmParams::OrHash).void + params( + litellm_params: Hanzoai::ModelCreateParams::LitellmParams::OrHash + ).void end - attr_writer :llm_params + attr_writer :litellm_params sig { returns(Hanzoai::ModelInfo) } attr_reader :model_info @@ -31,15 +33,15 @@ module Hanzoai sig do params( - llm_params: Hanzoai::ModelCreateParams::LlmParams::OrHash, + litellm_params: Hanzoai::ModelCreateParams::LitellmParams::OrHash, model_info: Hanzoai::ModelInfo::OrHash, model_name: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( - # LLM Params with 'model' requirement - used for completions - llm_params:, + # LiteLLM Params with 'model' requirement - used for completions + litellm_params:, model_info:, model_name:, request_options: {} @@ -49,7 +51,7 @@ module Hanzoai sig do override.returns( { - llm_params: Hanzoai::ModelCreateParams::LlmParams, + litellm_params: Hanzoai::ModelCreateParams::LitellmParams, model_info: Hanzoai::ModelInfo, model_name: String, request_options: Hanzoai::RequestOptions @@ -59,11 +61,11 @@ module Hanzoai def to_hash end - class LlmParams < Hanzoai::Internal::Type::BaseModel + class LitellmParams < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do T.any( - Hanzoai::ModelCreateParams::LlmParams, + Hanzoai::ModelCreateParams::LitellmParams, Hanzoai::Internal::AnyHash ) end @@ -80,9 +82,24 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :api_version + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_config + + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_config_path + + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_default_model + + sig { returns(T.nilable(String)) } + attr_accessor :auto_router_embedding_model + sig { returns(T.nilable(String)) } attr_accessor :aws_access_key_id + sig { returns(T.nilable(String)) } + attr_accessor :aws_bedrock_runtime_endpoint + sig { returns(T.nilable(String)) } attr_accessor :aws_region_name @@ -92,11 +109,44 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_duration + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_audio_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_token_cost_above_1hr + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_creation_input_token_cost_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_audio_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost_flex + + sig { returns(T.nilable(Float)) } + attr_accessor :cache_read_input_token_cost_priority + + sig { returns(T.nilable(Float)) } + attr_accessor :citation_cost_per_token + sig do returns( T.nilable( T::Array[ - T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + T.any( + String, + Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput + ) ] ) ) @@ -106,14 +156,77 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :custom_llm_provider + sig { returns(T.nilable(String)) } + attr_accessor :gcs_bucket_name + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_audio_per_second + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_audio_per_second_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_audio_token + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_character + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_character_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_image + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_image_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_pixel + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_query + sig { returns(T.nilable(Float)) } attr_accessor :input_cost_per_second sig { returns(T.nilable(Float)) } attr_accessor :input_cost_per_token + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_batches + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_cache_hit + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_flex + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_token_priority + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second_above_15s_interval + + sig { returns(T.nilable(Float)) } + attr_accessor :input_cost_per_video_per_second_above_8s_interval + + sig { returns(T.nilable(String)) } + attr_accessor :litellm_credential_name + sig { returns(T.nilable(String)) } - attr_accessor :llm_trace_id + attr_accessor :litellm_trace_id sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -127,36 +240,108 @@ module Hanzoai sig { returns(T.nilable(T::Boolean)) } attr_accessor :merge_reasoning_content_in_choices - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(String)) } + attr_accessor :milvus_text_field + + sig do + returns( + T.nilable( + T.any( + String, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse, + T.anything + ) + ) + ) + end + attr_accessor :mock_response + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_info sig { returns(T.nilable(String)) } attr_accessor :organization + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_audio_per_second + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_audio_token + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_character + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_character_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_image + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_image_token + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_pixel + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_reasoning_token + sig { returns(T.nilable(Float)) } attr_accessor :output_cost_per_second sig { returns(T.nilable(Float)) } attr_accessor :output_cost_per_token + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_above_128k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_above_200k_tokens + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_batches + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_flex + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_token_priority + + sig { returns(T.nilable(Float)) } + attr_accessor :output_cost_per_video_per_second + sig { returns(T.nilable(String)) } attr_accessor :region_name sig { returns(T.nilable(Integer)) } attr_accessor :rpm + sig { returns(T.nilable(String)) } + attr_accessor :s3_bucket_name + + sig { returns(T.nilable(String)) } + attr_accessor :s3_encryption_key_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :search_context_cost_per_query + sig do returns( T.nilable( - Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + Hanzoai::ModelCreateParams::LitellmParams::StreamTimeout::Variants ) ) end attr_accessor :stream_timeout + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :tiered_pricing + sig do returns( - T.nilable(Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants) + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::Timeout::Variants + ) ) end attr_accessor :timeout @@ -167,10 +352,16 @@ module Hanzoai sig { returns(T.nilable(T::Boolean)) } attr_accessor :use_in_pass_through + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :use_litellm_proxy + + sig { returns(T.nilable(String)) } + attr_accessor :vector_store_id + sig do returns( T.nilable( - Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + Hanzoai::ModelCreateParams::LitellmParams::VertexCredentials::Variants ) ) end @@ -185,53 +376,120 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :watsonx_region_name - # LLM Params with 'model' requirement - used for completions + # LiteLLM Params with 'model' requirement - used for completions sig do params( model: String, api_base: T.nilable(String), api_key: T.nilable(String), api_version: T.nilable(String), + auto_router_config: T.nilable(String), + auto_router_config_path: T.nilable(String), + auto_router_default_model: T.nilable(String), + auto_router_embedding_model: T.nilable(String), aws_access_key_id: T.nilable(String), + aws_bedrock_runtime_endpoint: T.nilable(String), aws_region_name: T.nilable(String), aws_secret_access_key: T.nilable(String), budget_duration: T.nilable(String), + cache_creation_input_audio_token_cost: T.nilable(Float), + cache_creation_input_token_cost: T.nilable(Float), + cache_creation_input_token_cost_above_1hr: T.nilable(Float), + cache_creation_input_token_cost_above_200k_tokens: T.nilable(Float), + cache_read_input_audio_token_cost: T.nilable(Float), + cache_read_input_token_cost: T.nilable(Float), + cache_read_input_token_cost_above_200k_tokens: T.nilable(Float), + cache_read_input_token_cost_flex: T.nilable(Float), + cache_read_input_token_cost_priority: T.nilable(Float), + citation_cost_per_token: T.nilable(Float), configurable_clientside_auth_params: T.nilable( T::Array[ T.any( String, - Hanzoai::ConfigurableClientsideParamsCustomAuth::OrHash + Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput::OrHash ) ] ), custom_llm_provider: T.nilable(String), + gcs_bucket_name: T.nilable(String), + input_cost_per_audio_per_second: T.nilable(Float), + input_cost_per_audio_per_second_above_128k_tokens: T.nilable(Float), + input_cost_per_audio_token: T.nilable(Float), + input_cost_per_character: T.nilable(Float), + input_cost_per_character_above_128k_tokens: T.nilable(Float), + input_cost_per_image: T.nilable(Float), + input_cost_per_image_above_128k_tokens: T.nilable(Float), + input_cost_per_pixel: T.nilable(Float), + input_cost_per_query: T.nilable(Float), input_cost_per_second: T.nilable(Float), input_cost_per_token: T.nilable(Float), - llm_trace_id: T.nilable(String), + input_cost_per_token_above_128k_tokens: T.nilable(Float), + input_cost_per_token_above_200k_tokens: T.nilable(Float), + input_cost_per_token_batches: T.nilable(Float), + input_cost_per_token_cache_hit: T.nilable(Float), + input_cost_per_token_flex: T.nilable(Float), + input_cost_per_token_priority: T.nilable(Float), + input_cost_per_video_per_second: T.nilable(Float), + input_cost_per_video_per_second_above_128k_tokens: T.nilable(Float), + input_cost_per_video_per_second_above_15s_interval: + T.nilable(Float), + input_cost_per_video_per_second_above_8s_interval: T.nilable(Float), + litellm_credential_name: T.nilable(String), + litellm_trace_id: T.nilable(String), max_budget: T.nilable(Float), max_file_size_mb: T.nilable(Float), max_retries: T.nilable(Integer), merge_reasoning_content_in_choices: T.nilable(T::Boolean), - model_info: T.nilable(T.anything), + milvus_text_field: T.nilable(String), + mock_response: + T.nilable( + T.any( + String, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::OrHash, + T.anything + ) + ), + model_info: T.nilable(T::Hash[Symbol, T.anything]), organization: T.nilable(String), + output_cost_per_audio_per_second: T.nilable(Float), + output_cost_per_audio_token: T.nilable(Float), + output_cost_per_character: T.nilable(Float), + output_cost_per_character_above_128k_tokens: T.nilable(Float), + output_cost_per_image: T.nilable(Float), + output_cost_per_image_token: T.nilable(Float), + output_cost_per_pixel: T.nilable(Float), + output_cost_per_reasoning_token: T.nilable(Float), output_cost_per_second: T.nilable(Float), output_cost_per_token: T.nilable(Float), + output_cost_per_token_above_128k_tokens: T.nilable(Float), + output_cost_per_token_above_200k_tokens: T.nilable(Float), + output_cost_per_token_batches: T.nilable(Float), + output_cost_per_token_flex: T.nilable(Float), + output_cost_per_token_priority: T.nilable(Float), + output_cost_per_video_per_second: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), + s3_bucket_name: T.nilable(String), + s3_encryption_key_id: T.nilable(String), + search_context_cost_per_query: + T.nilable(T::Hash[Symbol, T.anything]), stream_timeout: T.nilable( - Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + Hanzoai::ModelCreateParams::LitellmParams::StreamTimeout::Variants ), + tiered_pricing: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), timeout: T.nilable( - Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants + Hanzoai::ModelCreateParams::LitellmParams::Timeout::Variants ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), + use_litellm_proxy: T.nilable(T::Boolean), + vector_store_id: T.nilable(String), vertex_credentials: T.nilable( - Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + Hanzoai::ModelCreateParams::LitellmParams::VertexCredentials::Variants ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), @@ -243,29 +501,87 @@ module Hanzoai api_base: nil, api_key: nil, api_version: nil, + auto_router_config: nil, + auto_router_config_path: nil, + auto_router_default_model: nil, + auto_router_embedding_model: nil, aws_access_key_id: nil, + aws_bedrock_runtime_endpoint: nil, aws_region_name: nil, aws_secret_access_key: nil, budget_duration: nil, + cache_creation_input_audio_token_cost: nil, + cache_creation_input_token_cost: nil, + cache_creation_input_token_cost_above_1hr: nil, + cache_creation_input_token_cost_above_200k_tokens: nil, + cache_read_input_audio_token_cost: nil, + cache_read_input_token_cost: nil, + cache_read_input_token_cost_above_200k_tokens: nil, + cache_read_input_token_cost_flex: nil, + cache_read_input_token_cost_priority: nil, + citation_cost_per_token: nil, configurable_clientside_auth_params: nil, custom_llm_provider: nil, + gcs_bucket_name: nil, + input_cost_per_audio_per_second: nil, + input_cost_per_audio_per_second_above_128k_tokens: nil, + input_cost_per_audio_token: nil, + input_cost_per_character: nil, + input_cost_per_character_above_128k_tokens: nil, + input_cost_per_image: nil, + input_cost_per_image_above_128k_tokens: nil, + input_cost_per_pixel: nil, + input_cost_per_query: nil, input_cost_per_second: nil, input_cost_per_token: nil, - llm_trace_id: nil, + input_cost_per_token_above_128k_tokens: nil, + input_cost_per_token_above_200k_tokens: nil, + input_cost_per_token_batches: nil, + input_cost_per_token_cache_hit: nil, + input_cost_per_token_flex: nil, + input_cost_per_token_priority: nil, + input_cost_per_video_per_second: nil, + input_cost_per_video_per_second_above_128k_tokens: nil, + input_cost_per_video_per_second_above_15s_interval: nil, + input_cost_per_video_per_second_above_8s_interval: nil, + litellm_credential_name: nil, + litellm_trace_id: nil, max_budget: nil, max_file_size_mb: nil, max_retries: nil, merge_reasoning_content_in_choices: nil, + milvus_text_field: nil, + mock_response: nil, model_info: nil, organization: nil, + output_cost_per_audio_per_second: nil, + output_cost_per_audio_token: nil, + output_cost_per_character: nil, + output_cost_per_character_above_128k_tokens: nil, + output_cost_per_image: nil, + output_cost_per_image_token: nil, + output_cost_per_pixel: nil, + output_cost_per_reasoning_token: nil, output_cost_per_second: nil, output_cost_per_token: nil, + output_cost_per_token_above_128k_tokens: nil, + output_cost_per_token_above_200k_tokens: nil, + output_cost_per_token_batches: nil, + output_cost_per_token_flex: nil, + output_cost_per_token_priority: nil, + output_cost_per_video_per_second: nil, region_name: nil, rpm: nil, + s3_bucket_name: nil, + s3_encryption_key_id: nil, + search_context_cost_per_query: nil, stream_timeout: nil, + tiered_pricing: nil, timeout: nil, tpm: nil, use_in_pass_through: nil, + use_litellm_proxy: nil, + vector_store_id: nil, vertex_credentials: nil, vertex_location: nil, vertex_project: nil, @@ -280,46 +596,117 @@ module Hanzoai api_base: T.nilable(String), api_key: T.nilable(String), api_version: T.nilable(String), + auto_router_config: T.nilable(String), + auto_router_config_path: T.nilable(String), + auto_router_default_model: T.nilable(String), + auto_router_embedding_model: T.nilable(String), aws_access_key_id: T.nilable(String), + aws_bedrock_runtime_endpoint: T.nilable(String), aws_region_name: T.nilable(String), aws_secret_access_key: T.nilable(String), budget_duration: T.nilable(String), + cache_creation_input_audio_token_cost: T.nilable(Float), + cache_creation_input_token_cost: T.nilable(Float), + cache_creation_input_token_cost_above_1hr: T.nilable(Float), + cache_creation_input_token_cost_above_200k_tokens: + T.nilable(Float), + cache_read_input_audio_token_cost: T.nilable(Float), + cache_read_input_token_cost: T.nilable(Float), + cache_read_input_token_cost_above_200k_tokens: T.nilable(Float), + cache_read_input_token_cost_flex: T.nilable(Float), + cache_read_input_token_cost_priority: T.nilable(Float), + citation_cost_per_token: T.nilable(Float), configurable_clientside_auth_params: T.nilable( T::Array[ T.any( String, - Hanzoai::ConfigurableClientsideParamsCustomAuth + Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput ) ] ), custom_llm_provider: T.nilable(String), + gcs_bucket_name: T.nilable(String), + input_cost_per_audio_per_second: T.nilable(Float), + input_cost_per_audio_per_second_above_128k_tokens: + T.nilable(Float), + input_cost_per_audio_token: T.nilable(Float), + input_cost_per_character: T.nilable(Float), + input_cost_per_character_above_128k_tokens: T.nilable(Float), + input_cost_per_image: T.nilable(Float), + input_cost_per_image_above_128k_tokens: T.nilable(Float), + input_cost_per_pixel: T.nilable(Float), + input_cost_per_query: T.nilable(Float), input_cost_per_second: T.nilable(Float), input_cost_per_token: T.nilable(Float), - llm_trace_id: T.nilable(String), + input_cost_per_token_above_128k_tokens: T.nilable(Float), + input_cost_per_token_above_200k_tokens: T.nilable(Float), + input_cost_per_token_batches: T.nilable(Float), + input_cost_per_token_cache_hit: T.nilable(Float), + input_cost_per_token_flex: T.nilable(Float), + input_cost_per_token_priority: T.nilable(Float), + input_cost_per_video_per_second: T.nilable(Float), + input_cost_per_video_per_second_above_128k_tokens: + T.nilable(Float), + input_cost_per_video_per_second_above_15s_interval: + T.nilable(Float), + input_cost_per_video_per_second_above_8s_interval: + T.nilable(Float), + litellm_credential_name: T.nilable(String), + litellm_trace_id: T.nilable(String), max_budget: T.nilable(Float), max_file_size_mb: T.nilable(Float), max_retries: T.nilable(Integer), merge_reasoning_content_in_choices: T.nilable(T::Boolean), - model_info: T.nilable(T.anything), + milvus_text_field: T.nilable(String), + mock_response: + T.nilable( + T.any( + String, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse, + T.anything + ) + ), + model_info: T.nilable(T::Hash[Symbol, T.anything]), organization: T.nilable(String), + output_cost_per_audio_per_second: T.nilable(Float), + output_cost_per_audio_token: T.nilable(Float), + output_cost_per_character: T.nilable(Float), + output_cost_per_character_above_128k_tokens: T.nilable(Float), + output_cost_per_image: T.nilable(Float), + output_cost_per_image_token: T.nilable(Float), + output_cost_per_pixel: T.nilable(Float), + output_cost_per_reasoning_token: T.nilable(Float), output_cost_per_second: T.nilable(Float), output_cost_per_token: T.nilable(Float), + output_cost_per_token_above_128k_tokens: T.nilable(Float), + output_cost_per_token_above_200k_tokens: T.nilable(Float), + output_cost_per_token_batches: T.nilable(Float), + output_cost_per_token_flex: T.nilable(Float), + output_cost_per_token_priority: T.nilable(Float), + output_cost_per_video_per_second: T.nilable(Float), region_name: T.nilable(String), rpm: T.nilable(Integer), + s3_bucket_name: T.nilable(String), + s3_encryption_key_id: T.nilable(String), + search_context_cost_per_query: + T.nilable(T::Hash[Symbol, T.anything]), stream_timeout: T.nilable( - Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + Hanzoai::ModelCreateParams::LitellmParams::StreamTimeout::Variants ), + tiered_pricing: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), timeout: T.nilable( - Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants + Hanzoai::ModelCreateParams::LitellmParams::Timeout::Variants ), tpm: T.nilable(Integer), use_in_pass_through: T.nilable(T::Boolean), + use_litellm_proxy: T.nilable(T::Boolean), + vector_store_id: T.nilable(String), vertex_credentials: T.nilable( - Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + Hanzoai::ModelCreateParams::LitellmParams::VertexCredentials::Variants ), vertex_location: T.nilable(String), vertex_project: T.nilable(String), @@ -335,13 +722,1290 @@ module Hanzoai Variants = T.type_alias do - T.any(String, Hanzoai::ConfigurableClientsideParamsCustomAuth) + T.any( + String, + Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput + ) + end + + class ConfigurableClientsideParamsCustomAuthInput < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :api_base + + sig { params(api_base: String).returns(T.attached_class) } + def self.new(api_base:) + end + + sig { override.returns({ api_base: String }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::Variants + ] + ) + end + def self.variants + end + end + + module MockResponse + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse, + T.anything + ) + end + + class ModelResponse < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig do + returns( + T::Array[ + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + T::Hash[Symbol, T.anything] + ) + ] + ) + end + attr_accessor :choices + + sig { returns(Integer) } + attr_accessor :created + + sig { returns(String) } + attr_accessor :object + + sig { returns(T.nilable(String)) } + attr_accessor :model + + sig { returns(T.nilable(String)) } + attr_accessor :system_fingerprint + + sig do + params( + id: String, + choices: + T::Array[ + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::OrHash, + T::Hash[Symbol, T.anything] + ) + ], + created: Integer, + object: String, + model: T.nilable(String), + system_fingerprint: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + id:, + choices:, + created:, + object:, + model: nil, + system_fingerprint: nil + ) + end + + sig do + override.returns( + { + id: String, + choices: + T::Array[ + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + T::Hash[Symbol, T.anything] + ) + ], + created: Integer, + object: String, + model: T.nilable(String), + system_fingerprint: T.nilable(String) + } + ) + end + def to_hash + end + + module Choice + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + T::Hash[Symbol, T.anything] + ) + end + + class Choices < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :finish_reason + + sig { returns(Integer) } + attr_accessor :index + + sig do + returns( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message + ) + end + attr_reader :message + + sig do + params( + message: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::OrHash + ).void + end + attr_writer :message + + sig do + returns( + T.nilable( + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + T.anything + ) + ) + ) + end + attr_accessor :logprobs + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + finish_reason: String, + index: Integer, + message: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::OrHash, + logprobs: + T.nilable( + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::OrHash, + T.anything + ) + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + finish_reason:, + index:, + message:, + logprobs: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + finish_reason: String, + index: Integer, + message: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + logprobs: + T.nilable( + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + T.anything + ) + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + + class Message < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_accessor :content + + sig do + returns( + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall + ) + ) + end + attr_reader :function_call + + sig do + params( + function_call: + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall::OrHash + ) + ).void + end + attr_writer :function_call + + sig do + returns( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::OrSymbol + ) + end + attr_accessor :role + + sig do + returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) + end + attr_accessor :tool_calls + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation + ] + ) + ) + end + attr_accessor :annotations + + sig do + returns( + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio + ) + ) + end + attr_reader :audio + + sig do + params( + audio: + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio::OrHash + ) + ).void + end + attr_writer :audio + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image + ] + ) + ) + end + attr_accessor :images + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig { returns(T.nilable(String)) } + attr_accessor :reasoning_content + + sig do + returns( + T.nilable( + T::Array[ + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ) + ) + end + attr_accessor :thinking_blocks + + sig do + params( + content: T.nilable(String), + function_call: + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall::OrHash + ), + role: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::OrSymbol, + tool_calls: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + annotations: + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::OrHash + ] + ), + audio: + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio::OrHash + ), + images: + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::OrHash + ] + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::OrHash, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::OrHash + ) + ] + ) + ).returns(T.attached_class) + end + def self.new( + content:, + function_call:, + role:, + tool_calls:, + annotations: nil, + audio: nil, + images: nil, + provider_specific_fields: nil, + reasoning_content: nil, + thinking_blocks: nil + ) + end + + sig do + override.returns( + { + content: T.nilable(String), + function_call: + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall + ), + role: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::OrSymbol, + tool_calls: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + annotations: + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation + ] + ), + audio: + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio + ), + images: + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image + ] + ), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ) + } + ) + end + def to_hash + end + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig do + params( + arguments: String, + name: T.nilable(String) + ).returns(T.attached_class) + end + def self.new(arguments:, name: nil) + end + + sig do + override.returns( + { arguments: String, name: T.nilable(String) } + ) + end + def to_hash + end + end + + module Role + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + ASSISTANT = + T.let( + :assistant, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + USER = + T.let( + :user, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + TOOL = + T.let( + :tool, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + FUNCTION = + T.let( + :function, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Role::TaggedSymbol + ] + ) + end + def self.values + end + end + + class Annotation < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol + ).void + end + attr_writer :type + + sig do + returns( + T.nilable( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + ) + ) + end + attr_reader :url_citation + + sig do + params( + url_citation: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation::OrHash + ).void + end + attr_writer :url_citation + + sig do + params( + type: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol, + url_citation: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation::OrHash + ).returns(T.attached_class) + end + def self.new(type: nil, url_citation: nil) + end + + sig do + override.returns( + { + type: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::OrSymbol, + url_citation: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + } + ) + end + def to_hash + end + + module Type + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + URL_CITATION = + T.let( + :url_citation, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::Type::TaggedSymbol + ] + ) + end + def self.values + end + end + + class URLCitation < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Integer)) } + attr_reader :end_index + + sig { params(end_index: Integer).void } + attr_writer :end_index + + sig { returns(T.nilable(Integer)) } + attr_reader :start_index + + sig { params(start_index: Integer).void } + attr_writer :start_index + + sig { returns(T.nilable(String)) } + attr_reader :title + + sig { params(title: String).void } + attr_writer :title + + sig { returns(T.nilable(String)) } + attr_reader :url + + sig { params(url: String).void } + attr_writer :url + + sig do + params( + end_index: Integer, + start_index: Integer, + title: String, + url: String + ).returns(T.attached_class) + end + def self.new( + end_index: nil, + start_index: nil, + title: nil, + url: nil + ) + end + + sig do + override.returns( + { + end_index: Integer, + start_index: Integer, + title: String, + url: String + } + ) + end + def to_hash + end + end + end + + class Audio < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :id + + sig { returns(String) } + attr_accessor :data + + sig { returns(Integer) } + attr_accessor :expires_at + + sig { returns(String) } + attr_accessor :transcript + + 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 + + sig do + override.returns( + { + id: String, + data: String, + expires_at: Integer, + transcript: String + } + ) + end + def to_hash + end + end + + class Image < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL + ) + end + attr_reader :image_url + + sig do + params( + image_url: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL::OrHash + ).void + end + attr_writer :image_url + + sig { returns(Integer) } + attr_accessor :index + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + image_url: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL::OrHash, + index: Integer, + type: Symbol + ).returns(T.attached_class) + end + def self.new(image_url:, index:, type: :image_url) + end + + sig do + override.returns( + { + image_url: + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + type: Symbol + } + ) + end + def to_hash + end + + class ImageURL < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_accessor :detail + + sig do + params(url: String, detail: T.nilable(String)).returns( + T.attached_class + ) + end + def self.new(url:, detail: nil) + end + + sig do + override.returns( + { url: String, detail: T.nilable(String) } + ) + end + def to_hash + end + end + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :data + + sig { params(data: String).void } + attr_writer :data + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + data: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + data: nil, + type: :redacted_thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + data: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::Variants + ] + ) + end + def self.variants + end + end + end + + module Logprobs + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + T.anything + ) + end + + class ChoiceLogprobs < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content + ] + ) + ) + end + attr_accessor :content + + sig do + params( + content: + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::OrHash + ] + ) + ).returns(T.attached_class) + end + def self.new(content: nil) + end + + sig do + override.returns( + { + content: + T.nilable( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content + ] + ) + } + ) + end + def to_hash + end + + class Content < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :token + + sig { returns(Float) } + attr_accessor :logprob + + sig do + returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob + ] + ) + end + attr_accessor :top_logprobs + + sig { returns(T.nilable(T::Array[Integer])) } + attr_accessor :bytes + + sig do + params( + token: String, + logprob: Float, + top_logprobs: + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob::OrHash + ], + bytes: T.nilable(T::Array[Integer]) + ).returns(T.attached_class) + end + def self.new(token:, logprob:, top_logprobs:, bytes: nil) + end + + sig do + override.returns( + { + token: String, + logprob: Float, + top_logprobs: + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob + ], + bytes: T.nilable(T::Array[Integer]) + } + ) + end + def to_hash + end + + class TopLogprob < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :token + + sig { returns(Float) } + attr_accessor :logprob + + sig { returns(T.nilable(T::Array[Integer])) } + attr_accessor :bytes + + sig do + params( + token: String, + logprob: Float, + bytes: T.nilable(T::Array[Integer]) + ).returns(T.attached_class) + end + def self.new(token:, logprob:, bytes: nil) + end + + sig do + override.returns( + { + token: String, + logprob: Float, + bytes: T.nilable(T::Array[Integer]) + } + ) + end + def to_hash + end + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::Variants + ] + ) + end + def self.variants + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Variants + ] + ) + end + def self.variants + end + + StreamingChoiceMap = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) end + end sig do override.returns( T::Array[ - Hanzoai::ModelCreateParams::LlmParams::ConfigurableClientsideAuthParam::Variants + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::Variants ] ) end @@ -357,7 +2021,7 @@ module Hanzoai sig do override.returns( T::Array[ - Hanzoai::ModelCreateParams::LlmParams::StreamTimeout::Variants + Hanzoai::ModelCreateParams::LitellmParams::StreamTimeout::Variants ] ) end @@ -372,7 +2036,9 @@ module Hanzoai sig do override.returns( - T::Array[Hanzoai::ModelCreateParams::LlmParams::Timeout::Variants] + T::Array[ + Hanzoai::ModelCreateParams::LitellmParams::Timeout::Variants + ] ) end def self.variants @@ -382,17 +2048,23 @@ module Hanzoai module VertexCredentials extend Hanzoai::Internal::Type::Union - Variants = T.type_alias { T.any(T.anything, String) } + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } sig do override.returns( T::Array[ - Hanzoai::ModelCreateParams::LlmParams::VertexCredentials::Variants + Hanzoai::ModelCreateParams::LitellmParams::VertexCredentials::Variants ] ) end def self.variants end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end end end diff --git a/rbi/hanzoai/models/model_list_params.rbi b/rbi/hanzoai/models/model_list_params.rbi index 3fcf9233..013a7d6d 100644 --- a/rbi/hanzoai/models/model_list_params.rbi +++ b/rbi/hanzoai/models/model_list_params.rbi @@ -11,6 +11,18 @@ module Hanzoai T.any(Hanzoai::ModelListParams, Hanzoai::Internal::AnyHash) end + sig { returns(T.nilable(String)) } + attr_accessor :fallback_type + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :include_metadata + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :include_model_access_groups + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :only_model_access_groups + sig { returns(T.nilable(T::Boolean)) } attr_accessor :return_wildcard_routes @@ -19,12 +31,20 @@ module Hanzoai sig do params( + fallback_type: T.nilable(String), + include_metadata: T.nilable(T::Boolean), + include_model_access_groups: T.nilable(T::Boolean), + only_model_access_groups: T.nilable(T::Boolean), return_wildcard_routes: T.nilable(T::Boolean), team_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( + fallback_type: nil, + include_metadata: nil, + include_model_access_groups: nil, + only_model_access_groups: nil, return_wildcard_routes: nil, team_id: nil, request_options: {} @@ -34,6 +54,10 @@ module Hanzoai sig do override.returns( { + fallback_type: T.nilable(String), + include_metadata: T.nilable(T::Boolean), + include_model_access_groups: T.nilable(T::Boolean), + only_model_access_groups: T.nilable(T::Boolean), return_wildcard_routes: T.nilable(T::Boolean), team_id: T.nilable(String), request_options: Hanzoai::RequestOptions diff --git a/rbi/hanzoai/models/openai/deployment_embed_params.rbi b/rbi/hanzoai/models/openai/deployment_embed_params.rbi index b0948934..d1d2e7e6 100644 --- a/rbi/hanzoai/models/openai/deployment_embed_params.rbi +++ b/rbi/hanzoai/models/openai/deployment_embed_params.rbi @@ -15,17 +15,146 @@ module Hanzoai ) end + sig { returns(String) } + attr_accessor :body_model + + sig { returns(T.nilable(String)) } + attr_accessor :api_base + + sig { returns(T.nilable(String)) } + attr_accessor :api_key + + sig { returns(T.nilable(String)) } + attr_accessor :api_type + + sig { returns(T.nilable(String)) } + attr_accessor :api_version + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :caching + + sig { params(caching: T::Boolean).void } + attr_writer :caching + sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T.attached_class + returns( + T.nilable( + Hanzoai::OpenAI::DeploymentEmbedParams::CustomLlmProvider::Variants + ) ) end - def self.new(request_options: {}) + attr_accessor :custom_llm_provider + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :input + + sig { params(input: T::Array[String]).void } + attr_writer :input + + sig { returns(T.nilable(String)) } + attr_accessor :litellm_call_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :litellm_logging_obj + + sig { returns(T.nilable(String)) } + attr_accessor :logger_fn + + sig { returns(T.nilable(Integer)) } + attr_reader :timeout + + sig { params(timeout: Integer).void } + attr_writer :timeout + + sig { returns(T.nilable(String)) } + attr_accessor :user + + sig do + params( + body_model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable( + Hanzoai::OpenAI::DeploymentEmbedParams::CustomLlmProvider::Variants + ), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + body_model:, + api_base: nil, + api_key: nil, + api_type: nil, + api_version: nil, + caching: nil, + custom_llm_provider: nil, + input: nil, + litellm_call_id: nil, + litellm_logging_obj: nil, + logger_fn: nil, + timeout: nil, + user: nil, + request_options: {} + ) end - sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + sig do + override.returns( + { + body_model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable( + Hanzoai::OpenAI::DeploymentEmbedParams::CustomLlmProvider::Variants + ), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end def to_hash end + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::DeploymentEmbedParams::CustomLlmProvider::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end end end end diff --git a/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi b/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi index 33d2a0e6..e3a02e5b 100644 --- a/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi +++ b/rbi/hanzoai/models/openai/deployments/chat_complete_params.rbi @@ -17,16 +17,2647 @@ module Hanzoai end sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T.attached_class + returns( + T::Array[ + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + ) + ] ) end - def self.new(request_options: {}) + attr_accessor :messages + + sig { returns(String) } + attr_accessor :body_model + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :caching + + sig { returns(T.nilable(T::Hash[Symbol, String])) } + attr_accessor :context_window_fallback_dict + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :frequency_penalty + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::FunctionCall::Variants + ) + ) end + attr_accessor :function_call + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :functions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :guardrails + + sig { returns(T.nilable(T::Hash[Symbol, Float])) } + attr_accessor :logit_bias + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :logprobs - sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + sig { returns(T.nilable(Integer)) } + attr_accessor :max_tokens + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :metadata + + sig { returns(T.nilable(Integer)) } + attr_accessor :n + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :parallel_tool_calls + + sig { returns(T.nilable(Float)) } + attr_accessor :presence_penalty + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :response_format + + sig { returns(T.nilable(Integer)) } + attr_accessor :seed + + sig { returns(T.nilable(String)) } + attr_accessor :service_tier + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Stop::Variants + ) + ) + end + attr_accessor :stop + + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :stream + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :stream_options + + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::ToolChoice::Variants + ) + ) + end + attr_accessor :tool_choice + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :tools + + sig { returns(T.nilable(Integer)) } + attr_accessor :top_logprobs + + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + sig { returns(T.nilable(String)) } + attr_accessor :user + + sig do + params( + messages: + T::Array[ + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::OrHash + ) + ], + body_model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Stop::Variants + ), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + messages:, + body_model:, + caching: nil, + context_window_fallback_dict: nil, + fallbacks: nil, + frequency_penalty: nil, + function_call: nil, + functions: nil, + guardrails: nil, + logit_bias: nil, + logprobs: nil, + max_tokens: nil, + metadata: nil, + n: nil, + num_retries: nil, + parallel_tool_calls: nil, + presence_penalty: nil, + response_format: nil, + seed: nil, + service_tier: nil, + stop: nil, + stream: nil, + stream_options: nil, + temperature: nil, + tool_choice: nil, + tools: nil, + top_logprobs: nil, + top_p: nil, + user: nil, + request_options: {} + ) + end + + sig do + override.returns( + { + messages: + T::Array[ + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + ) + ], + body_model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: + T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Stop::Variants + ), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end def to_hash end + + module Message + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + ) + end + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl::OrHash, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, cache_control: nil, role: :user) + end + + sig do + override.returns( + { + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::Variants + ] + ) + end + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject + ) + end + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ) + ) + end + attr_accessor :image_url + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + image_url: + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject::OrHash + ), + type: Symbol + ).returns(T.attached_class) + end + def self.new(image_url:, type: :image_url) + end + + sig do + override.returns( + { + image_url: + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ), + type: Symbol + } + ) + end + def to_hash + end + + module ImageURL + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + ) + end + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_reader :detail + + sig { params(detail: String).void } + attr_writer :detail + + sig { returns(T.nilable(String)) } + attr_reader :format_ + + sig { params(format_: String).void } + attr_writer :format_ + + sig do + params( + url: String, + detail: String, + format_: String + ).returns(T.attached_class) + end + def self.new(url:, detail: nil, format_: nil) + end + + sig do + override.returns( + { url: String, detail: String, format_: String } + ) + end + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::Variants + ] + ) + end + def self.variants + end + end + end + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio + ) + end + attr_reader :input_audio + + sig do + params( + input_audio: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::OrHash + ).void + end + attr_writer :input_audio + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + input_audio: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(input_audio:, type: :input_audio) + end + + sig do + override.returns( + { + input_audio: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: Symbol + } + ) + end + def to_hash + end + + class InputAudio < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :data + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + ) + end + attr_accessor :format_ + + sig do + params( + data: String, + format_: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + ).returns(T.attached_class) + end + def self.new(data:, format_:) + end + + sig do + override.returns( + { + data: String, + format_: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::OrSymbol + } + ) + end + def to_hash + end + + module Format + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + WAV = + T.let( + :wav, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ) + MP3 = + T.let( + :mp3, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::Format::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + ) + ) + end + attr_reader :citations + + sig do + params( + citations: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations::OrHash + ) + ).void + end + attr_writer :citations + + sig { returns(String) } + attr_accessor :context + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source + ) + end + attr_reader :source + + sig do + params( + source: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source::OrHash + ).void + end + attr_writer :source + + sig { returns(String) } + attr_accessor :title + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + citations: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations::OrHash + ), + context: String, + source: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source::OrHash, + title: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + citations:, + context:, + source:, + title:, + type: :document + ) + end + + sig do + override.returns( + { + citations: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations + ), + context: String, + source: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: Symbol + } + ) + end + def to_hash + end + + class Citations < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T::Boolean) } + attr_accessor :enabled + + sig do + params(enabled: T::Boolean).returns(T.attached_class) + end + def self.new(enabled:) + end + + sig { override.returns({ enabled: T::Boolean }) } + def to_hash + end + end + + class Source < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :data + + sig { returns(String) } + attr_accessor :media_type + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + data: String, + media_type: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new(data:, media_type:, type: :text) + end + + sig do + override.returns( + { data: String, media_type: String, type: Symbol } + ) + end + def to_hash + end + end + end + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + ) + end + attr_accessor :video_url + + sig do + params( + video_url: + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject::OrHash + ), + type: Symbol + ).returns(T.attached_class) + end + def self.new(video_url:, type: :video_url) + end + + sig do + override.returns( + { + type: Symbol, + video_url: + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + } + ) + end + def to_hash + end + + module VideoURL + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + ) + end + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :url + + sig { returns(T.nilable(String)) } + attr_reader :detail + + sig { params(detail: String).void } + attr_writer :detail + + sig do + params(url: String, detail: String).returns( + T.attached_class + ) + end + def self.new(url:, detail: nil) + end + + sig do + override.returns({ url: String, detail: String }) + end + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::Variants + ] + ) + end + def self.variants + end + end + end + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File + ) + end + attr_reader :file + + sig do + params( + file: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File::OrHash + ).void + end + attr_writer :file + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + file: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(file:, type: :file) + end + + sig do + override.returns( + { + file: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: Symbol + } + ) + end + def to_hash + end + + class File < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :file_data + + sig { params(file_data: String).void } + attr_writer :file_data + + sig { returns(T.nilable(String)) } + attr_reader :file_id + + sig { params(file_id: String).void } + attr_writer :file_id + + sig { returns(T.nilable(String)) } + attr_reader :filename + + sig { params(filename: String).void } + attr_writer :filename + + sig { returns(T.nilable(String)) } + attr_reader :format_ + + sig { params(format_: String).void } + attr_writer :format_ + + sig do + params( + file_data: String, + file_id: String, + filename: String, + format_: String + ).returns(T.attached_class) + end + def self.new( + file_data: nil, + file_id: nil, + filename: nil, + format_: nil + ) + end + + sig do + override.returns( + { + file_data: String, + file_id: String, + filename: String, + format_: String + } + ) + end + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::Variants + ] + ) + end + def self.variants + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + union: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ) + ) + end + attr_accessor :content + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall + ) + ) + end + attr_reader :function_call + + sig do + params( + function_call: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall::OrHash + ) + ).void + end + attr_writer :function_call + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(String)) } + attr_accessor :reasoning_content + + sig do + returns( + T.nilable( + T::Array[ + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ) + ) + end + attr_accessor :thinking_blocks + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall + ] + ) + ) + end + attr_accessor :tool_calls + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl::OrHash, + content: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ), + function_call: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall::OrHash + ), + name: T.nilable(String), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::OrHash + ) + ] + ), + tool_calls: + T.nilable( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::OrHash + ] + ), + role: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + content: nil, + function_call: nil, + name: nil, + reasoning_content: nil, + thinking_blocks: nil, + tool_calls: nil, + role: :assistant + ) + end + + sig do + override.returns( + { + role: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ), + function_call: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall + ), + name: T.nilable(String), + reasoning_content: T.nilable(String), + thinking_blocks: + T.nilable( + T::Array[ + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + ] + ), + tool_calls: + T.nilable( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall + ] + ) + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::Variants + ] + ) + end + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock + ) + end + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::Variants + ] + ) + end + def self.variants + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + union: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :arguments + + sig { params(arguments: String).void } + attr_writer :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + arguments: nil, + name: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + end + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + ) + end + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :signature + + sig { params(signature: String).void } + attr_writer :signature + + sig { returns(T.nilable(String)) } + attr_reader :thinking + + sig { params(thinking: String).void } + attr_writer :thinking + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + signature: String, + thinking: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + signature: nil, + thinking: nil, + type: :thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + signature: String, + thinking: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ) + ) + end + attr_accessor :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :data + + sig { params(data: String).void } + attr_writer :data + + sig do + params( + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent::OrHash + ) + ), + data: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + cache_control: nil, + data: nil, + type: :redacted_thinking + ) + end + + sig do + override.returns( + { + type: Symbol, + cache_control: + T.nilable( + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + ), + data: String + } + ) + end + def to_hash + end + + module CacheControl + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Hash[Symbol, T.anything], + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + ) + end + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::Variants + ] + ) + end + def self.variants + end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::Variants + ] + ) + end + def self.variants + end + end + + class ToolCall < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_accessor :id + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function + ) + end + attr_reader :function + + sig do + params( + function: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function::OrHash + ).void + end + attr_writer :function + + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + id: T.nilable(String), + function: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(id:, function:, type: :function) + end + + sig do + override.returns( + { + id: T.nilable(String), + function: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: Symbol + } + ) + end + def to_hash + end + + class Function < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(String)) } + attr_reader :arguments + + sig { params(arguments: String).void } + attr_writer :arguments + + sig { returns(T.nilable(String)) } + attr_accessor :name + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :provider_specific_fields + + sig do + params( + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + ).returns(T.attached_class) + end + def self.new( + arguments: nil, + name: nil, + provider_specific_fields: nil + ) + end + + sig do + override.returns( + { + arguments: String, + name: T.nilable(String), + provider_specific_fields: + T.nilable(T::Hash[Symbol, T.anything]) + } + ) + end + def to_hash + end + end + end + end + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig { returns(String) } + attr_accessor :tool_call_id + + sig do + params( + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants, + tool_call_id: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, tool_call_id:, role: :tool) + end + + sig do + override.returns( + { + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants, + role: Symbol, + tool_call_id: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + ] + ) + end + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig do + params( + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl::OrHash, + name: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new( + content:, + cache_control: nil, + name: nil, + role: :system + ) + end + + sig do + override.returns( + { + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ) + ) + end + attr_accessor :content + + sig { returns(String) } + attr_accessor :name + + sig { returns(Symbol) } + attr_accessor :role + + sig { returns(T.nilable(String)) } + attr_accessor :tool_call_id + + sig do + params( + content: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ), + name: String, + tool_call_id: T.nilable(String), + role: Symbol + ).returns(T.attached_class) + end + def self.new(content:, name:, tool_call_id:, role: :function) + end + + sig do + override.returns( + { + content: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ), + name: String, + role: Symbol, + tool_call_id: T.nilable(String) + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 + ] + ) + end + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :text + + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig do + params( + text: String, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl::OrHash, + type: Symbol + ).returns(T.attached_class) + end + def self.new(text:, cache_control: nil, type: :text) + end + + sig do + override.returns( + { + text: String, + type: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + ) + end + def to_hash + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage, + Hanzoai::Internal::AnyHash + ) + end + + sig do + returns( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants + ) + end + attr_accessor :content + + sig { returns(Symbol) } + attr_accessor :role + + sig do + returns( + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl + ) + ) + end + attr_reader :cache_control + + sig do + params( + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl::OrHash + ).void + end + attr_writer :cache_control + + sig { returns(T.nilable(String)) } + attr_reader :name + + sig { params(name: String).void } + attr_writer :name + + sig do + params( + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl::OrHash, + name: String, + role: Symbol + ).returns(T.attached_class) + end + def self.new( + content:, + cache_control: nil, + name: nil, + role: :developer + ) + end + + sig do + override.returns( + { + content: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants, + role: Symbol, + cache_control: + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + ) + end + def to_hash + end + + module Content + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::Content::Variants + ] + ) + end + def self.variants + end + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + + class CacheControl < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Symbol) } + attr_accessor :type + + sig { params(type: Symbol).returns(T.attached_class) } + def self.new(type: :ephemeral) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end + end + end + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::Variants + ] + ) + end + def self.variants + end + end + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::FunctionCall::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end + + module Stop + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Array[String]) } + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Stop::Variants + ] + ) + end + def self.variants + end + + StringArray = + T.let( + Hanzoai::Internal::Type::ArrayOf[String], + Hanzoai::Internal::Type::Converter + ) + end + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::OpenAI::Deployments::ChatCompleteParams::ToolChoice::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[ + Hanzoai::Internal::Type::Unknown + ], + Hanzoai::Internal::Type::Converter + ) + end end end end diff --git a/rbi/hanzoai/models/org_member.rbi b/rbi/hanzoai/models/org_member.rbi index 6c2af7e1..282080d2 100644 --- a/rbi/hanzoai/models/org_member.rbi +++ b/rbi/hanzoai/models/org_member.rbi @@ -9,9 +9,12 @@ module Hanzoai sig { returns(Hanzoai::OrgMember::Role::OrSymbol) } attr_accessor :role + # The email address of the user to add. Either user_id or user_email must be + # provided sig { returns(T.nilable(String)) } attr_accessor :user_email + # The unique ID of the user to add. Either user_id or user_email must be provided sig { returns(T.nilable(String)) } attr_accessor :user_id @@ -22,7 +25,14 @@ module Hanzoai user_id: T.nilable(String) ).returns(T.attached_class) end - def self.new(role:, user_email: nil, user_id: nil) + def self.new( + role:, + # The email address of the user to add. Either user_id or user_email must be + # provided + user_email: nil, + # The unique ID of the user to add. Either user_id or user_email must be provided + user_id: nil + ) end sig do diff --git a/rbi/hanzoai/models/organization/info_retrieve_response.rbi b/rbi/hanzoai/models/organization/info_retrieve_response.rbi deleted file mode 100644 index 76e2237e..00000000 --- a/rbi/hanzoai/models/organization/info_retrieve_response.rbi +++ /dev/null @@ -1,690 +0,0 @@ -# typed: strong - -module Hanzoai - module Models - module Organization - class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :budget_id - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(T::Array[String]) } - attr_accessor :models - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :updated_by - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig do - returns( - T.nilable( - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Member - ] - ) - ) - end - attr_reader :members - - sig do - params( - members: - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::OrHash - ] - ).void - end - attr_writer :members - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(String)) } - attr_accessor :organization_alias - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig do - returns( - T.nilable( - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Team - ] - ) - ) - end - attr_reader :teams - - sig do - params( - teams: - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::OrHash - ] - ).void - end - attr_writer :teams - - # Returned by the /organization/info endpoint and /organization/list endpoint - sig do - params( - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable::OrHash - ), - members: - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::OrHash - ], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::OrHash - ] - ).returns(T.attached_class) - end - def self.new( - budget_id:, - created_at:, - created_by:, - models:, - updated_at:, - updated_by:, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - members: nil, - metadata: nil, - organization_alias: nil, - organization_id: nil, - spend: nil, - teams: nil - ) - end - - sig do - override.returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable - ), - members: - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Member - ], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Team - ] - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - - class Member < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig { returns(T.nilable(T.anything)) } - attr_reader :user - - sig { params(user: T.anything).void } - attr_writer :user - - sig { returns(T.nilable(String)) } - attr_accessor :user_role - - # This is the table that track what organizations a user belongs to and users - # spend within the organization - sig do - params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - ).returns(T.attached_class) - end - def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil - ) - end - - sig do - override.returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :team_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :admins - - sig { params(admins: T::Array[T.anything]).void } - attr_writer :admins - - sig { returns(T.nilable(T::Boolean)) } - attr_reader :blocked - - sig { params(blocked: T::Boolean).void } - attr_writer :blocked - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Time)) } - attr_accessor :budget_reset_at - - sig { returns(T.nilable(Time)) } - attr_accessor :created_at - - sig do - returns( - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable - ) - ) - end - attr_reader :llm_model_table - - sig do - params( - llm_model_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::OrHash - ) - ).void - end - attr_writer :llm_model_table - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :members - - sig { params(members: T::Array[T.anything]).void } - attr_writer :members - - sig { returns(T.nilable(T::Array[Hanzoai::Member])) } - attr_reader :members_with_roles - - sig do - params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void - end - attr_writer :members_with_roles - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(Integer)) } - attr_accessor :model_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :models - - sig { params(models: T::Array[T.anything]).void } - attr_writer :models - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :spend - - sig { returns(T.nilable(String)) } - attr_accessor :team_alias - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - sig do - params( - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::OrHash - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - team_id:, - admins: nil, - blocked: nil, - budget_duration: nil, - budget_reset_at: nil, - created_at: nil, - llm_model_table: nil, - max_budget: nil, - max_parallel_requests: nil, - members: nil, - members_with_roles: nil, - metadata: nil, - model_id: nil, - models: nil, - organization_id: nil, - rpm_limit: nil, - spend: nil, - team_alias: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(String) } - attr_accessor :updated_by - - sig do - returns( - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants - ) - ) - end - attr_accessor :model_aliases - - sig do - params( - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants - ) - ).returns(T.attached_class) - end - def self.new(created_by:, updated_by:, model_aliases: nil) - end - - sig do - override.returns( - { - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants - ) - } - ) - end - def to_hash - end - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(T.anything, String) } - - sig do - override.returns( - T::Array[ - Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::ModelAliases::Variants - ] - ) - end - def self.variants - end - end - end - end - end - end - end -end diff --git a/rbi/hanzoai/models/organization_add_member_response.rbi b/rbi/hanzoai/models/organization_add_member_response.rbi index c18418c1..5d927251 100644 --- a/rbi/hanzoai/models/organization_add_member_response.rbi +++ b/rbi/hanzoai/models/organization_add_member_response.rbi @@ -14,13 +14,7 @@ module Hanzoai sig { returns(String) } attr_accessor :organization_id - sig do - returns( - T::Array[ - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership - ] - ) - end + sig { returns(T::Array[Hanzoai::OrganizationMembershipTable]) } attr_accessor :updated_organization_memberships sig do @@ -34,9 +28,7 @@ module Hanzoai params( organization_id: String, updated_organization_memberships: - T::Array[ - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::OrHash - ], + T::Array[Hanzoai::OrganizationMembershipTable::OrHash], updated_users: T::Array[ Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrHash @@ -55,9 +47,7 @@ module Hanzoai { organization_id: String, updated_organization_memberships: - T::Array[ - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership - ], + T::Array[Hanzoai::OrganizationMembershipTable], updated_users: T::Array[ Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser @@ -68,189 +58,6 @@ module Hanzoai def to_hash end - class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig { returns(T.nilable(T.anything)) } - attr_reader :user - - sig { params(user: T.anything).void } - attr_writer :user - - sig { returns(T.nilable(String)) } - attr_accessor :user_role - - # This is the table that track what organizations a user belongs to and users - # spend within the organization - sig do - params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - ).returns(T.attached_class) - end - def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil - ) - end - - sig do - override.returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - class UpdatedUser < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do @@ -269,16 +76,19 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :budget_reset_at + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + sig { returns(T.nilable(Float)) } attr_accessor :max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_spend sig { returns(T.nilable(T::Array[T.anything])) } @@ -287,15 +97,29 @@ module Hanzoai sig { params(models: T::Array[T.anything]).void } attr_writer :models + # Represents a LiteLLM_ObjectPermissionTable record sig do returns( T.nilable( - T::Array[ - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership - ] + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission ) ) end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig do + returns(T.nilable(T::Array[Hanzoai::OrganizationMembershipTable])) + end attr_accessor :organization_memberships sig { returns(T.nilable(Integer)) } @@ -319,6 +143,12 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + + sig { returns(T.nilable(String)) } + attr_accessor :user_alias + sig { returns(T.nilable(String)) } attr_accessor :user_email @@ -330,22 +160,25 @@ module Hanzoai user_id: String, budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_spend: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), models: T::Array[T.anything], - organization_memberships: + object_permission: T.nilable( - T::Array[ - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::OrHash - ] + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission::OrHash ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable::OrHash]), rpm_limit: T.nilable(Integer), spend: Float, sso_user_id: T.nilable(String), teams: T::Array[String], tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), user_email: T.nilable(String), user_role: T.nilable(String) ).returns(T.attached_class) @@ -354,17 +187,22 @@ module Hanzoai user_id:, budget_duration: nil, budget_reset_at: nil, + created_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, + updated_at: nil, + user_alias: nil, user_email: nil, user_role: nil ) @@ -376,22 +214,25 @@ module Hanzoai user_id: String, budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_spend: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), models: T::Array[T.anything], - organization_memberships: + object_permission: T.nilable( - T::Array[ - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership - ] + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable]), rpm_limit: T.nilable(Integer), spend: Float, sso_user_id: T.nilable(String), teams: T::Array[String], tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), user_email: T.nilable(String), user_role: T.nilable(String) } @@ -400,187 +241,76 @@ module Hanzoai def to_hash end - class OrganizationMembership < Hanzoai::Internal::Type::BaseModel + class ObjectPermission < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership, + Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission, Hanzoai::Internal::AnyHash ) end - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table + attr_accessor :object_permission_id - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups - sig { returns(T.nilable(Float)) } - attr_reader :spend + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents - sig { params(spend: Float).void } - attr_writer :spend + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups - sig { returns(T.nilable(T.anything)) } - attr_reader :user + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers - sig { params(user: T.anything).void } - attr_writer :user + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions - sig { returns(T.nilable(String)) } - attr_accessor :user_role + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores - # This is the table that track what organizations a user belongs to and users - # spend within the organization + # Represents a LiteLLM_ObjectPermissionTable record sig do params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) ).returns(T.attached_class) end def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil ) end sig do override.returns( { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) } ) end def to_hash end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end end end end diff --git a/rbi/hanzoai/models/organization_create_params.rbi b/rbi/hanzoai/models/organization_create_params.rbi index e7773823..9118b96a 100644 --- a/rbi/hanzoai/models/organization_create_params.rbi +++ b/rbi/hanzoai/models/organization_create_params.rbi @@ -26,18 +26,39 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget + sig { returns(T.nilable(T::Hash[Symbol, Integer])) } + attr_accessor :model_rpm_limit + + sig { returns(T.nilable(T::Hash[Symbol, Integer])) } + attr_accessor :model_tpm_limit + sig { returns(T.nilable(T::Array[T.anything])) } attr_reader :models sig { params(models: T::Array[T.anything]).void } attr_writer :models + sig do + returns(T.nilable(Hanzoai::OrganizationCreateParams::ObjectPermission)) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::OrganizationCreateParams::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + sig { returns(T.nilable(String)) } attr_accessor :organization_id @@ -57,9 +78,15 @@ module Hanzoai budget_id: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::OrganizationCreateParams::ObjectPermission::OrHash + ), organization_id: T.nilable(String), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), @@ -75,7 +102,10 @@ module Hanzoai max_parallel_requests: nil, metadata: nil, model_max_budget: nil, + model_rpm_limit: nil, + model_tpm_limit: nil, models: nil, + object_permission: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, @@ -92,9 +122,13 @@ module Hanzoai budget_id: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T::Array[T.anything], + object_permission: + T.nilable(Hanzoai::OrganizationCreateParams::ObjectPermission), organization_id: T.nilable(String), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), @@ -105,6 +139,70 @@ module Hanzoai end def to_hash end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationCreateParams::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end end end end diff --git a/rbi/hanzoai/models/organization_create_response.rbi b/rbi/hanzoai/models/organization_create_response.rbi index 304d70de..7dbc0803 100644 --- a/rbi/hanzoai/models/organization_create_response.rbi +++ b/rbi/hanzoai/models/organization_create_response.rbi @@ -32,9 +32,43 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by - sig { returns(T.nilable(T.anything)) } + # Represents user-controllable params for a LiteLLM_BudgetTable record + sig { returns(T.nilable(Hanzoai::BudgetTable)) } + attr_reader :litellm_budget_table + + sig do + params( + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash) + ).void + end + attr_writer :litellm_budget_table + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::ObjectPermission + ) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + sig { returns(T.nilable(String)) } attr_accessor :organization_alias @@ -44,6 +78,13 @@ module Hanzoai sig { params(spend: Float).void } attr_writer :spend + sig do + returns( + T.nilable(T::Array[Hanzoai::Models::OrganizationCreateResponse::User]) + ) + end + attr_accessor :users + sig do params( budget_id: String, @@ -53,9 +94,21 @@ module Hanzoai organization_id: String, updated_at: Time, updated_by: String, - metadata: T.nilable(T.anything), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + object_permission: + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), organization_alias: T.nilable(String), - spend: Float + spend: Float, + users: + T.nilable( + T::Array[ + Hanzoai::Models::OrganizationCreateResponse::User::OrHash + ] + ) ).returns(T.attached_class) end def self.new( @@ -66,9 +119,15 @@ module Hanzoai organization_id:, updated_at:, updated_by:, + # Represents user-controllable params for a LiteLLM_BudgetTable record + litellm_budget_table: nil, metadata: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, organization_alias: nil, - spend: nil + spend: nil, + users: nil ) end @@ -82,14 +141,351 @@ module Hanzoai organization_id: String, updated_at: Time, updated_by: String, - metadata: T.nilable(T.anything), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + object_permission: + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::ObjectPermission + ), + object_permission_id: T.nilable(String), organization_alias: T.nilable(String), - spend: Float + spend: Float, + users: + T.nilable( + T::Array[Hanzoai::Models::OrganizationCreateResponse::User] + ) } ) end def to_hash end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationCreateResponse::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + class User < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationCreateResponse::User, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :user_id + + sig { returns(T.nilable(String)) } + attr_accessor :budget_duration + + sig { returns(T.nilable(Time)) } + attr_accessor :budget_reset_at + + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + + sig { returns(T.nilable(Float)) } + attr_accessor :max_budget + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :metadata + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_max_budget + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_spend + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_reader :models + + sig { params(models: T::Array[T.anything]).void } + attr_writer :models + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission + ) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig do + returns(T.nilable(T::Array[Hanzoai::OrganizationMembershipTable])) + end + attr_accessor :organization_memberships + + sig { returns(T.nilable(Integer)) } + attr_accessor :rpm_limit + + sig { returns(T.nilable(Float)) } + attr_reader :spend + + sig { params(spend: Float).void } + attr_writer :spend + + sig { returns(T.nilable(String)) } + attr_accessor :sso_user_id + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :teams + + sig { params(teams: T::Array[String]).void } + attr_writer :teams + + sig { returns(T.nilable(Integer)) } + attr_accessor :tpm_limit + + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + + sig { returns(T.nilable(String)) } + attr_accessor :user_alias + + sig { returns(T.nilable(String)) } + attr_accessor :user_email + + sig { returns(T.nilable(String)) } + attr_accessor :user_role + + sig do + params( + user_id: String, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + max_budget: T.nilable(Float), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission::OrHash + ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable::OrHash]), + rpm_limit: T.nilable(Integer), + spend: Float, + sso_user_id: T.nilable(String), + teams: T::Array[String], + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), + user_email: T.nilable(String), + user_role: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + user_id:, + budget_duration: nil, + budget_reset_at: nil, + created_at: nil, + max_budget: nil, + metadata: nil, + model_max_budget: nil, + model_spend: nil, + models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + organization_memberships: nil, + rpm_limit: nil, + spend: nil, + sso_user_id: nil, + teams: nil, + tpm_limit: nil, + updated_at: nil, + user_alias: nil, + user_email: nil, + user_role: nil + ) + end + + sig do + override.returns( + { + user_id: String, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + max_budget: T.nilable(Float), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission + ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable]), + rpm_limit: T.nilable(Integer), + spend: Float, + sso_user_id: T.nilable(String), + teams: T::Array[String], + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), + user_email: T.nilable(String), + user_role: T.nilable(String) + } + ) + end + def to_hash + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + end end end end diff --git a/rbi/hanzoai/models/organization_delete_response.rbi b/rbi/hanzoai/models/organization_delete_response.rbi index c692d6f7..61a55170 100644 --- a/rbi/hanzoai/models/organization_delete_response.rbi +++ b/rbi/hanzoai/models/organization_delete_response.rbi @@ -2,686 +2,9 @@ module Hanzoai module Models - class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationDeleteResponseItem, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :budget_id - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(T::Array[String]) } - attr_accessor :models - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :updated_by - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig do - returns( - T.nilable( - T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member] - ) - ) - end - attr_reader :members - - sig do - params( - members: - T::Array[ - Hanzoai::Models::OrganizationDeleteResponseItem::Member::OrHash - ] - ).void - end - attr_writer :members - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(String)) } - attr_accessor :organization_alias - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig do - returns( - T.nilable( - T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - ) - ) - end - attr_reader :teams - - sig do - params( - teams: - T::Array[ - Hanzoai::Models::OrganizationDeleteResponseItem::Team::OrHash - ] - ).void - end - attr_writer :teams - - # Returned by the /organization/info endpoint and /organization/list endpoint - sig do - params( - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable::OrHash - ), - members: - T::Array[ - Hanzoai::Models::OrganizationDeleteResponseItem::Member::OrHash - ], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: - T::Array[ - Hanzoai::Models::OrganizationDeleteResponseItem::Team::OrHash - ] - ).returns(T.attached_class) - end - def self.new( - budget_id:, - created_at:, - created_by:, - models:, - updated_at:, - updated_by:, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - members: nil, - metadata: nil, - organization_alias: nil, - organization_id: nil, - spend: nil, - teams: nil - ) - end - - sig do - override.returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable - ), - members: - T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: - T::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - - class Member < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationDeleteResponseItem::Member, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig { returns(T.nilable(T.anything)) } - attr_reader :user - - sig { params(user: T.anything).void } - attr_writer :user - - sig { returns(T.nilable(String)) } - attr_accessor :user_role - - # This is the table that track what organizations a user belongs to and users - # spend within the organization - sig do - params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - ).returns(T.attached_class) - end - def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil - ) - end - - sig do - override.returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationDeleteResponseItem::Team, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :team_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :admins - - sig { params(admins: T::Array[T.anything]).void } - attr_writer :admins - - sig { returns(T.nilable(T::Boolean)) } - attr_reader :blocked - - sig { params(blocked: T::Boolean).void } - attr_writer :blocked - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Time)) } - attr_accessor :budget_reset_at - - sig { returns(T.nilable(Time)) } - attr_accessor :created_at - - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable - ) - ) - end - attr_reader :llm_model_table - - sig do - params( - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::OrHash - ) - ).void - end - attr_writer :llm_model_table - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :members - - sig { params(members: T::Array[T.anything]).void } - attr_writer :members - - sig { returns(T.nilable(T::Array[Hanzoai::Member])) } - attr_reader :members_with_roles - - sig do - params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void - end - attr_writer :members_with_roles - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(Integer)) } - attr_accessor :model_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :models - - sig { params(models: T::Array[T.anything]).void } - attr_writer :models - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :spend - - sig { returns(T.nilable(String)) } - attr_accessor :team_alias - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - sig do - params( - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::OrHash - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - team_id:, - admins: nil, - blocked: nil, - budget_duration: nil, - budget_reset_at: nil, - created_at: nil, - llm_model_table: nil, - max_budget: nil, - max_parallel_requests: nil, - members: nil, - members_with_roles: nil, - metadata: nil, - model_id: nil, - models: nil, - organization_id: nil, - rpm_limit: nil, - spend: nil, - team_alias: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(String) } - attr_accessor :updated_by - - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants - ) - ) - end - attr_accessor :model_aliases - - sig do - params( - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants - ) - ).returns(T.attached_class) - end - def self.new(created_by:, updated_by:, model_aliases: nil) - end - - sig do - override.returns( - { - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants - ) - } - ) - end - def to_hash - end - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(T.anything, String) } - - sig do - override.returns( - T::Array[ - Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::ModelAliases::Variants - ] - ) - end - def self.variants - end - end - end - end - end - OrganizationDeleteResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[ - Hanzoai::Models::OrganizationDeleteResponseItem - ], + Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/organization_list_params.rbi b/rbi/hanzoai/models/organization_list_params.rbi index d778784e..2d8eeeb2 100644 --- a/rbi/hanzoai/models/organization_list_params.rbi +++ b/rbi/hanzoai/models/organization_list_params.rbi @@ -11,15 +11,41 @@ module Hanzoai T.any(Hanzoai::OrganizationListParams, Hanzoai::Internal::AnyHash) end + # Filter organizations by partial organization_alias match. Supports + # case-insensitive search. + sig { returns(T.nilable(String)) } + attr_accessor :org_alias + + # Filter organizations by exact organization_id match + sig { returns(T.nilable(String)) } + attr_accessor :org_id + sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T.attached_class - ) + params( + org_alias: T.nilable(String), + org_id: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.attached_class) end - def self.new(request_options: {}) + def self.new( + # Filter organizations by partial organization_alias match. Supports + # case-insensitive search. + org_alias: nil, + # Filter organizations by exact organization_id match + org_id: nil, + request_options: {} + ) end - sig { override.returns({ request_options: Hanzoai::RequestOptions }) } + sig do + override.returns( + { + org_alias: T.nilable(String), + org_id: T.nilable(String), + request_options: Hanzoai::RequestOptions + } + ) + end def to_hash end end diff --git a/rbi/hanzoai/models/organization_list_response.rbi b/rbi/hanzoai/models/organization_list_response.rbi index c0d2bcb6..ee3a9a0a 100644 --- a/rbi/hanzoai/models/organization_list_response.rbi +++ b/rbi/hanzoai/models/organization_list_response.rbi @@ -2,685 +2,9 @@ module Hanzoai module Models - class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationListResponseItem, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :budget_id - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(T::Array[String]) } - attr_accessor :models - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :updated_by - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig do - returns( - T.nilable( - T::Array[Hanzoai::Models::OrganizationListResponseItem::Member] - ) - ) - end - attr_reader :members - - sig do - params( - members: - T::Array[ - Hanzoai::Models::OrganizationListResponseItem::Member::OrHash - ] - ).void - end - attr_writer :members - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(String)) } - attr_accessor :organization_alias - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig do - returns( - T.nilable( - T::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - ) - ) - end - attr_reader :teams - - sig do - params( - teams: - T::Array[ - Hanzoai::Models::OrganizationListResponseItem::Team::OrHash - ] - ).void - end - attr_writer :teams - - # Returned by the /organization/info endpoint and /organization/list endpoint - sig do - params( - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable::OrHash - ), - members: - T::Array[ - Hanzoai::Models::OrganizationListResponseItem::Member::OrHash - ], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: - T::Array[ - Hanzoai::Models::OrganizationListResponseItem::Team::OrHash - ] - ).returns(T.attached_class) - end - def self.new( - budget_id:, - created_at:, - created_by:, - models:, - updated_at:, - updated_by:, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - members: nil, - metadata: nil, - organization_alias: nil, - organization_id: nil, - spend: nil, - teams: nil - ) - end - - sig do - override.returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable - ), - members: - T::Array[Hanzoai::Models::OrganizationListResponseItem::Member], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: T::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - - class Member < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationListResponseItem::Member, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig { returns(T.nilable(T.anything)) } - attr_reader :user - - sig { params(user: T.anything).void } - attr_writer :user - - sig { returns(T.nilable(String)) } - attr_accessor :user_role - - # This is the table that track what organizations a user belongs to and users - # spend within the organization - sig do - params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - ).returns(T.attached_class) - end - def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil - ) - end - - sig do - override.returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationListResponseItem::Team, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :team_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :admins - - sig { params(admins: T::Array[T.anything]).void } - attr_writer :admins - - sig { returns(T.nilable(T::Boolean)) } - attr_reader :blocked - - sig { params(blocked: T::Boolean).void } - attr_writer :blocked - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Time)) } - attr_accessor :budget_reset_at - - sig { returns(T.nilable(Time)) } - attr_accessor :created_at - - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable - ) - ) - end - attr_reader :llm_model_table - - sig do - params( - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::OrHash - ) - ).void - end - attr_writer :llm_model_table - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :members - - sig { params(members: T::Array[T.anything]).void } - attr_writer :members - - sig { returns(T.nilable(T::Array[Hanzoai::Member])) } - attr_reader :members_with_roles - - sig do - params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void - end - attr_writer :members_with_roles - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(Integer)) } - attr_accessor :model_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :models - - sig { params(models: T::Array[T.anything]).void } - attr_writer :models - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :spend - - sig { returns(T.nilable(String)) } - attr_accessor :team_alias - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - sig do - params( - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::OrHash - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - team_id:, - admins: nil, - blocked: nil, - budget_duration: nil, - budget_reset_at: nil, - created_at: nil, - llm_model_table: nil, - max_budget: nil, - max_parallel_requests: nil, - members: nil, - members_with_roles: nil, - metadata: nil, - model_id: nil, - models: nil, - organization_id: nil, - rpm_limit: nil, - spend: nil, - team_alias: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(String) } - attr_accessor :updated_by - - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants - ) - ) - end - attr_accessor :model_aliases - - sig do - params( - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants - ) - ).returns(T.attached_class) - end - def self.new(created_by:, updated_by:, model_aliases: nil) - end - - sig do - override.returns( - { - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants - ) - } - ) - end - def to_hash - end - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(T.anything, String) } - - sig do - override.returns( - T::Array[ - Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::ModelAliases::Variants - ] - ) - end - def self.variants - end - end - end - end - end - OrganizationListResponse = T.let( - Hanzoai::Internal::Type::ArrayOf[ - Hanzoai::Models::OrganizationListResponseItem - ], + Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers], Hanzoai::Internal::Type::Converter ) end diff --git a/rbi/hanzoai/models/organization_membership_table.rbi b/rbi/hanzoai/models/organization_membership_table.rbi new file mode 100644 index 00000000..0567a993 --- /dev/null +++ b/rbi/hanzoai/models/organization_membership_table.rbi @@ -0,0 +1,103 @@ +# typed: strong + +module Hanzoai + module Models + class OrganizationMembershipTable < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationMembershipTable, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(Time) } + attr_accessor :created_at + + sig { returns(String) } + attr_accessor :organization_id + + sig { returns(Time) } + attr_accessor :updated_at + + sig { returns(String) } + attr_accessor :user_id + + sig { returns(T.nilable(String)) } + attr_accessor :budget_id + + # Represents user-controllable params for a LiteLLM_BudgetTable record + sig { returns(T.nilable(Hanzoai::BudgetTable)) } + attr_reader :litellm_budget_table + + sig do + params( + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash) + ).void + end + attr_writer :litellm_budget_table + + sig { returns(T.nilable(Float)) } + attr_reader :spend + + sig { params(spend: Float).void } + attr_writer :spend + + sig { returns(T.nilable(T.anything)) } + attr_reader :user + + sig { params(user: T.anything).void } + attr_writer :user + + sig { returns(T.nilable(String)) } + attr_accessor :user_role + + # This is the table that track what organizations a user belongs to and users + # spend within the organization + sig do + params( + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + created_at:, + organization_id:, + updated_at:, + user_id:, + budget_id: nil, + # Represents user-controllable params for a LiteLLM_BudgetTable record + litellm_budget_table: nil, + spend: nil, + user: nil, + user_role: nil + ) + end + + sig do + override.returns( + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: T.nilable(String), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable), + spend: Float, + user: T.anything, + user_role: T.nilable(String) + } + ) + end + def to_hash + end + end + end +end diff --git a/rbi/hanzoai/models/organization_table_with_members.rbi b/rbi/hanzoai/models/organization_table_with_members.rbi new file mode 100644 index 00000000..a9ea30a5 --- /dev/null +++ b/rbi/hanzoai/models/organization_table_with_members.rbi @@ -0,0 +1,803 @@ +# typed: strong + +module Hanzoai + module Models + class OrganizationTableWithMembers < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationTableWithMembers, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :budget_id + + sig { returns(Time) } + attr_accessor :created_at + + sig { returns(String) } + attr_accessor :created_by + + sig { returns(T::Array[String]) } + attr_accessor :models + + sig { returns(Time) } + attr_accessor :updated_at + + sig { returns(String) } + attr_accessor :updated_by + + # Represents user-controllable params for a LiteLLM_BudgetTable record + sig { returns(T.nilable(Hanzoai::BudgetTable)) } + attr_reader :litellm_budget_table + + sig do + params( + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash) + ).void + end + attr_writer :litellm_budget_table + + sig { returns(T.nilable(T::Array[Hanzoai::OrganizationMembershipTable])) } + attr_reader :members + + sig do + params( + members: T::Array[Hanzoai::OrganizationMembershipTable::OrHash] + ).void + end + attr_writer :members + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :metadata + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable(Hanzoai::OrganizationTableWithMembers::ObjectPermission) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(String)) } + attr_accessor :organization_alias + + sig { returns(T.nilable(String)) } + attr_accessor :organization_id + + sig { returns(T.nilable(Float)) } + attr_reader :spend + + sig { params(spend: Float).void } + attr_writer :spend + + sig do + returns( + T.nilable(T::Array[Hanzoai::OrganizationTableWithMembers::Team]) + ) + end + attr_reader :teams + + sig do + params( + teams: T::Array[Hanzoai::OrganizationTableWithMembers::Team::OrHash] + ).void + end + attr_writer :teams + + sig do + returns( + T.nilable(T::Array[Hanzoai::OrganizationTableWithMembers::User]) + ) + end + attr_accessor :users + + # Returned by the /organization/info endpoint and /organization/list endpoint + sig do + params( + budget_id: String, + created_at: Time, + created_by: String, + models: T::Array[String], + updated_at: Time, + updated_by: String, + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash), + members: T::Array[Hanzoai::OrganizationMembershipTable::OrHash], + metadata: T.nilable(T::Hash[Symbol, T.anything]), + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), + organization_alias: T.nilable(String), + organization_id: T.nilable(String), + spend: Float, + teams: T::Array[Hanzoai::OrganizationTableWithMembers::Team::OrHash], + users: + T.nilable( + T::Array[Hanzoai::OrganizationTableWithMembers::User::OrHash] + ) + ).returns(T.attached_class) + end + def self.new( + budget_id:, + created_at:, + created_by:, + models:, + updated_at:, + updated_by:, + # Represents user-controllable params for a LiteLLM_BudgetTable record + litellm_budget_table: nil, + members: nil, + metadata: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, + organization_alias: nil, + organization_id: nil, + spend: nil, + teams: nil, + users: nil + ) + end + + sig do + override.returns( + { + budget_id: String, + created_at: Time, + created_by: String, + models: T::Array[String], + updated_at: Time, + updated_by: String, + litellm_budget_table: T.nilable(Hanzoai::BudgetTable), + members: T::Array[Hanzoai::OrganizationMembershipTable], + metadata: T.nilable(T::Hash[Symbol, T.anything]), + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::ObjectPermission + ), + object_permission_id: T.nilable(String), + organization_alias: T.nilable(String), + organization_id: T.nilable(String), + spend: Float, + teams: T::Array[Hanzoai::OrganizationTableWithMembers::Team], + users: + T.nilable(T::Array[Hanzoai::OrganizationTableWithMembers::User]) + } + ) + end + def to_hash + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationTableWithMembers::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + class Team < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationTableWithMembers::Team, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :team_id + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_reader :admins + + sig { params(admins: T::Array[T.anything]).void } + attr_writer :admins + + sig { returns(T.nilable(T::Boolean)) } + attr_reader :blocked + + sig { params(blocked: T::Boolean).void } + attr_writer :blocked + + sig { returns(T.nilable(String)) } + attr_accessor :budget_duration + + sig { returns(T.nilable(Time)) } + attr_accessor :budget_reset_at + + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + + sig { returns(T.nilable(T.anything)) } + attr_reader :litellm_model_table + + sig { params(litellm_model_table: T.anything).void } + attr_writer :litellm_model_table + + sig { returns(T.nilable(Float)) } + attr_accessor :max_budget + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_parallel_requests + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_reader :members + + sig { params(members: T::Array[T.anything]).void } + attr_writer :members + + sig { returns(T.nilable(T::Array[Hanzoai::Member])) } + attr_reader :members_with_roles + + sig do + params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void + end + attr_writer :members_with_roles + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :metadata + + sig { returns(T.nilable(Integer)) } + attr_accessor :model_id + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_reader :models + + sig { params(models: T::Array[T.anything]).void } + attr_writer :models + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable( + Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission + ) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(String)) } + attr_accessor :organization_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + + sig { returns(T.nilable(Integer)) } + attr_accessor :rpm_limit + + sig { returns(T.nilable(Float)) } + attr_accessor :spend + + sig { returns(T.nilable(String)) } + attr_accessor :team_alias + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :team_member_permissions + + sig { returns(T.nilable(Integer)) } + attr_accessor :tpm_limit + + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + + sig do + params( + team_id: String, + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + litellm_model_table: T.anything, + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member::OrHash], + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), + organization_id: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + team_member_permissions: T.nilable(T::Array[String]), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time) + ).returns(T.attached_class) + end + def self.new( + team_id:, + admins: nil, + blocked: nil, + budget_duration: nil, + budget_reset_at: nil, + created_at: nil, + litellm_model_table: nil, + max_budget: nil, + max_parallel_requests: nil, + members: nil, + members_with_roles: nil, + metadata: nil, + model_id: nil, + models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, + organization_id: nil, + router_settings: nil, + rpm_limit: nil, + spend: nil, + team_alias: nil, + team_member_permissions: nil, + tpm_limit: nil, + updated_at: nil + ) + end + + sig do + override.returns( + { + team_id: String, + admins: T::Array[T.anything], + blocked: T::Boolean, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + litellm_model_table: T.anything, + max_budget: T.nilable(Float), + max_parallel_requests: T.nilable(Integer), + members: T::Array[T.anything], + members_with_roles: T::Array[Hanzoai::Member], + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_id: T.nilable(Integer), + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission + ), + object_permission_id: T.nilable(String), + organization_id: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), + rpm_limit: T.nilable(Integer), + spend: T.nilable(Float), + team_alias: T.nilable(String), + team_member_permissions: T.nilable(T::Array[String]), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time) + } + ) + end + def to_hash + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + end + + class User < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationTableWithMembers::User, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :user_id + + sig { returns(T.nilable(String)) } + attr_accessor :budget_duration + + sig { returns(T.nilable(Time)) } + attr_accessor :budget_reset_at + + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + + sig { returns(T.nilable(Float)) } + attr_accessor :max_budget + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :metadata + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_max_budget + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_spend + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_reader :models + + sig { params(models: T::Array[T.anything]).void } + attr_writer :models + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable( + Hanzoai::OrganizationTableWithMembers::User::ObjectPermission + ) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::User::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig do + returns(T.nilable(T::Array[Hanzoai::OrganizationMembershipTable])) + end + attr_accessor :organization_memberships + + sig { returns(T.nilable(Integer)) } + attr_accessor :rpm_limit + + sig { returns(T.nilable(Float)) } + attr_reader :spend + + sig { params(spend: Float).void } + attr_writer :spend + + sig { returns(T.nilable(String)) } + attr_accessor :sso_user_id + + sig { returns(T.nilable(T::Array[String])) } + attr_reader :teams + + sig { params(teams: T::Array[String]).void } + attr_writer :teams + + sig { returns(T.nilable(Integer)) } + attr_accessor :tpm_limit + + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + + sig { returns(T.nilable(String)) } + attr_accessor :user_alias + + sig { returns(T.nilable(String)) } + attr_accessor :user_email + + sig { returns(T.nilable(String)) } + attr_accessor :user_role + + sig do + params( + user_id: String, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + max_budget: T.nilable(Float), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::User::ObjectPermission::OrHash + ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable::OrHash]), + rpm_limit: T.nilable(Integer), + spend: Float, + sso_user_id: T.nilable(String), + teams: T::Array[String], + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), + user_email: T.nilable(String), + user_role: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + user_id:, + budget_duration: nil, + budget_reset_at: nil, + created_at: nil, + max_budget: nil, + metadata: nil, + model_max_budget: nil, + model_spend: nil, + models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + organization_memberships: nil, + rpm_limit: nil, + spend: nil, + sso_user_id: nil, + teams: nil, + tpm_limit: nil, + updated_at: nil, + user_alias: nil, + user_email: nil, + user_role: nil + ) + end + + sig do + override.returns( + { + user_id: String, + budget_duration: T.nilable(String), + budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), + max_budget: T.nilable(Float), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), + models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::OrganizationTableWithMembers::User::ObjectPermission + ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable]), + rpm_limit: T.nilable(Integer), + spend: Float, + sso_user_id: T.nilable(String), + teams: T::Array[String], + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), + user_email: T.nilable(String), + user_role: T.nilable(String) + } + ) + end + def to_hash + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::OrganizationTableWithMembers::User::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + end + end + end +end diff --git a/rbi/hanzoai/models/organization_update_member_params.rbi b/rbi/hanzoai/models/organization_update_member_params.rbi index 0d0c0c16..d455ff28 100644 --- a/rbi/hanzoai/models/organization_update_member_params.rbi +++ b/rbi/hanzoai/models/organization_update_member_params.rbi @@ -31,11 +31,7 @@ module Hanzoai # Team Roles: TEAM: used for JWT auth # # Customer Roles: CUSTOMER: External users -> these are customers - sig do - returns( - T.nilable(Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol) - ) - end + sig { returns(T.nilable(Hanzoai::UserRoles::OrSymbol)) } attr_accessor :role sig { returns(T.nilable(String)) } @@ -48,8 +44,7 @@ module Hanzoai params( organization_id: String, max_budget_in_organization: T.nilable(Float), - role: - T.nilable(Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol), + role: T.nilable(Hanzoai::UserRoles::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash @@ -81,10 +76,7 @@ module Hanzoai { organization_id: String, max_budget_in_organization: T.nilable(Float), - role: - T.nilable( - Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol - ), + role: T.nilable(Hanzoai::UserRoles::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions @@ -93,73 +85,6 @@ module Hanzoai end def to_hash end - - # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can - # login, view all own keys, view all spend ORG_ADMIN: admin over a specific - # organization, can create teams, users only within their organization - # - # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own - # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, - # view their own spend - # - # Team Roles: TEAM: used for JWT auth - # - # Customer Roles: CUSTOMER: External users -> these are customers - module Role - extend Hanzoai::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, Hanzoai::OrganizationUpdateMemberParams::Role) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - PROXY_ADMIN = - T.let( - :proxy_admin, - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ) - PROXY_ADMIN_VIEWER = - T.let( - :proxy_admin_viewer, - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ) - ORG_ADMIN = - T.let( - :org_admin, - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ) - INTERNAL_USER = - T.let( - :internal_user, - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ) - INTERNAL_USER_VIEWER = - T.let( - :internal_user_viewer, - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ) - TEAM = - T.let( - :team, - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ) - CUSTOMER = - T.let( - :customer, - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - Hanzoai::OrganizationUpdateMemberParams::Role::TaggedSymbol - ] - ) - end - def self.values - end - end end end end diff --git a/rbi/hanzoai/models/organization_update_member_response.rbi b/rbi/hanzoai/models/organization_update_member_response.rbi deleted file mode 100644 index 872bb533..00000000 --- a/rbi/hanzoai/models/organization_update_member_response.rbi +++ /dev/null @@ -1,188 +0,0 @@ -# typed: strong - -module Hanzoai - module Models - class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateMemberResponse, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig { returns(T.nilable(T.anything)) } - attr_reader :user - - sig { params(user: T.anything).void } - attr_writer :user - - sig { returns(T.nilable(String)) } - attr_accessor :user_role - - # This is the table that track what organizations a user belongs to and users - # spend within the organization - sig do - params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - ).returns(T.attached_class) - end - def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil - ) - end - - sig do - override.returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - end -end diff --git a/rbi/hanzoai/models/organization_update_params.rbi b/rbi/hanzoai/models/organization_update_params.rbi index 0331c4b6..98a381c8 100644 --- a/rbi/hanzoai/models/organization_update_params.rbi +++ b/rbi/hanzoai/models/organization_update_params.rbi @@ -11,65 +11,15 @@ module Hanzoai T.any(Hanzoai::OrganizationUpdateParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(T::Array[String])) } - attr_accessor :models - - sig { returns(T.nilable(String)) } - attr_accessor :organization_alias - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Float)) } - attr_accessor :spend - - sig { returns(T.nilable(String)) } - attr_accessor :updated_by - sig do - params( - budget_id: T.nilable(String), - metadata: T.nilable(T.anything), - models: T.nilable(T::Array[String]), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: T.nilable(Float), - updated_by: T.nilable(String), - request_options: Hanzoai::RequestOptions::OrHash - ).returns(T.attached_class) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + T.attached_class + ) end - def self.new( - budget_id: nil, - metadata: nil, - models: nil, - organization_alias: nil, - organization_id: nil, - spend: nil, - updated_by: nil, - request_options: {} - ) + def self.new(request_options: {}) end - sig do - override.returns( - { - budget_id: T.nilable(String), - metadata: T.nilable(T.anything), - models: T.nilable(T::Array[String]), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: T.nilable(Float), - updated_by: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) - end + sig { override.returns({ request_options: Hanzoai::RequestOptions }) } def to_hash end end diff --git a/rbi/hanzoai/models/organization_update_response.rbi b/rbi/hanzoai/models/organization_update_response.rbi deleted file mode 100644 index 4cbad537..00000000 --- a/rbi/hanzoai/models/organization_update_response.rbi +++ /dev/null @@ -1,671 +0,0 @@ -# typed: strong - -module Hanzoai - module Models - class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateResponse, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :budget_id - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(T::Array[String]) } - attr_accessor :models - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :updated_by - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable(Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig do - returns( - T.nilable( - T::Array[Hanzoai::Models::OrganizationUpdateResponse::Member] - ) - ) - end - attr_reader :members - - sig do - params( - members: - T::Array[ - Hanzoai::Models::OrganizationUpdateResponse::Member::OrHash - ] - ).void - end - attr_writer :members - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(String)) } - attr_accessor :organization_alias - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig do - returns( - T.nilable(T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team]) - ) - end - attr_reader :teams - - sig do - params( - teams: - T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team::OrHash] - ).void - end - attr_writer :teams - - # Returned by the /organization/info endpoint and /organization/list endpoint - sig do - params( - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable::OrHash - ), - members: - T::Array[ - Hanzoai::Models::OrganizationUpdateResponse::Member::OrHash - ], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: - T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team::OrHash] - ).returns(T.attached_class) - end - def self.new( - budget_id:, - created_at:, - created_by:, - models:, - updated_at:, - updated_by:, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - members: nil, - metadata: nil, - organization_alias: nil, - organization_id: nil, - spend: nil, - teams: nil - ) - end - - sig do - override.returns( - { - budget_id: String, - created_at: Time, - created_by: String, - models: T::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable - ), - members: - T::Array[Hanzoai::Models::OrganizationUpdateResponse::Member], - metadata: T.nilable(T.anything), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: Float, - teams: T::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - - class Member < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateResponse::Member, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table - - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table - - sig { returns(T.nilable(Float)) } - attr_reader :spend - - sig { params(spend: Float).void } - attr_writer :spend - - sig { returns(T.nilable(T.anything)) } - attr_reader :user - - sig { params(user: T.anything).void } - attr_writer :user - - sig { returns(T.nilable(String)) } - attr_accessor :user_role - - # This is the table that track what organizations a user belongs to and users - # spend within the organization - sig do - params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - ).returns(T.attached_class) - end - def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil - ) - end - - sig do - override.returns( - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) - } - ) - end - def to_hash - end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end - end - - class Team < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateResponse::Team, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :team_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :admins - - sig { params(admins: T::Array[T.anything]).void } - attr_writer :admins - - sig { returns(T.nilable(T::Boolean)) } - attr_reader :blocked - - sig { params(blocked: T::Boolean).void } - attr_writer :blocked - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Time)) } - attr_accessor :budget_reset_at - - sig { returns(T.nilable(Time)) } - attr_accessor :created_at - - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable - ) - ) - end - attr_reader :llm_model_table - - sig do - params( - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::OrHash - ) - ).void - end - attr_writer :llm_model_table - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :members - - sig { params(members: T::Array[T.anything]).void } - attr_writer :members - - sig { returns(T.nilable(T::Array[Hanzoai::Member])) } - attr_reader :members_with_roles - - sig do - params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void - end - attr_writer :members_with_roles - - sig { returns(T.nilable(T.anything)) } - attr_accessor :metadata - - sig { returns(T.nilable(Integer)) } - attr_accessor :model_id - - sig { returns(T.nilable(T::Array[T.anything])) } - attr_reader :models - - sig { params(models: T::Array[T.anything]).void } - attr_writer :models - - sig { returns(T.nilable(String)) } - attr_accessor :organization_id - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :spend - - sig { returns(T.nilable(String)) } - attr_accessor :team_alias - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - sig do - params( - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::OrHash - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - team_id:, - admins: nil, - blocked: nil, - budget_duration: nil, - budget_reset_at: nil, - created_at: nil, - llm_model_table: nil, - max_budget: nil, - max_parallel_requests: nil, - members: nil, - members_with_roles: nil, - metadata: nil, - model_id: nil, - models: nil, - organization_id: nil, - rpm_limit: nil, - spend: nil, - team_alias: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - team_id: String, - admins: T::Array[T.anything], - blocked: T::Boolean, - budget_duration: T.nilable(String), - budget_reset_at: T.nilable(Time), - created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable - ), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - members: T::Array[T.anything], - members_with_roles: T::Array[Hanzoai::Member], - metadata: T.nilable(T.anything), - model_id: T.nilable(Integer), - models: T::Array[T.anything], - organization_id: T.nilable(String), - rpm_limit: T.nilable(Integer), - spend: T.nilable(Float), - team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(String) } - attr_accessor :created_by - - sig { returns(String) } - attr_accessor :updated_by - - sig do - returns( - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants - ) - ) - end - attr_accessor :model_aliases - - sig do - params( - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants - ) - ).returns(T.attached_class) - end - def self.new(created_by:, updated_by:, model_aliases: nil) - end - - sig do - override.returns( - { - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants - ) - } - ) - end - def to_hash - end - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(T.anything, String) } - - sig do - override.returns( - T::Array[ - Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::ModelAliases::Variants - ] - ) - end - def self.variants - end - end - end - end - end - end -end diff --git a/rbi/hanzoai/models/spend_calculate_spend_params.rbi b/rbi/hanzoai/models/spend_calculate_spend_params.rbi index 5d9855c7..9a8755f3 100644 --- a/rbi/hanzoai/models/spend_calculate_spend_params.rbi +++ b/rbi/hanzoai/models/spend_calculate_spend_params.rbi @@ -11,7 +11,7 @@ module Hanzoai T.any(Hanzoai::SpendCalculateSpendParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :completion_response sig { returns(T.nilable(T::Array[T.anything])) } @@ -22,7 +22,7 @@ module Hanzoai sig do params( - completion_response: T.nilable(T.anything), + completion_response: T.nilable(T::Hash[Symbol, T.anything]), messages: T.nilable(T::Array[T.anything]), model: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash @@ -39,7 +39,7 @@ module Hanzoai sig do override.returns( { - completion_response: T.nilable(T.anything), + completion_response: T.nilable(T::Hash[Symbol, T.anything]), messages: T.nilable(T::Array[T.anything]), model: T.nilable(String), request_options: Hanzoai::RequestOptions diff --git a/rbi/hanzoai/models/spend_list_logs_params.rbi b/rbi/hanzoai/models/spend_list_logs_params.rbi index 86435757..eaecf109 100644 --- a/rbi/hanzoai/models/spend_list_logs_params.rbi +++ b/rbi/hanzoai/models/spend_list_logs_params.rbi @@ -28,6 +28,14 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :start_date + # When start_date and end_date are provided, summarize=true returns aggregated + # data by date (legacy behavior), summarize=false returns filtered individual logs + sig { returns(T.nilable(T::Boolean)) } + attr_reader :summarize + + sig { params(summarize: T::Boolean).void } + attr_writer :summarize + # Get spend logs based on user_id sig { returns(T.nilable(String)) } attr_accessor :user_id @@ -38,6 +46,7 @@ module Hanzoai end_date: T.nilable(String), request_id: T.nilable(String), start_date: T.nilable(String), + summarize: T::Boolean, user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) @@ -52,6 +61,9 @@ module Hanzoai request_id: nil, # Time from which to start viewing key spend start_date: nil, + # When start_date and end_date are provided, summarize=true returns aggregated + # data by date (legacy behavior), summarize=false returns filtered individual logs + summarize: nil, # Get spend logs based on user_id user_id: nil, request_options: {} @@ -65,6 +77,7 @@ module Hanzoai end_date: T.nilable(String), request_id: T.nilable(String), start_date: T.nilable(String), + summarize: T::Boolean, user_id: T.nilable(String), request_options: Hanzoai::RequestOptions } diff --git a/rbi/hanzoai/models/spend_list_logs_response.rbi b/rbi/hanzoai/models/spend_list_logs_response.rbi index 00284674..091b2876 100644 --- a/rbi/hanzoai/models/spend_list_logs_response.rbi +++ b/rbi/hanzoai/models/spend_list_logs_response.rbi @@ -216,7 +216,9 @@ module Hanzoai extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -233,13 +235,21 @@ module Hanzoai Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module Response extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -256,6 +266,12 @@ module Hanzoai Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module StartTime diff --git a/rbi/hanzoai/models/spend_list_tags_response.rbi b/rbi/hanzoai/models/spend_list_tags_response.rbi index 72791cb6..0767f1fd 100644 --- a/rbi/hanzoai/models/spend_list_tags_response.rbi +++ b/rbi/hanzoai/models/spend_list_tags_response.rbi @@ -216,7 +216,9 @@ module Hanzoai extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -233,13 +235,21 @@ module Hanzoai Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module Response extend Hanzoai::Internal::Type::Union Variants = - T.type_alias { T.any(String, T::Array[T.anything], T.anything) } + T.type_alias do + T.any(String, T::Array[T.anything], T::Hash[Symbol, T.anything]) + end sig do override.returns( @@ -256,6 +266,12 @@ module Hanzoai Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown], Hanzoai::Internal::Type::Converter ) + + UnionMember2Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) end module StartTime diff --git a/rbi/hanzoai/models/team/callback_add_params.rbi b/rbi/hanzoai/models/team/callback_add_params.rbi index 93c80568..a13b9035 100644 --- a/rbi/hanzoai/models/team/callback_add_params.rbi +++ b/rbi/hanzoai/models/team/callback_add_params.rbi @@ -25,13 +25,14 @@ module Hanzoai end attr_accessor :callback_type - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( @@ -41,7 +42,7 @@ module Hanzoai T.nilable( Hanzoai::Team::CallbackAddParams::CallbackType::OrSymbol ), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end @@ -49,9 +50,10 @@ module Hanzoai callback_name:, callback_vars:, callback_type: nil, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -65,7 +67,7 @@ module Hanzoai T.nilable( Hanzoai::Team::CallbackAddParams::CallbackType::OrSymbol ), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/team_add_member_params.rbi b/rbi/hanzoai/models/team_add_member_params.rbi index 8a65b65f..0b4645c3 100644 --- a/rbi/hanzoai/models/team_add_member_params.rbi +++ b/rbi/hanzoai/models/team_add_member_params.rbi @@ -11,12 +11,17 @@ module Hanzoai T.any(Hanzoai::TeamAddMemberParams, Hanzoai::Internal::AnyHash) end + # Member object or list of member objects to add. Each member must include either + # user_id or user_email, and a role sig { returns(T.any(T::Array[Hanzoai::Member], Hanzoai::Member)) } attr_accessor :member + # The ID of the team to add the member to sig { returns(String) } attr_accessor :team_id + # Maximum budget allocated to this user within the team. If not set, user has + # unlimited budget within team limits sig { returns(T.nilable(Float)) } attr_accessor :max_budget_in_team @@ -30,8 +35,13 @@ module Hanzoai ).returns(T.attached_class) end def self.new( + # Member object or list of member objects to add. Each member must include either + # user_id or user_email, and a role member:, + # The ID of the team to add the member to team_id:, + # Maximum budget allocated to this user within the team. If not set, user has + # unlimited budget within team limits max_budget_in_team: nil, request_options: {} ) @@ -50,6 +60,8 @@ module Hanzoai def to_hash end + # Member object or list of member objects to add. Each member must include either + # user_id or user_email, and a role module Member extend Hanzoai::Internal::Type::Union diff --git a/rbi/hanzoai/models/team_add_member_response.rbi b/rbi/hanzoai/models/team_add_member_response.rbi index a45993e8..e216beb8 100644 --- a/rbi/hanzoai/models/team_add_member_response.rbi +++ b/rbi/hanzoai/models/team_add_member_response.rbi @@ -51,20 +51,20 @@ module Hanzoai sig do returns( - T.nilable(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable) + T.nilable(Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable) ) end - attr_reader :llm_model_table + attr_reader :litellm_model_table sig do params( - llm_model_table: + litellm_model_table: T.nilable( - Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::OrHash + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::OrHash ) ).void end - attr_writer :llm_model_table + attr_writer :litellm_model_table sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -84,7 +84,7 @@ module Hanzoai sig { params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void } attr_writer :members_with_roles - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata sig { returns(T.nilable(Integer)) } @@ -96,9 +96,33 @@ module Hanzoai sig { params(models: T::Array[T.anything]).void } attr_writer :models + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable(Hanzoai::Models::TeamAddMemberResponse::ObjectPermission) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + sig { returns(T.nilable(String)) } attr_accessor :organization_id + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit @@ -108,9 +132,15 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :team_alias + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :team_member_permissions + sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + sig do params( team_id: String, @@ -127,22 +157,30 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: + litellm_model_table: T.nilable( - Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::OrHash + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::OrHash ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), model_id: T.nilable(Integer), models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), organization_id: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), spend: T.nilable(Float), team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) + team_member_permissions: T.nilable(T::Array[String]), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time) ).returns(T.attached_class) end def self.new( @@ -154,7 +192,7 @@ module Hanzoai budget_duration: nil, budget_reset_at: nil, created_at: nil, - llm_model_table: nil, + litellm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, @@ -162,11 +200,17 @@ module Hanzoai metadata: nil, model_id: nil, models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, organization_id: nil, + router_settings: nil, rpm_limit: nil, spend: nil, team_alias: nil, - tpm_limit: nil + team_member_permissions: nil, + tpm_limit: nil, + updated_at: nil ) end @@ -185,20 +229,30 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: - T.nilable(Hanzoai::Models::TeamAddMemberResponse::LlmModelTable), + litellm_model_table: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable + ), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], members_with_roles: T::Array[Hanzoai::Member], - metadata: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), model_id: T.nilable(Integer), models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::ObjectPermission + ), + object_permission_id: T.nilable(String), organization_id: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), spend: T.nilable(Float), team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) + team_member_permissions: T.nilable(T::Array[String]), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time) } ) end @@ -214,28 +268,16 @@ module Hanzoai ) end - sig { returns(String) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table + # Represents user-controllable params for a LiteLLM_BudgetTable record + sig { returns(T.nilable(Hanzoai::BudgetTable)) } + attr_reader :litellm_budget_table sig do params( - llm_budget_table: - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable::OrHash - ) + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash) ).void end - attr_writer :llm_budget_table + attr_writer :litellm_budget_table sig { returns(String) } attr_accessor :team_id @@ -243,111 +285,44 @@ module Hanzoai sig { returns(String) } attr_accessor :user_id + sig { returns(T.nilable(String)) } + attr_accessor :budget_id + + sig { returns(T.nilable(Float)) } + attr_accessor :spend + sig do params( - budget_id: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable::OrHash - ), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable::OrHash), team_id: String, - user_id: String + user_id: String, + budget_id: T.nilable(String), + spend: T.nilable(Float) ).returns(T.attached_class) end def self.new( - budget_id:, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table:, + # Represents user-controllable params for a LiteLLM_BudgetTable record + litellm_budget_table:, team_id:, - user_id: + user_id:, + budget_id: nil, + spend: nil ) end sig do override.returns( { - budget_id: String, - llm_budget_table: - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable - ), + litellm_budget_table: T.nilable(Hanzoai::BudgetTable), team_id: String, - user_id: String + user_id: String, + budget_id: T.nilable(String), + spend: T.nilable(Float) } ) end def to_hash end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end end class UpdatedUser < Hanzoai::Internal::Type::BaseModel @@ -368,16 +343,19 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :budget_reset_at + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + sig { returns(T.nilable(Float)) } attr_accessor :max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_spend sig { returns(T.nilable(T::Array[T.anything])) } @@ -386,15 +364,29 @@ module Hanzoai sig { params(models: T::Array[T.anything]).void } attr_writer :models + # Represents a LiteLLM_ObjectPermissionTable record sig do returns( T.nilable( - T::Array[ - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership - ] + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission ) ) end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig do + returns(T.nilable(T::Array[Hanzoai::OrganizationMembershipTable])) + end attr_accessor :organization_memberships sig { returns(T.nilable(Integer)) } @@ -418,6 +410,12 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + + sig { returns(T.nilable(String)) } + attr_accessor :user_alias + sig { returns(T.nilable(String)) } attr_accessor :user_email @@ -429,22 +427,25 @@ module Hanzoai user_id: String, budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_spend: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), models: T::Array[T.anything], - organization_memberships: + object_permission: T.nilable( - T::Array[ - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::OrHash - ] + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission::OrHash ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable::OrHash]), rpm_limit: T.nilable(Integer), spend: Float, sso_user_id: T.nilable(String), teams: T::Array[String], tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), user_email: T.nilable(String), user_role: T.nilable(String) ).returns(T.attached_class) @@ -453,17 +454,22 @@ module Hanzoai user_id:, budget_duration: nil, budget_reset_at: nil, + created_at: nil, max_budget: nil, metadata: nil, model_max_budget: nil, model_spend: nil, models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, organization_memberships: nil, rpm_limit: nil, spend: nil, sso_user_id: nil, teams: nil, tpm_limit: nil, + updated_at: nil, + user_alias: nil, user_email: nil, user_role: nil ) @@ -475,22 +481,25 @@ module Hanzoai user_id: String, budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), + created_at: T.nilable(Time), max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_spend: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_spend: T.nilable(T::Hash[Symbol, T.anything]), models: T::Array[T.anything], - organization_memberships: + object_permission: T.nilable( - T::Array[ - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership - ] + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission ), + organization_memberships: + T.nilable(T::Array[Hanzoai::OrganizationMembershipTable]), rpm_limit: T.nilable(Integer), spend: Float, sso_user_id: T.nilable(String), teams: T::Array[String], tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time), + user_alias: T.nilable(String), user_email: T.nilable(String), user_role: T.nilable(String) } @@ -499,195 +508,84 @@ module Hanzoai def to_hash end - class OrganizationMembership < Hanzoai::Internal::Type::BaseModel + class ObjectPermission < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership, + Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission, Hanzoai::Internal::AnyHash ) end - sig { returns(Time) } - attr_accessor :created_at - - sig { returns(String) } - attr_accessor :organization_id - - sig { returns(Time) } - attr_accessor :updated_at - sig { returns(String) } - attr_accessor :user_id - - sig { returns(T.nilable(String)) } - attr_accessor :budget_id - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - returns( - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable - ) - ) - end - attr_reader :llm_budget_table + attr_accessor :object_permission_id - sig do - params( - llm_budget_table: - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash - ) - ).void - end - attr_writer :llm_budget_table + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups - sig { returns(T.nilable(Float)) } - attr_reader :spend + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents - sig { params(spend: Float).void } - attr_writer :spend + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups - sig { returns(T.nilable(T.anything)) } - attr_reader :user + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers - sig { params(user: T.anything).void } - attr_writer :user + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions - sig { returns(T.nilable(String)) } - attr_accessor :user_role + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores - # This is the table that track what organizations a user belongs to and users - # spend within the organization + # Represents a LiteLLM_ObjectPermissionTable record sig do params( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable::OrHash - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) ).returns(T.attached_class) end def self.new( - created_at:, - organization_id:, - updated_at:, - user_id:, - budget_id: nil, - # Represents user-controllable params for a LLM_BudgetTable record - llm_budget_table: nil, - spend: nil, - user: nil, - user_role: nil + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil ) end sig do override.returns( { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: T.nilable(String), - llm_budget_table: - T.nilable( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable - ), - spend: Float, - user: T.anything, - user_role: T.nilable(String) + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) } ) end def to_hash end - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable, - Hanzoai::Internal::AnyHash - ) - end - - sig { returns(T.nilable(String)) } - attr_accessor :budget_duration - - sig { returns(T.nilable(Float)) } - attr_accessor :max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :max_parallel_requests - - sig { returns(T.nilable(T.anything)) } - attr_accessor :model_max_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :rpm_limit - - sig { returns(T.nilable(Float)) } - attr_accessor :soft_budget - - sig { returns(T.nilable(Integer)) } - attr_accessor :tpm_limit - - # Represents user-controllable params for a LLM_BudgetTable record - sig do - params( - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - ).returns(T.attached_class) - end - def self.new( - budget_duration: nil, - max_budget: nil, - max_parallel_requests: nil, - model_max_budget: nil, - rpm_limit: nil, - soft_budget: nil, - tpm_limit: nil - ) - end - - sig do - override.returns( - { - budget_duration: T.nilable(String), - max_budget: T.nilable(Float), - max_parallel_requests: T.nilable(Integer), - model_max_budget: T.nilable(T.anything), - rpm_limit: T.nilable(Integer), - soft_budget: T.nilable(Float), - tpm_limit: T.nilable(Integer) - } - ) - end - def to_hash - end - end end end - class LlmModelTable < Hanzoai::Internal::Type::BaseModel + class LitellmModelTable < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do T.any( - Hanzoai::Models::TeamAddMemberResponse::LlmModelTable, + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable, Hanzoai::Internal::AnyHash ) end @@ -698,26 +596,43 @@ module Hanzoai sig { returns(String) } attr_accessor :updated_by + sig { returns(T.nilable(Integer)) } + attr_accessor :id + sig do returns( T.nilable( - Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::ModelAliases::Variants ) ) end attr_accessor :model_aliases + sig { returns(T.nilable(T.anything)) } + attr_reader :team + + sig { params(team: T.anything).void } + attr_writer :team + sig do params( created_by: String, updated_by: String, + id: T.nilable(Integer), model_aliases: T.nilable( - Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants - ) + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::ModelAliases::Variants + ), + team: T.anything ).returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) + def self.new( + created_by:, + updated_by:, + id: nil, + model_aliases: nil, + team: nil + ) end sig do @@ -725,10 +640,12 @@ module Hanzoai { created_by: String, updated_by: String, + id: T.nilable(Integer), model_aliases: T.nilable( - Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants - ) + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::ModelAliases::Variants + ), + team: T.anything } ) end @@ -738,17 +655,94 @@ module Hanzoai module ModelAliases extend Hanzoai::Internal::Type::Union - Variants = T.type_alias { T.any(T.anything, String) } + Variants = T.type_alias { T.any(T::Hash[Symbol, T.anything], String) } sig do override.returns( T::Array[ - Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::ModelAliases::Variants + Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::ModelAliases::Variants ] ) end def self.variants end + + UnionMember0Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::TeamAddMemberResponse::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :object_permission_id + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record + sig do + params( + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash end end end diff --git a/rbi/hanzoai/models/team_create_params.rbi b/rbi/hanzoai/models/team_create_params.rbi index 827d9246..3a9e25b8 100644 --- a/rbi/hanzoai/models/team_create_params.rbi +++ b/rbi/hanzoai/models/team_create_params.rbi @@ -17,6 +17,18 @@ module Hanzoai sig { params(admins: T::Array[T.anything]).void } attr_writer :admins + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_passthrough_routes + + sig do + returns( + T.nilable( + T::Array[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex] + ) + ) + end + attr_accessor :allowed_vector_store_indexes + sig { returns(T.nilable(T::Boolean)) } attr_reader :blocked @@ -44,24 +56,55 @@ module Hanzoai sig { params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void } attr_writer :members_with_roles - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_aliases + sig { returns(T.nilable(T::Hash[Symbol, Integer])) } + attr_accessor :model_rpm_limit + + sig { returns(T.nilable(T::Hash[Symbol, Integer])) } + attr_accessor :model_tpm_limit + sig { returns(T.nilable(T::Array[T.anything])) } attr_reader :models sig { params(models: T::Array[T.anything]).void } attr_writer :models + sig { returns(T.nilable(Hanzoai::TeamCreateParams::ObjectPermission)) } + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable(Hanzoai::TeamCreateParams::ObjectPermission::OrHash) + ).void + end + attr_writer :object_permission + sig { returns(T.nilable(String)) } attr_accessor :organization_id + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit + sig do + returns(T.nilable(Hanzoai::TeamCreateParams::RpmLimitType::OrSymbol)) + end + attr_accessor :rpm_limit_type + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :secret_manager_settings + sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :tags @@ -71,41 +114,87 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :team_id + sig { returns(T.nilable(Float)) } + attr_accessor :team_member_budget + + sig { returns(T.nilable(String)) } + attr_accessor :team_member_key_duration + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :team_member_permissions + + sig { returns(T.nilable(Integer)) } + attr_accessor :team_member_rpm_limit + + sig { returns(T.nilable(Integer)) } + attr_accessor :team_member_tpm_limit + sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + sig do + returns(T.nilable(Hanzoai::TeamCreateParams::TpmLimitType::OrSymbol)) + end + attr_accessor :tpm_limit_type + + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( admins: T::Array[T.anything], + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::OrHash + ] + ), blocked: T::Boolean, budget_duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), members: T::Array[T.anything], members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_aliases: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T::Array[T.anything], + object_permission: + T.nilable(Hanzoai::TeamCreateParams::ObjectPermission::OrHash), organization_id: T.nilable(String), + prompts: T.nilable(T::Array[String]), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::TeamCreateParams::RpmLimitType::OrSymbol), + secret_manager_settings: T.nilable(T::Hash[Symbol, T.anything]), tags: T.nilable(T::Array[T.anything]), team_alias: T.nilable(String), team_id: T.nilable(String), + team_member_budget: T.nilable(Float), + team_member_key_duration: T.nilable(String), + team_member_permissions: T.nilable(T::Array[String]), + team_member_rpm_limit: T.nilable(Integer), + team_member_tpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer), - llm_changed_by: String, + tpm_limit_type: + T.nilable(Hanzoai::TeamCreateParams::TpmLimitType::OrSymbol), + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( admins: nil, + allowed_passthrough_routes: nil, + allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, guardrails: nil, @@ -114,16 +203,30 @@ module Hanzoai members_with_roles: nil, metadata: nil, model_aliases: nil, + model_rpm_limit: nil, + model_tpm_limit: nil, models: nil, + object_permission: nil, organization_id: nil, + prompts: nil, + router_settings: nil, rpm_limit: nil, + rpm_limit_type: nil, + secret_manager_settings: nil, tags: nil, team_alias: nil, team_id: nil, + team_member_budget: nil, + team_member_key_duration: nil, + team_member_permissions: nil, + team_member_rpm_limit: nil, + team_member_tpm_limit: nil, tpm_limit: nil, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + tpm_limit_type: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -132,28 +235,253 @@ module Hanzoai override.returns( { admins: T::Array[T.anything], + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex] + ), blocked: T::Boolean, budget_duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), members: T::Array[T.anything], members_with_roles: T::Array[Hanzoai::Member], - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_aliases: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T::Array[T.anything], + object_permission: + T.nilable(Hanzoai::TeamCreateParams::ObjectPermission), organization_id: T.nilable(String), + prompts: T.nilable(T::Array[String]), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::TeamCreateParams::RpmLimitType::OrSymbol), + secret_manager_settings: T.nilable(T::Hash[Symbol, T.anything]), tags: T.nilable(T::Array[T.anything]), team_alias: T.nilable(String), team_id: T.nilable(String), + team_member_budget: T.nilable(Float), + team_member_key_duration: T.nilable(String), + team_member_permissions: T.nilable(T::Array[String]), + team_member_rpm_limit: T.nilable(Integer), + team_member_tpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer), - llm_changed_by: String, + tpm_limit_type: + T.nilable(Hanzoai::TeamCreateParams::TpmLimitType::OrSymbol), + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) end def to_hash end + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :index_name + + sig do + returns( + T::Array[ + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ) + end + attr_accessor :index_permissions + + sig do + params( + index_name: String, + index_permissions: + T::Array[ + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ).returns(T.attached_class) + end + def self.new(index_name:, index_permissions:) + end + + sig do + override.returns( + { + index_name: String, + index_permissions: + T::Array[ + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + } + ) + end + def to_hash + end + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + READ = + T.let( + :read, + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + WRITE = + T.let( + :write, + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::TeamCreateParams::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::TeamCreateParams::RpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::TeamCreateParams::RpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::TeamCreateParams::RpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[Hanzoai::TeamCreateParams::RpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::TeamCreateParams::TpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::TeamCreateParams::TpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::TeamCreateParams::TpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[Hanzoai::TeamCreateParams::TpmLimitType::TaggedSymbol] + ) + end + def self.values + end + end end end end diff --git a/rbi/hanzoai/models/team_create_response.rbi b/rbi/hanzoai/models/team_create_response.rbi index 212f3e52..c48083c1 100644 --- a/rbi/hanzoai/models/team_create_response.rbi +++ b/rbi/hanzoai/models/team_create_response.rbi @@ -32,20 +32,11 @@ module Hanzoai sig { returns(T.nilable(Time)) } attr_accessor :created_at - sig do - returns(T.nilable(Hanzoai::Models::TeamCreateResponse::LlmModelTable)) - end - attr_reader :llm_model_table + sig { returns(T.nilable(T.anything)) } + attr_reader :litellm_model_table - sig do - params( - llm_model_table: - T.nilable( - Hanzoai::Models::TeamCreateResponse::LlmModelTable::OrHash - ) - ).void - end - attr_writer :llm_model_table + sig { params(litellm_model_table: T.anything).void } + attr_writer :litellm_model_table sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -65,7 +56,7 @@ module Hanzoai sig { params(members_with_roles: T::Array[Hanzoai::Member::OrHash]).void } attr_writer :members_with_roles - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata sig { returns(T.nilable(Integer)) } @@ -77,9 +68,33 @@ module Hanzoai sig { params(models: T::Array[T.anything]).void } attr_writer :models + # Represents a LiteLLM_ObjectPermissionTable record + sig do + returns( + T.nilable(Hanzoai::Models::TeamCreateResponse::ObjectPermission) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::TeamCreateResponse::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :object_permission_id + sig { returns(T.nilable(String)) } attr_accessor :organization_id + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit @@ -89,9 +104,15 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :team_alias + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :team_member_permissions + sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + sig do params( team_id: String, @@ -100,22 +121,27 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: - T.nilable( - Hanzoai::Models::TeamCreateResponse::LlmModelTable::OrHash - ), + litellm_model_table: T.anything, max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), model_id: T.nilable(Integer), models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::Models::TeamCreateResponse::ObjectPermission::OrHash + ), + object_permission_id: T.nilable(String), organization_id: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), spend: T.nilable(Float), team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) + team_member_permissions: T.nilable(T::Array[String]), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time) ).returns(T.attached_class) end def self.new( @@ -125,7 +151,7 @@ module Hanzoai budget_duration: nil, budget_reset_at: nil, created_at: nil, - llm_model_table: nil, + litellm_model_table: nil, max_budget: nil, max_parallel_requests: nil, members: nil, @@ -133,11 +159,17 @@ module Hanzoai metadata: nil, model_id: nil, models: nil, + # Represents a LiteLLM_ObjectPermissionTable record + object_permission: nil, + object_permission_id: nil, organization_id: nil, + router_settings: nil, rpm_limit: nil, spend: nil, team_alias: nil, - tpm_limit: nil + team_member_permissions: nil, + tpm_limit: nil, + updated_at: nil ) end @@ -150,93 +182,100 @@ module Hanzoai budget_duration: T.nilable(String), budget_reset_at: T.nilable(Time), created_at: T.nilable(Time), - llm_model_table: - T.nilable(Hanzoai::Models::TeamCreateResponse::LlmModelTable), + litellm_model_table: T.anything, max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), members: T::Array[T.anything], members_with_roles: T::Array[Hanzoai::Member], - metadata: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), model_id: T.nilable(Integer), models: T::Array[T.anything], + object_permission: + T.nilable(Hanzoai::Models::TeamCreateResponse::ObjectPermission), + object_permission_id: T.nilable(String), organization_id: T.nilable(String), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), spend: T.nilable(Float), team_alias: T.nilable(String), - tpm_limit: T.nilable(Integer) + team_member_permissions: T.nilable(T::Array[String]), + tpm_limit: T.nilable(Integer), + updated_at: T.nilable(Time) } ) end def to_hash end - class LlmModelTable < Hanzoai::Internal::Type::BaseModel + class ObjectPermission < Hanzoai::Internal::Type::BaseModel OrHash = T.type_alias do T.any( - Hanzoai::Models::TeamCreateResponse::LlmModelTable, + Hanzoai::Models::TeamCreateResponse::ObjectPermission, Hanzoai::Internal::AnyHash ) end sig { returns(String) } - attr_accessor :created_by + attr_accessor :object_permission_id - sig { returns(String) } - attr_accessor :updated_by + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups - sig do - returns( - T.nilable( - Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants - ) - ) - end - attr_accessor :model_aliases + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + # Represents a LiteLLM_ObjectPermissionTable record sig do params( - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants - ) + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) ).returns(T.attached_class) end - def self.new(created_by:, updated_by:, model_aliases: nil) + def self.new( + object_permission_id:, + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) end sig do override.returns( { - created_by: String, - updated_by: String, - model_aliases: - T.nilable( - Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants - ) + object_permission_id: String, + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) } ) end def to_hash end - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - Variants = T.type_alias { T.any(T.anything, String) } - - sig do - override.returns( - T::Array[ - Hanzoai::Models::TeamCreateResponse::LlmModelTable::ModelAliases::Variants - ] - ) - end - def self.variants - end - end end end end diff --git a/rbi/hanzoai/models/team_delete_params.rbi b/rbi/hanzoai/models/team_delete_params.rbi index 851a1e5f..c618391f 100644 --- a/rbi/hanzoai/models/team_delete_params.rbi +++ b/rbi/hanzoai/models/team_delete_params.rbi @@ -14,26 +14,28 @@ module Hanzoai sig { returns(T::Array[String]) } attr_accessor :team_ids - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( team_ids: T::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( team_ids:, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -42,7 +44,7 @@ module Hanzoai override.returns( { team_ids: T::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/team_update_member_params.rbi b/rbi/hanzoai/models/team_update_member_params.rbi index 68bbb0c1..116329c0 100644 --- a/rbi/hanzoai/models/team_update_member_params.rbi +++ b/rbi/hanzoai/models/team_update_member_params.rbi @@ -22,6 +22,14 @@ module Hanzoai end attr_accessor :role + # Requests per minute limit for this team member + sig { returns(T.nilable(Integer)) } + attr_accessor :rpm_limit + + # Tokens per minute limit for this team member + sig { returns(T.nilable(Integer)) } + attr_accessor :tpm_limit + sig { returns(T.nilable(String)) } attr_accessor :user_email @@ -33,6 +41,8 @@ module Hanzoai team_id: String, max_budget_in_team: T.nilable(Float), role: T.nilable(Hanzoai::TeamUpdateMemberParams::Role::OrSymbol), + rpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer), user_email: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash @@ -42,6 +52,10 @@ module Hanzoai team_id:, max_budget_in_team: nil, role: nil, + # Requests per minute limit for this team member + rpm_limit: nil, + # Tokens per minute limit for this team member + tpm_limit: nil, user_email: nil, user_id: nil, request_options: {} @@ -54,6 +68,8 @@ module Hanzoai team_id: String, max_budget_in_team: T.nilable(Float), role: T.nilable(Hanzoai::TeamUpdateMemberParams::Role::OrSymbol), + rpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer), user_email: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions diff --git a/rbi/hanzoai/models/team_update_member_response.rbi b/rbi/hanzoai/models/team_update_member_response.rbi index 9b27277c..a47d8db9 100644 --- a/rbi/hanzoai/models/team_update_member_response.rbi +++ b/rbi/hanzoai/models/team_update_member_response.rbi @@ -20,6 +20,12 @@ module Hanzoai sig { returns(T.nilable(Float)) } attr_accessor :max_budget_in_team + sig { returns(T.nilable(Integer)) } + attr_accessor :rpm_limit + + sig { returns(T.nilable(Integer)) } + attr_accessor :tpm_limit + sig { returns(T.nilable(String)) } attr_accessor :user_email @@ -28,10 +34,19 @@ module Hanzoai team_id: String, user_id: String, max_budget_in_team: T.nilable(Float), + rpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer), user_email: T.nilable(String) ).returns(T.attached_class) end - def self.new(team_id:, user_id:, max_budget_in_team: nil, user_email: nil) + def self.new( + team_id:, + user_id:, + max_budget_in_team: nil, + rpm_limit: nil, + tpm_limit: nil, + user_email: nil + ) end sig do @@ -40,6 +55,8 @@ module Hanzoai team_id: String, user_id: String, max_budget_in_team: T.nilable(Float), + rpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer), user_email: T.nilable(String) } ) diff --git a/rbi/hanzoai/models/team_update_params.rbi b/rbi/hanzoai/models/team_update_params.rbi index fea7597b..f72cfa3b 100644 --- a/rbi/hanzoai/models/team_update_params.rbi +++ b/rbi/hanzoai/models/team_update_params.rbi @@ -14,6 +14,18 @@ module Hanzoai sig { returns(String) } attr_accessor :team_id + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_passthrough_routes + + sig do + returns( + T.nilable( + T::Array[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex] + ) + ) + end + attr_accessor :allowed_vector_store_indexes + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -26,74 +38,149 @@ module Hanzoai sig { returns(T.nilable(Float)) } attr_accessor :max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_aliases + sig { returns(T.nilable(T::Hash[Symbol, Integer])) } + attr_accessor :model_rpm_limit + + sig { returns(T.nilable(T::Hash[Symbol, Integer])) } + attr_accessor :model_tpm_limit + sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models + sig { returns(T.nilable(Hanzoai::TeamUpdateParams::ObjectPermission)) } + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable(Hanzoai::TeamUpdateParams::ObjectPermission::OrHash) + ).void + end + attr_writer :object_permission + sig { returns(T.nilable(String)) } attr_accessor :organization_id + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :secret_manager_settings + sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :tags sig { returns(T.nilable(String)) } attr_accessor :team_alias + sig { returns(T.nilable(Float)) } + attr_accessor :team_member_budget + + sig { returns(T.nilable(String)) } + attr_accessor :team_member_budget_duration + + sig { returns(T.nilable(String)) } + attr_accessor :team_member_key_duration + + sig { returns(T.nilable(Integer)) } + attr_accessor :team_member_rpm_limit + + sig { returns(T.nilable(Integer)) } + attr_accessor :team_member_tpm_limit + sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( team_id: String, + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::OrHash + ] + ), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_aliases: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T.nilable(T::Array[T.anything]), + object_permission: + T.nilable(Hanzoai::TeamUpdateParams::ObjectPermission::OrHash), organization_id: T.nilable(String), + prompts: T.nilable(T::Array[String]), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), + secret_manager_settings: T.nilable(T::Hash[Symbol, T.anything]), tags: T.nilable(T::Array[T.anything]), team_alias: T.nilable(String), + team_member_budget: T.nilable(Float), + team_member_budget_duration: T.nilable(String), + team_member_key_duration: T.nilable(String), + team_member_rpm_limit: T.nilable(Integer), + team_member_tpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( team_id:, + allowed_passthrough_routes: nil, + allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, guardrails: nil, max_budget: nil, metadata: nil, model_aliases: nil, + model_rpm_limit: nil, + model_tpm_limit: nil, models: nil, + object_permission: nil, organization_id: nil, + prompts: nil, + router_settings: nil, rpm_limit: nil, + secret_manager_settings: nil, tags: nil, team_alias: nil, + team_member_budget: nil, + team_member_budget_duration: nil, + team_member_key_duration: nil, + team_member_rpm_limit: nil, + team_member_tpm_limit: nil, tpm_limit: nil, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -102,25 +189,188 @@ module Hanzoai override.returns( { team_id: String, + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex] + ), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_aliases: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T.nilable(T::Array[T.anything]), + object_permission: + T.nilable(Hanzoai::TeamUpdateParams::ObjectPermission), organization_id: T.nilable(String), + prompts: T.nilable(T::Array[String]), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), + secret_manager_settings: T.nilable(T::Hash[Symbol, T.anything]), tags: T.nilable(T::Array[T.anything]), team_alias: T.nilable(String), + team_member_budget: T.nilable(Float), + team_member_budget_duration: T.nilable(String), + team_member_key_duration: T.nilable(String), + team_member_rpm_limit: T.nilable(Integer), + team_member_tpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) end def to_hash end + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :index_name + + sig do + returns( + T::Array[ + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ) + end + attr_accessor :index_permissions + + sig do + params( + index_name: String, + index_permissions: + T::Array[ + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ).returns(T.attached_class) + end + def self.new(index_name:, index_permissions:) + end + + sig do + override.returns( + { + index_name: String, + index_permissions: + T::Array[ + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + } + ) + end + def to_hash + end + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + READ = + T.let( + :read, + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + WRITE = + T.let( + :write, + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::TeamUpdateParams::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end end end end diff --git a/rbi/hanzoai/models/user_create_params.rbi b/rbi/hanzoai/models/user_create_params.rbi index 3d4df008..cc35bcb3 100644 --- a/rbi/hanzoai/models/user_create_params.rbi +++ b/rbi/hanzoai/models/user_create_params.rbi @@ -11,7 +11,7 @@ module Hanzoai T.any(Hanzoai::UserCreateParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :aliases sig { returns(T.nilable(T::Array[T.anything])) } @@ -29,7 +29,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_duration - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :config sig { returns(T.nilable(String)) } @@ -47,24 +47,41 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_rpm_limit - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_tpm_limit sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(Hanzoai::UserCreateParams::ObjectPermission)) } + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable(Hanzoai::UserCreateParams::ObjectPermission::OrHash) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :organizations + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :permissions + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit @@ -74,10 +91,13 @@ module Hanzoai sig { returns(T.nilable(Float)) } attr_accessor :spend + sig { returns(T.nilable(String)) } + attr_accessor :sso_user_id + sig { returns(T.nilable(String)) } attr_accessor :team_id - sig { returns(T.nilable(T::Array[T.anything])) } + sig { returns(T.nilable(Hanzoai::UserCreateParams::Teams::Variants)) } attr_accessor :teams sig { returns(T.nilable(Integer)) } @@ -97,28 +117,33 @@ module Hanzoai sig do params( - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), auto_create_key: T::Boolean, blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::UserCreateParams::ObjectPermission::OrHash), + organizations: T.nilable(T::Array[String]), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), rpm_limit: T.nilable(Integer), send_invite_email: T.nilable(T::Boolean), spend: T.nilable(Float), + sso_user_id: T.nilable(String), team_id: T.nilable(String), - teams: T.nilable(T::Array[T.anything]), + teams: T.nilable(Hanzoai::UserCreateParams::Teams::Variants), tpm_limit: T.nilable(Integer), user_alias: T.nilable(String), user_email: T.nilable(String), @@ -144,10 +169,14 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, + organizations: nil, permissions: nil, + prompts: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, + sso_user_id: nil, team_id: nil, teams: nil, tpm_limit: nil, @@ -162,28 +191,33 @@ module Hanzoai sig do override.returns( { - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), auto_create_key: T::Boolean, blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::UserCreateParams::ObjectPermission), + organizations: T.nilable(T::Array[String]), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), rpm_limit: T.nilable(Integer), send_invite_email: T.nilable(T::Boolean), spend: T.nilable(Float), + sso_user_id: T.nilable(String), team_id: T.nilable(String), - teams: T.nilable(T::Array[T.anything]), + teams: T.nilable(Hanzoai::UserCreateParams::Teams::Variants), tpm_limit: T.nilable(Integer), user_alias: T.nilable(String), user_email: T.nilable(String), @@ -196,6 +230,193 @@ module Hanzoai def to_hash end + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::UserCreateParams::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + module Teams + extend Hanzoai::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + T::Array[String], + T::Array[Hanzoai::UserCreateParams::Teams::UnionMember1] + ) + end + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::UserCreateParams::Teams::UnionMember1, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :team_id + + sig { returns(T.nilable(Float)) } + attr_accessor :max_budget_in_team + + sig do + returns( + T.nilable( + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole::OrSymbol + ) + ) + end + attr_reader :user_role + + sig do + params( + user_role: + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole::OrSymbol + ).void + end + attr_writer :user_role + + sig do + params( + team_id: String, + max_budget_in_team: T.nilable(Float), + user_role: + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole::OrSymbol + ).returns(T.attached_class) + end + def self.new(team_id:, max_budget_in_team: nil, user_role: nil) + end + + sig do + override.returns( + { + team_id: String, + max_budget_in_team: T.nilable(Float), + user_role: + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole::OrSymbol + } + ) + end + def to_hash + end + + module UserRole + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole::TaggedSymbol + ) + ADMIN = + T.let( + :admin, + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::UserCreateParams::Teams::UnionMember1::UserRole::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + sig do + override.returns(T::Array[Hanzoai::UserCreateParams::Teams::Variants]) + end + def self.variants + end + + StringArray = + T.let( + Hanzoai::Internal::Type::ArrayOf[String], + Hanzoai::Internal::Type::Converter + ) + + UnionMember1Array = + T.let( + Hanzoai::Internal::Type::ArrayOf[ + Hanzoai::UserCreateParams::Teams::UnionMember1 + ], + Hanzoai::Internal::Type::Converter + ) + end + module UserRole extend Hanzoai::Internal::Type::Enum diff --git a/rbi/hanzoai/models/user_create_response.rbi b/rbi/hanzoai/models/user_create_response.rbi index f79230dc..c659be1f 100644 --- a/rbi/hanzoai/models/user_create_response.rbi +++ b/rbi/hanzoai/models/user_create_response.rbi @@ -8,21 +8,35 @@ module Hanzoai T.any(Hanzoai::Models::UserCreateResponse, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(Time)) } - attr_accessor :expires - sig { returns(String) } attr_accessor :key sig { returns(T.nilable(String)) } attr_accessor :token - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :aliases sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :allowed_cache_controls + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_passthrough_routes + + sig { returns(T.nilable(T::Array[T.anything])) } + attr_accessor :allowed_routes + + sig do + returns( + T.nilable( + T::Array[ + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex + ] + ) + ) + end + attr_accessor :allowed_vector_store_indexes + sig { returns(T.nilable(T::Boolean)) } attr_accessor :blocked @@ -32,9 +46,12 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_id - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :config + sig { returns(T.nilable(Time)) } + attr_accessor :created_at + sig { returns(T.nilable(String)) } attr_accessor :created_by @@ -44,6 +61,9 @@ module Hanzoai sig { returns(T.nilable(T::Array[String])) } attr_accessor :enforced_params + sig { returns(T.nilable(Time)) } + attr_accessor :expires + sig { returns(T.nilable(T::Array[String])) } attr_accessor :guardrails @@ -54,10 +74,10 @@ module Hanzoai attr_accessor :key_name sig { returns(T.nilable(T.anything)) } - attr_reader :llm_budget_table + attr_reader :litellm_budget_table - sig { params(llm_budget_table: T.anything).void } - attr_writer :llm_budget_table + sig { params(litellm_budget_table: T.anything).void } + attr_writer :litellm_budget_table sig { returns(T.nilable(Float)) } attr_accessor :max_budget @@ -65,27 +85,75 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_rpm_limit - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_tpm_limit sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models - sig { returns(T.nilable(T.anything)) } + sig do + returns( + T.nilable(Hanzoai::Models::UserCreateResponse::ObjectPermission) + ) + end + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable( + Hanzoai::Models::UserCreateResponse::ObjectPermission::OrHash + ) + ).void + end + attr_writer :object_permission + + sig { returns(T.nilable(String)) } + attr_accessor :organization_id + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :permissions + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + + # Set of params that you can modify via `router.update_settings()`. + sig do + returns(T.nilable(Hanzoai::Models::UserCreateResponse::RouterSettings)) + end + attr_reader :router_settings + + sig do + params( + router_settings: + T.nilable( + Hanzoai::Models::UserCreateResponse::RouterSettings::OrHash + ) + ).void + end + attr_writer :router_settings + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit + sig do + returns( + T.nilable( + Hanzoai::Models::UserCreateResponse::RpmLimitType::TaggedSymbol + ) + ) + end + attr_accessor :rpm_limit_type + sig { returns(T.nilable(Float)) } attr_accessor :spend @@ -104,6 +172,18 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig do + returns( + T.nilable( + Hanzoai::Models::UserCreateResponse::TpmLimitType::TaggedSymbol + ) + ) + end + attr_accessor :tpm_limit_type + + sig { returns(T.nilable(Time)) } + attr_accessor :updated_at + sig { returns(T.nilable(String)) } attr_accessor :updated_by @@ -125,37 +205,65 @@ module Hanzoai sig do params( - expires: T.nilable(Time), key: String, token: T.nilable(String), - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::OrHash + ] + ), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), + created_at: T.nilable(Time), created_by: T.nilable(String), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), + expires: T.nilable(Time), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), key_name: T.nilable(String), - llm_budget_table: T.anything, + litellm_budget_table: T.anything, max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable( + Hanzoai::Models::UserCreateResponse::ObjectPermission::OrHash + ), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + router_settings: + T.nilable( + Hanzoai::Models::UserCreateResponse::RouterSettings::OrHash + ), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable( + Hanzoai::Models::UserCreateResponse::RpmLimitType::OrSymbol + ), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), teams: T.nilable(T::Array[T.anything]), token_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable( + Hanzoai::Models::UserCreateResponse::TpmLimitType::OrSymbol + ), + updated_at: T.nilable(Time), updated_by: T.nilable(String), user_alias: T.nilable(String), user_email: T.nilable(String), @@ -165,22 +273,26 @@ module Hanzoai ).returns(T.attached_class) end def self.new( - expires:, key:, token: nil, aliases: nil, allowed_cache_controls: nil, + allowed_passthrough_routes: nil, + allowed_routes: nil, + allowed_vector_store_indexes: nil, blocked: nil, budget_duration: nil, budget_id: nil, config: nil, + created_at: nil, created_by: nil, duration: nil, enforced_params: nil, + expires: nil, guardrails: nil, key_alias: nil, key_name: nil, - llm_budget_table: nil, + litellm_budget_table: nil, max_budget: nil, max_parallel_requests: nil, metadata: nil, @@ -188,14 +300,22 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, + organization_id: nil, permissions: nil, + prompts: nil, + # Set of params that you can modify via `router.update_settings()`. + router_settings: nil, rpm_limit: nil, + rpm_limit_type: nil, spend: nil, tags: nil, team_id: nil, teams: nil, token_id: nil, tpm_limit: nil, + tpm_limit_type: nil, + updated_at: nil, updated_by: nil, user_alias: nil, user_email: nil, @@ -207,37 +327,61 @@ module Hanzoai sig do override.returns( { - expires: T.nilable(Time), key: String, token: T.nilable(String), - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex + ] + ), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), + created_at: T.nilable(Time), created_by: T.nilable(String), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), + expires: T.nilable(Time), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), key_name: T.nilable(String), - llm_budget_table: T.anything, + litellm_budget_table: T.anything, max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::Models::UserCreateResponse::ObjectPermission), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + router_settings: + T.nilable(Hanzoai::Models::UserCreateResponse::RouterSettings), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable( + Hanzoai::Models::UserCreateResponse::RpmLimitType::TaggedSymbol + ), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), teams: T.nilable(T::Array[T.anything]), token_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable( + Hanzoai::Models::UserCreateResponse::TpmLimitType::TaggedSymbol + ), + updated_at: T.nilable(Time), updated_by: T.nilable(String), user_alias: T.nilable(String), user_email: T.nilable(String), @@ -252,6 +396,369 @@ module Hanzoai def to_hash end + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(String) } + attr_accessor :index_name + + sig do + returns( + T::Array[ + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + attr_accessor :index_permissions + + sig do + params( + index_name: String, + index_permissions: + T::Array[ + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission::OrSymbol + ] + ).returns(T.attached_class) + end + def self.new(index_name:, index_permissions:) + end + + sig do + override.returns( + { + index_name: String, + index_permissions: + T::Array[ + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + } + ) + end + def to_hash + end + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + READ = + T.let( + :read, + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + WRITE = + T.let( + :write, + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::IndexPermission::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::UserCreateResponse::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::Models::UserCreateResponse::RouterSettings, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(Integer)) } + attr_accessor :allowed_fails + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :context_window_fallbacks + + sig { returns(T.nilable(Float)) } + attr_accessor :cooldown_time + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :fallbacks + + sig { returns(T.nilable(Integer)) } + attr_accessor :max_retries + + sig do + returns( + T.nilable( + T::Hash[ + Symbol, + Hanzoai::Models::UserCreateResponse::RouterSettings::ModelGroupAlias::Variants + ] + ) + ) + end + attr_accessor :model_group_alias + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :model_group_retry_policy + + sig { returns(T.nilable(Integer)) } + attr_accessor :num_retries + + sig { returns(T.nilable(Float)) } + attr_accessor :retry_after + + sig { returns(T.nilable(String)) } + attr_accessor :routing_strategy + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :routing_strategy_args + + sig { returns(T.nilable(Float)) } + attr_accessor :timeout + + # Set of params that you can modify via `router.update_settings()`. + sig do + params( + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::Models::UserCreateResponse::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + ).returns(T.attached_class) + end + def self.new( + allowed_fails: nil, + context_window_fallbacks: nil, + cooldown_time: nil, + fallbacks: nil, + max_retries: nil, + model_group_alias: nil, + model_group_retry_policy: nil, + num_retries: nil, + retry_after: nil, + routing_strategy: nil, + routing_strategy_args: nil, + timeout: nil + ) + end + + sig do + override.returns( + { + allowed_fails: T.nilable(Integer), + context_window_fallbacks: + T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + cooldown_time: T.nilable(Float), + fallbacks: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + max_retries: T.nilable(Integer), + model_group_alias: + T.nilable( + T::Hash[ + Symbol, + Hanzoai::Models::UserCreateResponse::RouterSettings::ModelGroupAlias::Variants + ] + ), + model_group_retry_policy: T.nilable(T::Hash[Symbol, T.anything]), + num_retries: T.nilable(Integer), + retry_after: T.nilable(Float), + routing_strategy: T.nilable(String), + routing_strategy_args: T.nilable(T::Hash[Symbol, T.anything]), + timeout: T.nilable(Float) + } + ) + end + def to_hash + end + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + Variants = T.type_alias { T.any(String, T::Hash[Symbol, T.anything]) } + + sig do + override.returns( + T::Array[ + Hanzoai::Models::UserCreateResponse::RouterSettings::ModelGroupAlias::Variants + ] + ) + end + def self.variants + end + + UnionMember1Map = + T.let( + Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown], + Hanzoai::Internal::Type::Converter + ) + end + end + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Models::UserCreateResponse::RpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::Models::UserCreateResponse::RpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::Models::UserCreateResponse::RpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::Models::UserCreateResponse::RpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Models::UserCreateResponse::RpmLimitType::TaggedSymbol + ] + ) + end + def self.values + end + end + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, Hanzoai::Models::UserCreateResponse::TpmLimitType) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + GUARANTEED_THROUGHPUT = + T.let( + :guaranteed_throughput, + Hanzoai::Models::UserCreateResponse::TpmLimitType::TaggedSymbol + ) + BEST_EFFORT_THROUGHPUT = + T.let( + :best_effort_throughput, + Hanzoai::Models::UserCreateResponse::TpmLimitType::TaggedSymbol + ) + DYNAMIC = + T.let( + :dynamic, + Hanzoai::Models::UserCreateResponse::TpmLimitType::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Hanzoai::Models::UserCreateResponse::TpmLimitType::TaggedSymbol + ] + ) + end + def self.values + end + end + module UserRole extend Hanzoai::Internal::Type::Enum diff --git a/rbi/hanzoai/models/user_delete_params.rbi b/rbi/hanzoai/models/user_delete_params.rbi index a4df0c1c..0084e2ca 100644 --- a/rbi/hanzoai/models/user_delete_params.rbi +++ b/rbi/hanzoai/models/user_delete_params.rbi @@ -14,26 +14,28 @@ module Hanzoai sig { returns(T::Array[String]) } attr_accessor :user_ids - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability sig { returns(T.nilable(String)) } - attr_reader :llm_changed_by + attr_reader :litellm_changed_by - sig { params(llm_changed_by: String).void } - attr_writer :llm_changed_by + sig { params(litellm_changed_by: String).void } + attr_writer :litellm_changed_by sig do params( user_ids: T::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end def self.new( user_ids:, - # The llm-changed-by header enables tracking of actions performed by authorized - # users on behalf of other users, providing an audit trail for accountability - llm_changed_by: nil, + # The litellm-changed-by header enables tracking of actions performed by + # authorized users on behalf of other users, providing an audit trail for + # accountability + litellm_changed_by: nil, request_options: {} ) end @@ -42,7 +44,7 @@ module Hanzoai override.returns( { user_ids: T::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } ) diff --git a/rbi/hanzoai/models/user_list_params.rbi b/rbi/hanzoai/models/user_list_params.rbi deleted file mode 100644 index cd4be690..00000000 --- a/rbi/hanzoai/models/user_list_params.rbi +++ /dev/null @@ -1,73 +0,0 @@ -# typed: strong - -module Hanzoai - module Models - class UserListParams < Hanzoai::Internal::Type::BaseModel - extend Hanzoai::Internal::Type::RequestParameters::Converter - include Hanzoai::Internal::Type::RequestParameters - - OrHash = - T.type_alias do - T.any(Hanzoai::UserListParams, Hanzoai::Internal::AnyHash) - end - - # Page number - sig { returns(T.nilable(Integer)) } - attr_reader :page - - sig { params(page: Integer).void } - attr_writer :page - - # Number of items per page - sig { returns(T.nilable(Integer)) } - attr_reader :page_size - - sig { params(page_size: Integer).void } - attr_writer :page_size - - # Filter users by role - sig { returns(T.nilable(String)) } - attr_accessor :role - - # Get list of users by user_ids - sig { returns(T.nilable(String)) } - attr_accessor :user_ids - - sig do - params( - page: Integer, - page_size: Integer, - role: T.nilable(String), - user_ids: T.nilable(String), - request_options: Hanzoai::RequestOptions::OrHash - ).returns(T.attached_class) - end - def self.new( - # Page number - page: nil, - # Number of items per page - page_size: nil, - # Filter users by role - role: nil, - # Get list of users by user_ids - user_ids: nil, - request_options: {} - ) - end - - sig do - override.returns( - { - page: Integer, - page_size: Integer, - role: T.nilable(String), - user_ids: T.nilable(String), - request_options: Hanzoai::RequestOptions - } - ) - end - def to_hash - end - end - end -end diff --git a/rbi/hanzoai/models/user_list_response.rbi b/rbi/hanzoai/models/user_list_response.rbi deleted file mode 100644 index 68035dc7..00000000 --- a/rbi/hanzoai/models/user_list_response.rbi +++ /dev/null @@ -1,7 +0,0 @@ -# typed: strong - -module Hanzoai - module Models - UserListResponse = T.let(T.anything, Hanzoai::Internal::Type::Converter) - end -end diff --git a/rbi/hanzoai/models/user_roles.rbi b/rbi/hanzoai/models/user_roles.rbi new file mode 100644 index 00000000..3109cee9 --- /dev/null +++ b/rbi/hanzoai/models/user_roles.rbi @@ -0,0 +1,37 @@ +# typed: strong + +module Hanzoai + module Models + # Admin Roles: PROXY_ADMIN: admin over the platform PROXY_ADMIN_VIEW_ONLY: can + # login, view all own keys, view all spend ORG_ADMIN: admin over a specific + # organization, can create teams, users only within their organization + # + # Internal User Roles: INTERNAL_USER: can login, view/create/delete their own + # keys, view their spend INTERNAL_USER_VIEW_ONLY: can login, view their own keys, + # view their own spend + # + # Team Roles: TEAM: used for JWT auth + # + # Customer Roles: CUSTOMER: External users -> these are customers + module UserRoles + extend Hanzoai::Internal::Type::Enum + + TaggedSymbol = T.type_alias { T.all(Symbol, Hanzoai::UserRoles) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + PROXY_ADMIN = T.let(:proxy_admin, Hanzoai::UserRoles::TaggedSymbol) + PROXY_ADMIN_VIEWER = + T.let(:proxy_admin_viewer, Hanzoai::UserRoles::TaggedSymbol) + ORG_ADMIN = T.let(:org_admin, Hanzoai::UserRoles::TaggedSymbol) + INTERNAL_USER = T.let(:internal_user, Hanzoai::UserRoles::TaggedSymbol) + INTERNAL_USER_VIEWER = + T.let(:internal_user_viewer, Hanzoai::UserRoles::TaggedSymbol) + TEAM = T.let(:team, Hanzoai::UserRoles::TaggedSymbol) + CUSTOMER = T.let(:customer, Hanzoai::UserRoles::TaggedSymbol) + + sig { override.returns(T::Array[Hanzoai::UserRoles::TaggedSymbol]) } + def self.values + end + end + end +end diff --git a/rbi/hanzoai/models/user_update_params.rbi b/rbi/hanzoai/models/user_update_params.rbi index 87b8e781..da473655 100644 --- a/rbi/hanzoai/models/user_update_params.rbi +++ b/rbi/hanzoai/models/user_update_params.rbi @@ -11,7 +11,7 @@ module Hanzoai T.any(Hanzoai::UserUpdateParams, Hanzoai::Internal::AnyHash) end - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :aliases sig { returns(T.nilable(T::Array[T.anything])) } @@ -23,7 +23,7 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :budget_duration - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :config sig { returns(T.nilable(String)) } @@ -41,27 +41,41 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :max_parallel_requests - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :metadata - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_max_budget - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_rpm_limit - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :model_tpm_limit sig { returns(T.nilable(T::Array[T.anything])) } attr_accessor :models + sig { returns(T.nilable(Hanzoai::UserUpdateParams::ObjectPermission)) } + attr_reader :object_permission + + sig do + params( + object_permission: + T.nilable(Hanzoai::UserUpdateParams::ObjectPermission::OrHash) + ).void + end + attr_writer :object_permission + sig { returns(T.nilable(String)) } attr_accessor :password - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :permissions + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :prompts + sig { returns(T.nilable(Integer)) } attr_accessor :rpm_limit @@ -74,6 +88,9 @@ module Hanzoai sig { returns(T.nilable(Integer)) } attr_accessor :tpm_limit + sig { returns(T.nilable(String)) } + attr_accessor :user_alias + sig { returns(T.nilable(String)) } attr_accessor :user_email @@ -85,27 +102,31 @@ module Hanzoai sig do params( - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), + object_permission: + T.nilable(Hanzoai::UserUpdateParams::ObjectPermission::OrHash), password: T.nilable(String), - permissions: T.nilable(T.anything), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), rpm_limit: T.nilable(Integer), spend: T.nilable(Float), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + user_alias: T.nilable(String), user_email: T.nilable(String), user_id: T.nilable(String), user_role: T.nilable(Hanzoai::UserUpdateParams::UserRole::OrSymbol), @@ -128,12 +149,15 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, password: nil, permissions: nil, + prompts: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, + user_alias: nil, user_email: nil, user_id: nil, user_role: nil, @@ -144,27 +168,31 @@ module Hanzoai sig do override.returns( { - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), + object_permission: + T.nilable(Hanzoai::UserUpdateParams::ObjectPermission), password: T.nilable(String), - permissions: T.nilable(T.anything), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), rpm_limit: T.nilable(Integer), spend: T.nilable(Float), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + user_alias: T.nilable(String), user_email: T.nilable(String), user_id: T.nilable(String), user_role: T.nilable(Hanzoai::UserUpdateParams::UserRole::OrSymbol), @@ -175,6 +203,70 @@ module Hanzoai def to_hash end + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Hanzoai::UserUpdateParams::ObjectPermission, + Hanzoai::Internal::AnyHash + ) + end + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agent_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :agents + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_access_groups + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :mcp_servers + + sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) } + attr_accessor :mcp_tool_permissions + + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :vector_stores + + sig do + params( + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + ).returns(T.attached_class) + end + def self.new( + agent_access_groups: nil, + agents: nil, + mcp_access_groups: nil, + mcp_servers: nil, + mcp_tool_permissions: nil, + vector_stores: nil + ) + end + + sig do + override.returns( + { + agent_access_groups: T.nilable(T::Array[String]), + agents: T.nilable(T::Array[String]), + mcp_access_groups: T.nilable(T::Array[String]), + mcp_servers: T.nilable(T::Array[String]), + mcp_tool_permissions: + T.nilable(T::Hash[Symbol, T::Array[String]]), + vector_stores: T.nilable(T::Array[String]) + } + ) + end + def to_hash + end + end + module UserRole extend Hanzoai::Internal::Type::Enum diff --git a/rbi/hanzoai/models/util_token_counter_params.rbi b/rbi/hanzoai/models/util_token_counter_params.rbi index 74cec1b4..61b86e9e 100644 --- a/rbi/hanzoai/models/util_token_counter_params.rbi +++ b/rbi/hanzoai/models/util_token_counter_params.rbi @@ -14,7 +14,16 @@ module Hanzoai sig { returns(String) } attr_accessor :model - sig { returns(T.nilable(T::Array[T.anything])) } + sig { returns(T.nilable(T::Boolean)) } + attr_reader :call_endpoint + + sig { params(call_endpoint: T::Boolean).void } + attr_writer :call_endpoint + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } + attr_accessor :contents + + sig { returns(T.nilable(T::Array[T::Hash[Symbol, T.anything]])) } attr_accessor :messages sig { returns(T.nilable(String)) } @@ -23,19 +32,30 @@ module Hanzoai sig do params( model: String, - messages: T.nilable(T::Array[T.anything]), + call_endpoint: T::Boolean, + contents: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + messages: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), prompt: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end - def self.new(model:, messages: nil, prompt: nil, request_options: {}) + def self.new( + model:, + call_endpoint: nil, + contents: nil, + messages: nil, + prompt: nil, + request_options: {} + ) end sig do override.returns( { model: String, - messages: T.nilable(T::Array[T.anything]), + call_endpoint: T::Boolean, + contents: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + messages: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), prompt: T.nilable(String), request_options: Hanzoai::RequestOptions } diff --git a/rbi/hanzoai/models/util_token_counter_response.rbi b/rbi/hanzoai/models/util_token_counter_response.rbi index c3bebd30..1035a150 100644 --- a/rbi/hanzoai/models/util_token_counter_response.rbi +++ b/rbi/hanzoai/models/util_token_counter_response.rbi @@ -23,15 +23,43 @@ module Hanzoai sig { returns(Integer) } attr_accessor :total_tokens + sig { returns(T.nilable(T::Boolean)) } + attr_reader :error + + sig { params(error: T::Boolean).void } + attr_writer :error + + sig { returns(T.nilable(String)) } + attr_accessor :error_message + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_accessor :original_response + + sig { returns(T.nilable(Integer)) } + attr_accessor :status_code + sig do params( model_used: String, request_model: String, tokenizer_type: String, - total_tokens: Integer + total_tokens: Integer, + error: T::Boolean, + error_message: T.nilable(String), + original_response: T.nilable(T::Hash[Symbol, T.anything]), + status_code: T.nilable(Integer) ).returns(T.attached_class) end - def self.new(model_used:, request_model:, tokenizer_type:, total_tokens:) + def self.new( + model_used:, + request_model:, + tokenizer_type:, + total_tokens:, + error: nil, + error_message: nil, + original_response: nil, + status_code: nil + ) end sig do @@ -40,7 +68,11 @@ module Hanzoai model_used: String, request_model: String, tokenizer_type: String, - total_tokens: Integer + total_tokens: Integer, + error: T::Boolean, + error_message: T.nilable(String), + original_response: T.nilable(T::Hash[Symbol, T.anything]), + status_code: T.nilable(Integer) } ) end diff --git a/rbi/hanzoai/models/util_transform_request_params.rbi b/rbi/hanzoai/models/util_transform_request_params.rbi index c096b0b2..e4eb620f 100644 --- a/rbi/hanzoai/models/util_transform_request_params.rbi +++ b/rbi/hanzoai/models/util_transform_request_params.rbi @@ -14,13 +14,13 @@ module Hanzoai sig { returns(Hanzoai::UtilTransformRequestParams::CallType::OrSymbol) } attr_accessor :call_type - sig { returns(T.anything) } + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :request_body sig do params( call_type: Hanzoai::UtilTransformRequestParams::CallType::OrSymbol, - request_body: T.anything, + request_body: T::Hash[Symbol, T.anything], request_options: Hanzoai::RequestOptions::OrHash ).returns(T.attached_class) end @@ -31,7 +31,7 @@ module Hanzoai override.returns( { call_type: Hanzoai::UtilTransformRequestParams::CallType::OrSymbol, - request_body: T.anything, + request_body: T::Hash[Symbol, T.anything], request_options: Hanzoai::RequestOptions } ) @@ -88,6 +88,16 @@ module Hanzoai :aimage_generation, Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol ) + IMAGE_EDIT = + T.let( + :image_edit, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AIMAGE_EDIT = + T.let( + :aimage_edit, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) MODERATION = T.let( :moderation, @@ -128,6 +138,16 @@ module Hanzoai :arerank, Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol ) + SEARCH = + T.let( + :search, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ASEARCH = + T.let( + :asearch, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) AREALTIME = T.let( :_arealtime, @@ -313,6 +333,216 @@ module Hanzoai :acreate_fine_tuning_job, Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol ) + CREATE_VIDEO = + T.let( + :create_video, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ACREATE_VIDEO = + T.let( + :acreate_video, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVIDEO_RETRIEVE = + T.let( + :avideo_retrieve, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VIDEO_RETRIEVE = + T.let( + :video_retrieve, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVIDEO_CONTENT = + T.let( + :avideo_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VIDEO_CONTENT = + T.let( + :video_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VIDEO_REMIX = + T.let( + :video_remix, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVIDEO_REMIX = + T.let( + :avideo_remix, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VIDEO_LIST = + T.let( + :video_list, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVIDEO_LIST = + T.let( + :avideo_list, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VIDEO_RETRIEVE_JOB = + T.let( + :video_retrieve_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVIDEO_RETRIEVE_JOB = + T.let( + :avideo_retrieve_job, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VIDEO_DELETE = + T.let( + :video_delete, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVIDEO_DELETE = + T.let( + :avideo_delete, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_FILE_CREATE = + T.let( + :vector_store_file_create, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_FILE_CREATE = + T.let( + :avector_store_file_create, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_FILE_LIST = + T.let( + :vector_store_file_list, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_FILE_LIST = + T.let( + :avector_store_file_list, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_FILE_RETRIEVE = + T.let( + :vector_store_file_retrieve, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_FILE_RETRIEVE = + T.let( + :avector_store_file_retrieve, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_FILE_CONTENT = + T.let( + :vector_store_file_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_FILE_CONTENT = + T.let( + :avector_store_file_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_FILE_UPDATE = + T.let( + :vector_store_file_update, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_FILE_UPDATE = + T.let( + :avector_store_file_update, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_FILE_DELETE = + T.let( + :vector_store_file_delete, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_FILE_DELETE = + T.let( + :avector_store_file_delete, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_CREATE = + T.let( + :vector_store_create, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_CREATE = + T.let( + :avector_store_create, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + VECTOR_STORE_SEARCH = + T.let( + :vector_store_search, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AVECTOR_STORE_SEARCH = + T.let( + :avector_store_search, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + CREATE_CONTAINER = + T.let( + :create_container, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ACREATE_CONTAINER = + T.let( + :acreate_container, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + LIST_CONTAINERS = + T.let( + :list_containers, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ALIST_CONTAINERS = + T.let( + :alist_containers, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + RETRIEVE_CONTAINER = + T.let( + :retrieve_container, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ARETRIEVE_CONTAINER = + T.let( + :aretrieve_container, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + DELETE_CONTAINER = + T.let( + :delete_container, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ADELETE_CONTAINER = + T.let( + :adelete_container, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + LIST_CONTAINER_FILES = + T.let( + :list_container_files, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ALIST_CONTAINER_FILES = + T.let( + :alist_container_files, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + UPLOAD_CONTAINER_FILE = + T.let( + :upload_container_file, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AUPLOAD_CONTAINER_FILE = + T.let( + :aupload_container_file, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) ACANCEL_FINE_TUNING_JOB = T.let( :acancel_fine_tuning_job, @@ -353,6 +583,71 @@ module Hanzoai :aresponses, Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol ) + ALIST_INPUT_ITEMS = + T.let( + :alist_input_items, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + LLM_PASSTHROUGH_ROUTE = + T.let( + :llm_passthrough_route, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ALLM_PASSTHROUGH_ROUTE = + T.let( + :allm_passthrough_route, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + GENERATE_CONTENT = + T.let( + :generate_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AGENERATE_CONTENT = + T.let( + :agenerate_content, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + GENERATE_CONTENT_STREAM = + T.let( + :generate_content_stream, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AGENERATE_CONTENT_STREAM = + T.let( + :agenerate_content_stream, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + OCR = + T.let( + :ocr, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + AOCR = + T.let( + :aocr, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + CALL_MCP_TOOL = + T.let( + :call_mcp_tool, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ASEND_MESSAGE = + T.let( + :asend_message, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + SEND_MESSAGE = + T.let( + :send_message, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) + ACREATE_SKILL = + T.let( + :acreate_skill, + Hanzoai::UtilTransformRequestParams::CallType::TaggedSymbol + ) sig do override.returns( diff --git a/rbi/hanzoai/models/util_transform_request_response.rbi b/rbi/hanzoai/models/util_transform_request_response.rbi index 2a2cffa6..ed4ca8a3 100644 --- a/rbi/hanzoai/models/util_transform_request_response.rbi +++ b/rbi/hanzoai/models/util_transform_request_response.rbi @@ -17,18 +17,18 @@ module Hanzoai sig { returns(T.nilable(String)) } attr_accessor :raw_request_api_base - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :raw_request_body - sig { returns(T.nilable(T.anything)) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :raw_request_headers sig do params( error: T.nilable(String), raw_request_api_base: T.nilable(String), - raw_request_body: T.nilable(T.anything), - raw_request_headers: T.nilable(T.anything) + raw_request_body: T.nilable(T::Hash[Symbol, T.anything]), + raw_request_headers: T.nilable(T::Hash[Symbol, T.anything]) ).returns(T.attached_class) end def self.new( @@ -44,8 +44,8 @@ module Hanzoai { error: T.nilable(String), raw_request_api_base: T.nilable(String), - raw_request_body: T.nilable(T.anything), - raw_request_headers: T.nilable(T.anything) + raw_request_body: T.nilable(T::Hash[Symbol, T.anything]), + raw_request_headers: T.nilable(T::Hash[Symbol, T.anything]) } ) end diff --git a/rbi/hanzoai/resources/active.rbi b/rbi/hanzoai/resources/active.rbi index d3262f8c..1bbba0ff 100644 --- a/rbi/hanzoai/resources/active.rbi +++ b/rbi/hanzoai/resources/active.rbi @@ -3,7 +3,7 @@ module Hanzoai module Resources class Active - # Returns a list of llm level settings + # Returns a list of litellm level settings # # This is useful for debugging and ensuring the proxy server is configured # correctly. @@ -13,17 +13,17 @@ module Hanzoai # ``` # { # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), + # "litellm.callbacks": litellm_callbacks, + # "litellm.input_callback": litellm_input_callbacks, + # "litellm.failure_callback": litellm_failure_callbacks, + # "litellm.success_callback": litellm_success_callbacks, + # "litellm._async_success_callback": litellm_async_success_callbacks, + # "litellm._async_failure_callback": litellm_async_failure_callbacks, + # "litellm._async_input_callback": litellm_async_input_callbacks, + # "all_litellm_callbacks": all_litellm_callbacks, + # "num_callbacks": len(all_litellm_callbacks), # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, + # "litellm.request_timeout": litellm.request_timeout, # } # ``` sig do diff --git a/rbi/hanzoai/resources/anthropic.rbi b/rbi/hanzoai/resources/anthropic.rbi index 681a5bf5..c2a37862 100644 --- a/rbi/hanzoai/resources/anthropic.rbi +++ b/rbi/hanzoai/resources/anthropic.rbi @@ -3,7 +3,7 @@ module Hanzoai module Resources class Anthropic - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) sig do params( endpoint: String, @@ -13,7 +13,7 @@ module Hanzoai def create(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) sig do params( endpoint: String, @@ -23,7 +23,7 @@ module Hanzoai def retrieve(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) sig do params( endpoint: String, @@ -33,7 +33,7 @@ module Hanzoai def update(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) sig do params( endpoint: String, @@ -43,7 +43,7 @@ module Hanzoai def delete(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/anthropic_completion) + # [Docs](https://docs.litellm.ai/docs/pass_through/anthropic_completion) sig do params( endpoint: String, diff --git a/rbi/hanzoai/resources/azure.rbi b/rbi/hanzoai/resources/azure.rbi index 41d4c9da..fe98ca2b 100644 --- a/rbi/hanzoai/resources/azure.rbi +++ b/rbi/hanzoai/resources/azure.rbi @@ -6,6 +6,9 @@ module Hanzoai # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. sig do params( endpoint: String, @@ -18,6 +21,9 @@ module Hanzoai # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. sig do params( endpoint: String, @@ -30,6 +36,9 @@ module Hanzoai # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. sig do params( endpoint: String, @@ -42,6 +51,9 @@ module Hanzoai # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. sig do params( endpoint: String, @@ -54,6 +66,9 @@ module Hanzoai # Call any azure endpoint using the proxy. # # Just use `{PROXY_BASE_URL}/azure/{endpoint:path}` + # + # Checks if the deployment id in the url is a litellm model name. If so, it will + # route using the llm_router.allm_passthrough_route. sig do params( endpoint: String, diff --git a/rbi/hanzoai/resources/batches.rbi b/rbi/hanzoai/resources/batches.rbi index 1584a761..13e3f2d2 100644 --- a/rbi/hanzoai/resources/batches.rbi +++ b/rbi/hanzoai/resources/batches.rbi @@ -65,10 +65,17 @@ module Hanzoai after: T.nilable(String), limit: T.nilable(Integer), provider: T.nilable(String), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def list(after: nil, limit: nil, provider: nil, request_options: {}) + def list( + after: nil, + limit: nil, + provider: nil, + target_model_names: nil, + request_options: {} + ) end # Cancel a batch. This is the equivalent of POST @@ -128,6 +135,7 @@ module Hanzoai provider: String, after: T.nilable(String), limit: T.nilable(Integer), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end @@ -135,6 +143,7 @@ module Hanzoai provider, after: nil, limit: nil, + target_model_names: nil, request_options: {} ) end diff --git a/rbi/hanzoai/resources/bedrock.rbi b/rbi/hanzoai/resources/bedrock.rbi index 826d1d3a..4360ec3d 100644 --- a/rbi/hanzoai/resources/bedrock.rbi +++ b/rbi/hanzoai/resources/bedrock.rbi @@ -3,7 +3,8 @@ module Hanzoai module Resources class Bedrock - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) sig do params( endpoint: String, @@ -13,7 +14,8 @@ module Hanzoai def create(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) sig do params( endpoint: String, @@ -23,7 +25,8 @@ module Hanzoai def retrieve(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) sig do params( endpoint: String, @@ -33,7 +36,8 @@ module Hanzoai def update(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) sig do params( endpoint: String, @@ -43,7 +47,8 @@ module Hanzoai def delete(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/bedrock) + # This is the v1 passthrough for Bedrock. V2 is handled by the `/bedrock/v2` + # endpoint. [Docs](https://docs.litellm.ai/docs/pass_through/bedrock) sig do params( endpoint: String, diff --git a/rbi/hanzoai/resources/budget.rbi b/rbi/hanzoai/resources/budget.rbi index fa020873..f1ac45e0 100644 --- a/rbi/hanzoai/resources/budget.rbi +++ b/rbi/hanzoai/resources/budget.rbi @@ -19,10 +19,13 @@ module Hanzoai # - model_max_budget: Optional[dict] - Specify max budget for a given model. # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", # "tpm_limit": 100000, "rpm_limit": 100000}} + # - budget_reset_at: Optional[datetime] - Datetime when the initial budget is + # reset. Default is now. sig do params( budget_duration: T.nilable(String), budget_id: T.nilable(String), + budget_reset_at: T.nilable(Time), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), model_max_budget: @@ -40,6 +43,8 @@ module Hanzoai budget_duration: nil, # The unique budget id. budget_id: nil, + # Datetime when the budget is reset + budget_reset_at: nil, # Requests will fail if this budget (in USD) is exceeded. max_budget: nil, # Max concurrent requests allowed for this budget id. @@ -73,10 +78,13 @@ module Hanzoai # - model_max_budget: Optional[dict] - Specify max budget for a given model. # Example: {"openai/gpt-4o-mini": {"max_budget": 100.0, "budget_duration": "1d", # "tpm_limit": 100000, "rpm_limit": 100000}} + # - budget_reset_at: Optional[datetime] - Update the Datetime when the budget was + # last reset. sig do params( budget_duration: T.nilable(String), budget_id: T.nilable(String), + budget_reset_at: T.nilable(Time), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), model_max_budget: @@ -94,6 +102,8 @@ module Hanzoai budget_duration: nil, # The unique budget id. budget_id: nil, + # Datetime when the budget is reset + budget_reset_at: nil, # Requests will fail if this budget (in USD) is exceeded. max_budget: nil, # Max concurrent requests allowed for this budget id. diff --git a/rbi/hanzoai/resources/cache.rbi b/rbi/hanzoai/resources/cache.rbi index 175e0cf3..5af7b00b 100644 --- a/rbi/hanzoai/resources/cache.rbi +++ b/rbi/hanzoai/resources/cache.rbi @@ -6,8 +6,8 @@ module Hanzoai sig { returns(Hanzoai::Resources::Cache::Redis) } attr_reader :redis - # Endpoint for deleting a key from the cache. All responses from llm proxy have - # `x-llm-cache-key` in the headers + # Endpoint for deleting a key from the cache. All responses from litellm proxy + # have `x-litellm-cache-key` in the headers # # Parameters: # diff --git a/rbi/hanzoai/resources/chat/completions.rbi b/rbi/hanzoai/resources/chat/completions.rbi index c6b8ec08..bc714bf2 100644 --- a/rbi/hanzoai/resources/chat/completions.rbi +++ b/rbi/hanzoai/resources/chat/completions.rbi @@ -23,11 +23,87 @@ module Hanzoai # ``` sig do params( - model: T.nilable(String), + messages: + T::Array[ + T.any( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::OrHash, + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::OrHash + ) + ], + model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable(Hanzoai::Chat::CompletionCreateParams::Stop::Variants), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::Chat::CompletionCreateParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def create(model: nil, request_options: {}) + def create( + messages:, + model:, + caching: nil, + context_window_fallback_dict: nil, + fallbacks: nil, + frequency_penalty: nil, + function_call: nil, + functions: nil, + guardrails: nil, + logit_bias: nil, + logprobs: nil, + max_tokens: nil, + metadata: nil, + n: nil, + num_retries: nil, + parallel_tool_calls: nil, + presence_penalty: nil, + response_format: nil, + seed: nil, + service_tier: nil, + stop: nil, + stream: nil, + stream_options: nil, + temperature: nil, + tool_choice: nil, + tools: nil, + top_logprobs: nil, + top_p: nil, + user: nil, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/cohere.rbi b/rbi/hanzoai/resources/cohere.rbi index 18441782..81e3947b 100644 --- a/rbi/hanzoai/resources/cohere.rbi +++ b/rbi/hanzoai/resources/cohere.rbi @@ -3,7 +3,7 @@ module Hanzoai module Resources class Cohere - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) sig do params( endpoint: String, @@ -13,7 +13,7 @@ module Hanzoai def create(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) sig do params( endpoint: String, @@ -23,7 +23,7 @@ module Hanzoai def retrieve(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) sig do params( endpoint: String, @@ -33,7 +33,7 @@ module Hanzoai def update(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) sig do params( endpoint: String, @@ -43,7 +43,7 @@ module Hanzoai def delete(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/cohere) + # [Docs](https://docs.litellm.ai/docs/pass_through/cohere) sig do params( endpoint: String, diff --git a/rbi/hanzoai/resources/config/pass_through_endpoint.rbi b/rbi/hanzoai/resources/config/pass_through_endpoint.rbi index fc7cc13e..a04a4a69 100644 --- a/rbi/hanzoai/resources/config/pass_through_endpoint.rbi +++ b/rbi/hanzoai/resources/config/pass_through_endpoint.rbi @@ -7,32 +7,109 @@ module Hanzoai # Create new pass-through endpoint sig do params( - headers: T.anything, path: String, target: String, + id: T.nilable(String), + auth: T::Boolean, + cost_per_request: Float, + guardrails: + T.nilable( + T::Hash[ + Symbol, + T.nilable( + Hanzoai::Config::PassThroughGenericEndpoint::Guardrail::OrHash + ) + ] + ), + headers: T::Hash[Symbol, T.anything], + include_subpath: T::Boolean, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def create( - # Key-value pairs of headers to be forwarded with the request. You can set any key - # value pair here and it will be forwarded to your target endpoint - headers:, - # The route to be added to the LLM Proxy Server. + # The route to be added to the LiteLLM Proxy Server. path:, # The URL to which requests for this path should be forwarded. target:, + # Optional unique identifier for the pass-through endpoint. If not provided, + # endpoints will be identified by path for backwards compatibility. + id: nil, + # Whether authentication is required for the pass-through endpoint. If True, + # requests to the endpoint will require a valid LiteLLM API key. + auth: nil, + # The USD cost per request to the target endpoint. This is used to calculate the + # cost of the request to the target endpoint. + cost_per_request: nil, + # Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # names, values are optional settings for field targeting. When set, all + # org/team/key level guardrails will also execute. Defaults to None (no guardrails + # execute). + guardrails: nil, + # Key-value pairs of headers to be forwarded with the request. You can set any key + # value pair here and it will be forwarded to your target endpoint + headers: nil, + # If True, requests to subpaths of the path will be forwarded to the target + # endpoint. For example, if the path is /bria and include_subpath is True, + # requests to /bria/v1/text-to-image/base/2.3 will be forwarded to the target + # endpoint. + include_subpath: nil, request_options: {} ) end - # Update a pass-through endpoint + # Update a pass-through endpoint by ID. sig do params( endpoint_id: String, + path: String, + target: String, + id: T.nilable(String), + auth: T::Boolean, + cost_per_request: Float, + guardrails: + T.nilable( + T::Hash[ + Symbol, + T.nilable( + Hanzoai::Config::PassThroughGenericEndpoint::Guardrail::OrHash + ) + ] + ), + headers: T::Hash[Symbol, T.anything], + include_subpath: T::Boolean, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def update(endpoint_id, request_options: {}) + def update( + endpoint_id, + # The route to be added to the LiteLLM Proxy Server. + path:, + # The URL to which requests for this path should be forwarded. + target:, + # Optional unique identifier for the pass-through endpoint. If not provided, + # endpoints will be identified by path for backwards compatibility. + id: nil, + # Whether authentication is required for the pass-through endpoint. If True, + # requests to the endpoint will require a valid LiteLLM API key. + auth: nil, + # The USD cost per request to the target endpoint. This is used to calculate the + # cost of the request to the target endpoint. + cost_per_request: nil, + # Guardrails configuration for this passthrough endpoint. Dict keys are guardrail + # names, values are optional settings for field targeting. When set, all + # org/team/key level guardrails will also execute. Defaults to None (no guardrails + # execute). + guardrails: nil, + # Key-value pairs of headers to be forwarded with the request. You can set any key + # value pair here and it will be forwarded to your target endpoint + headers: nil, + # If True, requests to subpaths of the path will be forwarded to the target + # endpoint. For example, if the path is /bria and include_subpath is True, + # requests to /bria/v1/text-to-image/base/2.3 will be forwarded to the target + # endpoint. + include_subpath: nil, + request_options: {} + ) end # GET configured pass through endpoint. @@ -41,13 +118,14 @@ module Hanzoai sig do params( endpoint_id: T.nilable(String), + team_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(Hanzoai::Config::PassThroughEndpointResponse) end - def list(endpoint_id: nil, request_options: {}) + def list(endpoint_id: nil, team_id: nil, request_options: {}) end - # Delete a pass-through endpoint + # Delete a pass-through endpoint by ID. # # Returns - the deleted endpoint sig do diff --git a/rbi/hanzoai/resources/credentials.rbi b/rbi/hanzoai/resources/credentials.rbi index d1e32882..574bb6fc 100644 --- a/rbi/hanzoai/resources/credentials.rbi +++ b/rbi/hanzoai/resources/credentials.rbi @@ -7,9 +7,9 @@ module Hanzoai # Reloads credentials in memory. sig do params( - credential_info: T.anything, + credential_info: T::Hash[Symbol, T.anything], credential_name: String, - credential_values: T.nilable(T.anything), + credential_values: T.nilable(T::Hash[Symbol, T.anything]), model_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) @@ -39,7 +39,11 @@ module Hanzoai request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def delete(credential_name, request_options: {}) + def delete( + # The credential name, percent-decoded; may contain slashes + credential_name, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/customer.rbi b/rbi/hanzoai/resources/customer.rbi index 3ac39da6..dbf06570 100644 --- a/rbi/hanzoai/resources/customer.rbi +++ b/rbi/hanzoai/resources/customer.rbi @@ -35,6 +35,9 @@ module Hanzoai # parallel requests for a given customer. # - soft_budget: Optional[float] - [Not Implemented Yet] Get alerts when customer # crosses given budget, doesn't block requests. + # - spend: Optional[float] - Specify initial spend for a given customer. + # - budget_reset_at: Optional[str] - Specify the date and time when the budget + # should be reset. # # - Allow specifying allowed regions # - Allow specifying default model @@ -43,7 +46,7 @@ module Hanzoai # # ``` # curl --location 'http://0.0.0.0:4000/customer/new' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id" : "z-jaff-3", + # "user_id" : "ishaan-jaff-3", # "allowed_region": "eu", # "budget_id": "free_tier", # "default_model": "azure/gpt-3.5-turbo-eu" <- all calls from this user, use this model? @@ -65,6 +68,7 @@ module Hanzoai blocked: T::Boolean, budget_duration: T.nilable(String), budget_id: T.nilable(String), + budget_reset_at: T.nilable(Time), default_model: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), @@ -77,6 +81,7 @@ module Hanzoai ), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), + spend: T.nilable(Float), tpm_limit: T.nilable(Integer), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) @@ -89,6 +94,8 @@ module Hanzoai # Max duration budget should be set for (e.g. '1hr', '1d', '28d') budget_duration: nil, budget_id: nil, + # Datetime when the budget is reset + budget_reset_at: nil, default_model: nil, # Requests will fail if this budget (in USD) is exceeded. max_budget: nil, @@ -101,6 +108,7 @@ module Hanzoai rpm_limit: nil, # Requests will NOT fail if this is exceeded. Will fire alerting though. soft_budget: nil, + spend: nil, # Max tokens per minute, allowed for this budget id. tpm_limit: nil, request_options: {} @@ -125,7 +133,7 @@ module Hanzoai # # ``` # curl --location 'http://0.0.0.0:4000/customer/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", + # "user_id": "test-litellm-user-4", # "budget_id": "paid_tier" # }' # @@ -167,7 +175,7 @@ module Hanzoai # ``` sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T::Array[Hanzoai::Models::CustomerListResponseItem] + T::Array[Hanzoai::LiteLlmEndUserTable] ) end def list(request_options: {}) @@ -183,7 +191,7 @@ module Hanzoai # # ``` # curl --location 'http://0.0.0.0:4000/customer/delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_ids" :["z-jaff-5"] + # "user_ids" :["ishaan-jaff-5"] # }' # # See below for all params @@ -232,13 +240,13 @@ module Hanzoai # Example curl: # # ``` - # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-llm-user-4' -H 'Authorization: Bearer sk-1234' + # curl -X GET 'http://localhost:4000/customer/info?end_user_id=test-litellm-user-4' -H 'Authorization: Bearer sk-1234' # ``` sig do params( end_user_id: String, request_options: Hanzoai::RequestOptions::OrHash - ).returns(Hanzoai::Models::CustomerRetrieveInfoResponse) + ).returns(Hanzoai::LiteLlmEndUserTable) end def retrieve_info( # End User ID in the request parameters diff --git a/rbi/hanzoai/resources/embeddings.rbi b/rbi/hanzoai/resources/embeddings.rbi index 1a97823a..457bb725 100644 --- a/rbi/hanzoai/resources/embeddings.rbi +++ b/rbi/hanzoai/resources/embeddings.rbi @@ -17,11 +17,41 @@ module Hanzoai # ``` sig do params( - model: T.nilable(String), + model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable( + Hanzoai::EmbeddingCreateParams::CustomLlmProvider::Variants + ), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def create(model: nil, request_options: {}) + def create( + model:, + api_base: nil, + api_key: nil, + api_type: nil, + api_version: nil, + caching: nil, + custom_llm_provider: nil, + input: nil, + litellm_call_id: nil, + litellm_logging_obj: nil, + logger_fn: nil, + timeout: nil, + user: nil, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/engines.rbi b/rbi/hanzoai/resources/engines.rbi index 15621080..eb91a4eb 100644 --- a/rbi/hanzoai/resources/engines.rbi +++ b/rbi/hanzoai/resources/engines.rbi @@ -43,11 +43,41 @@ module Hanzoai # ``` sig do params( - model: String, + path_model: String, + body_model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable(Hanzoai::EngineEmbedParams::CustomLlmProvider::Variants), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def embed(model, request_options: {}) + def embed( + path_model, + body_model:, + api_base: nil, + api_key: nil, + api_type: nil, + api_version: nil, + caching: nil, + custom_llm_provider: nil, + input: nil, + litellm_call_id: nil, + litellm_logging_obj: nil, + logger_fn: nil, + timeout: nil, + user: nil, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/engines/chat.rbi b/rbi/hanzoai/resources/engines/chat.rbi index 978de496..caf63c8e 100644 --- a/rbi/hanzoai/resources/engines/chat.rbi +++ b/rbi/hanzoai/resources/engines/chat.rbi @@ -23,11 +23,89 @@ module Hanzoai # ``` sig do params( - model: String, + path_model: String, + messages: + T::Array[ + T.any( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::OrHash, + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::OrHash + ) + ], + body_model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable(Hanzoai::Engines::ChatCompleteParams::Stop::Variants), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::Engines::ChatCompleteParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def complete(model, request_options: {}) + def complete( + path_model, + messages:, + body_model:, + caching: nil, + context_window_fallback_dict: nil, + fallbacks: nil, + frequency_penalty: nil, + function_call: nil, + functions: nil, + guardrails: nil, + logit_bias: nil, + logprobs: nil, + max_tokens: nil, + metadata: nil, + n: nil, + num_retries: nil, + parallel_tool_calls: nil, + presence_penalty: nil, + response_format: nil, + seed: nil, + service_tier: nil, + stop: nil, + stream: nil, + stream_options: nil, + temperature: nil, + tool_choice: nil, + tools: nil, + top_logprobs: nil, + top_p: nil, + user: nil, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/files.rbi b/rbi/hanzoai/resources/files.rbi index 592d9bb1..a3a4bc91 100644 --- a/rbi/hanzoai/resources/files.rbi +++ b/rbi/hanzoai/resources/files.rbi @@ -16,7 +16,7 @@ module Hanzoai # # ``` # curl http://localhost:4000/v1/files -H "Authorization: Bearer sk-1234" -F purpose="batch" -F file="@mydata.jsonl" - # + # -F expires_after[anchor]="created_at" -F expires_after[seconds]=2592000 # ``` sig do params( @@ -24,6 +24,9 @@ module Hanzoai file: Hanzoai::Internal::FileInput, purpose: String, custom_llm_provider: String, + litellm_metadata: T.nilable(String), + target_model_names: String, + target_storage: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end @@ -32,6 +35,9 @@ module Hanzoai file:, purpose:, custom_llm_provider: nil, + litellm_metadata: nil, + target_model_names: nil, + target_storage: nil, request_options: {} ) end @@ -75,10 +81,16 @@ module Hanzoai params( provider: String, purpose: T.nilable(String), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def list(provider, purpose: nil, request_options: {}) + def list( + provider, + purpose: nil, + target_model_names: nil, + request_options: {} + ) end # Deletes a specified file. that can be used across - Assistants API, Batch API diff --git a/rbi/hanzoai/resources/fine_tuning/jobs.rbi b/rbi/hanzoai/resources/fine_tuning/jobs.rbi index f61f7880..4f136ccc 100644 --- a/rbi/hanzoai/resources/fine_tuning/jobs.rbi +++ b/rbi/hanzoai/resources/fine_tuning/jobs.rbi @@ -27,13 +27,15 @@ module Hanzoai # ``` sig do params( - custom_llm_provider: - Hanzoai::FineTuning::JobCreateParams::CustomLlmProvider::OrSymbol, model: String, training_file: String, + custom_llm_provider: + T.nilable( + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::CustomLlmProvider::OrSymbol + ), hyperparameters: T.nilable( - Hanzoai::FineTuning::JobCreateParams::Hyperparameters::OrHash + Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::OrHash ), integrations: T.nilable(T::Array[String]), seed: T.nilable(Integer), @@ -43,9 +45,9 @@ module Hanzoai ).returns(T.anything) end def create( - custom_llm_provider:, model:, training_file:, + custom_llm_provider: nil, hyperparameters: nil, integrations: nil, seed: nil, @@ -60,19 +62,21 @@ module Hanzoai # # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider + # - `custom_llm_provider`: Name of the LiteLLM provider # - `fine_tuning_job_id`: The ID of the fine-tuning job to retrieve. sig do params( fine_tuning_job_id: String, custom_llm_provider: - Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol, + T.nilable( + Hanzoai::FineTuning::JobRetrieveParams::CustomLlmProvider::OrSymbol + ), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def retrieve( fine_tuning_job_id, - custom_llm_provider:, + custom_llm_provider: nil, request_options: {} ) end @@ -82,22 +86,27 @@ module Hanzoai # # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider + # - `custom_llm_provider`: Name of the LiteLLM provider # - `after`: Identifier for the last job from the previous pagination request. # - `limit`: Number of fine-tuning jobs to retrieve (default is 20). sig do params( - custom_llm_provider: - Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol, after: T.nilable(String), + custom_llm_provider: + T.nilable( + Hanzoai::FineTuning::JobListParams::CustomLlmProvider::OrSymbol + ), limit: T.nilable(Integer), + target_model_names: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def list( - custom_llm_provider:, after: nil, + custom_llm_provider: nil, limit: nil, + # Comma separated list of model names to filter by. Example: 'gpt-4o,gpt-4o-mini' + target_model_names: nil, request_options: {} ) end diff --git a/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi b/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi index 59261f95..64b45dc6 100644 --- a/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi +++ b/rbi/hanzoai/resources/fine_tuning/jobs/cancel.rbi @@ -12,7 +12,7 @@ module Hanzoai # # Supported Query Params: # - # - `custom_llm_provider`: Name of the LLM provider + # - `custom_llm_provider`: Name of the LiteLLM provider # - `fine_tuning_job_id`: The ID of the fine-tuning job to cancel. sig do params( diff --git a/rbi/hanzoai/resources/gemini.rbi b/rbi/hanzoai/resources/gemini.rbi index a08ce1bb..bc849b55 100644 --- a/rbi/hanzoai/resources/gemini.rbi +++ b/rbi/hanzoai/resources/gemini.rbi @@ -3,7 +3,7 @@ module Hanzoai module Resources class Gemini - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) sig do params( endpoint: String, @@ -13,7 +13,7 @@ module Hanzoai def create(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) sig do params( endpoint: String, @@ -23,7 +23,7 @@ module Hanzoai def retrieve(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) sig do params( endpoint: String, @@ -33,7 +33,7 @@ module Hanzoai def update(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) sig do params( endpoint: String, @@ -43,7 +43,7 @@ module Hanzoai def delete(endpoint, request_options: {}) end - # [Docs](https://docs.hanzo.ai/docs/pass_through/google_ai_studio) + # [Docs](https://docs.litellm.ai/docs/pass_through/google_ai_studio) sig do params( endpoint: String, diff --git a/rbi/hanzoai/resources/global/spend.rbi b/rbi/hanzoai/resources/global/spend.rbi index c70401f9..ea4281c5 100644 --- a/rbi/hanzoai/resources/global/spend.rbi +++ b/rbi/hanzoai/resources/global/spend.rbi @@ -4,7 +4,7 @@ module Hanzoai module Resources class Global class Spend - # LLM Enterprise - View Spend Per Request Tag. Used by LLM UI + # LiteLLM Enterprise - View Spend Per Request Tag. Used by LiteLLM UI # # Example Request: # @@ -40,12 +40,12 @@ module Hanzoai # ADMIN ONLY / MASTER KEY Only Endpoint # - # Globally reset spend for All API Keys and Teams, maintain LLM_SpendLogs + # Globally reset spend for All API Keys and Teams, maintain LiteLLM_SpendLogs # - # 1. LLM_SpendLogs will maintain the logs on spend, no data gets deleted from + # 1. LiteLLM_SpendLogs will maintain the logs on spend, no data gets deleted from # there - # 2. LLM_VerificationTokens spend will be set = 0 - # 3. LLM_TeamTable spend will be set = 0 + # 2. LiteLLM_VerificationTokens spend will be set = 0 + # 3. LiteLLM_TeamTable spend will be set = 0 sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( T.anything diff --git a/rbi/hanzoai/resources/guardrails.rbi b/rbi/hanzoai/resources/guardrails.rbi index 77cf7f2b..26030423 100644 --- a/rbi/hanzoai/resources/guardrails.rbi +++ b/rbi/hanzoai/resources/guardrails.rbi @@ -5,7 +5,7 @@ module Hanzoai class Guardrails # List the guardrails that are available on the proxy server # - # 👉 [Guardrail docs](https://docs.hanzo.ai/docs/proxy/guardrails/quick_start) + # 👉 [Guardrail docs](https://docs.litellm.ai/docs/proxy/guardrails/quick_start) # # Example Request: # diff --git a/rbi/hanzoai/resources/health.rbi b/rbi/hanzoai/resources/health.rbi index 2f94a02b..650623df 100644 --- a/rbi/hanzoai/resources/health.rbi +++ b/rbi/hanzoai/resources/health.rbi @@ -5,7 +5,7 @@ module Hanzoai class Health # 🚨 USE `/health/liveliness` to health check the proxy 🚨 # - # See more 👉 https://docs.hanzo.ai/docs/proxy/health + # See more 👉 https://docs.litellm.ai/docs/proxy/health # # Check the health of all the endpoints in config.yaml # @@ -21,12 +21,15 @@ module Hanzoai sig do params( model: T.nilable(String), + model_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def check_all( # Specify the model name (optional) model: nil, + # Specify the model ID (optional) + model_id: nil, request_options: {} ) end diff --git a/rbi/hanzoai/resources/images/generations.rbi b/rbi/hanzoai/resources/images/generations.rbi index 37a1d40b..87cb5c7c 100644 --- a/rbi/hanzoai/resources/images/generations.rbi +++ b/rbi/hanzoai/resources/images/generations.rbi @@ -6,11 +6,12 @@ module Hanzoai class Generations # Image Generation sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T.anything - ) + params( + model: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T.anything) end - def create(request_options: {}) + def create(model: nil, request_options: {}) end # @api private diff --git a/rbi/hanzoai/resources/key.rbi b/rbi/hanzoai/resources/key.rbi index 301882a6..690d5b52 100644 --- a/rbi/hanzoai/resources/key.rbi +++ b/rbi/hanzoai/resources/key.rbi @@ -18,9 +18,10 @@ module Hanzoai # calling `/budget/new`. # - models: Optional[list] - Model_name's a user is allowed to call # - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. # - enforced_params: Optional[List[str]] - List of enforced params for the key # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) # - spend: Optional[float] - Amount spent by key # - max_budget: Optional[float] - Max budget for key # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets @@ -37,19 +38,53 @@ module Hanzoai # "claude-v1": 200} # - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": 100000, # "claude-v1": 200000} + # - tpm_limit_type: Optional[str] - TPM rate limit type - + # "best_effort_throughput", "guaranteed_throughput", or "dynamic" + # - rpm_limit_type: Optional[str] - RPM rate limit type - + # "best_effort_throughput", "guaranteed_throughput", or "dynamic" # - allowed_cache_controls: Optional[list] - List of allowed cache control values - # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) + # - duration: Optional[str] - Key validity duration ("30d", "1h", etc.) or "-1" to + # never expire # - permissions: Optional[dict] - Key-specific permissions # - send_invite_email: Optional[bool] - Send invite email to user_id # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. # - blocked: Optional[bool] - Whether the key is blocked # - aliases: Optional[dict] - Model aliases for the key - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) # - config: Optional[dict] - [DEPRECATED PARAM] Key-specific config. # - temp_budget_increase: Optional[float] - Temporary budget increase for the key # (Enterprise only). # - temp_budget_expiry: Optional[str] - Expiry time for the temporary budget # increase (Enterprise only). + # - allowed_routes: Optional[list] - List of allowed routes for the key. Store the + # actual route or store a wildcard pattern for a set of routes. Example - + # ["/chat/completions", "/embeddings", "/keys/*"] + # - allowed_passthrough_routes: Optional[list] - List of allowed pass through + # routes for the key. Store the actual route or store a wildcard pattern for a + # set of routes. Example - ["/my-custom-endpoint"]. Use this instead of + # allowed_routes, if you just want to specify which pass through routes the key + # can access, without specifying the routes. If allowed_routes is specified, + # allowed_passthrough_routes is ignored. + # - prompts: Optional[List[str]] - List of allowed prompts for the key. If + # specified, the key will only be able to use these specific prompts. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - auto_rotate: Optional[bool] - Whether this key should be automatically rotated + # - rotation_interval: Optional[str] - How often to rotate this key (e.g., '30d', + # '90d'). Required if auto_rotate=True + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - router_settings: Optional[UpdateRouterConfig] - key-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. # # Example: # @@ -66,121 +101,180 @@ module Hanzoai sig do params( key: String, - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex::OrHash + ] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::KeyUpdateParams::ObjectPermission::OrHash), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable(Hanzoai::KeyUpdateParams::RouterSettings::OrHash), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::KeyUpdateParams::RpmLimitType::OrSymbol), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), temp_budget_expiry: T.nilable(Time), temp_budget_increase: T.nilable(Float), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable(Hanzoai::KeyUpdateParams::TpmLimitType::OrSymbol), user_id: T.nilable(String), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def update( - # Body param: + # Body param key:, - # Body param: + # Body param aliases: nil, - # Body param: + # Body param allowed_cache_controls: nil, - # Body param: + # Body param + allowed_passthrough_routes: nil, + # Body param + allowed_routes: nil, + # Body param + allowed_vector_store_indexes: nil, + # Body param + auto_rotate: nil, + # Body param blocked: nil, - # Body param: + # Body param budget_duration: nil, - # Body param: + # Body param budget_id: nil, - # Body param: + # Body param config: nil, - # Body param: + # Body param duration: nil, - # Body param: + # Body param enforced_params: nil, - # Body param: + # Body param guardrails: nil, - # Body param: + # Body param key_alias: nil, - # Body param: + # Body param max_budget: nil, - # Body param: + # Body param max_parallel_requests: nil, - # Body param: + # Body param metadata: nil, - # Body param: + # Body param model_max_budget: nil, - # Body param: + # Body param model_rpm_limit: nil, - # Body param: + # Body param model_tpm_limit: nil, - # Body param: + # Body param models: nil, - # Body param: + # Body param + object_permission: nil, + # Body param permissions: nil, - # Body param: + # Body param + prompts: nil, + # Body param + rotation_interval: nil, + # Body param: Set of params that you can modify via `router.update_settings()`. + router_settings: nil, + # Body param rpm_limit: nil, - # Body param: + # Body param + rpm_limit_type: nil, + # Body param spend: nil, - # Body param: + # Body param tags: nil, - # Body param: + # Body param team_id: nil, - # Body param: + # Body param temp_budget_expiry: nil, - # Body param: + # Body param temp_budget_increase: nil, - # Body param: + # Body param tpm_limit: nil, - # Body param: + # Body param + tpm_limit_type: nil, + # Body param user_id: nil, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end # List all keys for a given user / team / organization. # + # Parameters: expand: Optional[List[str]] - Expand related objects (e.g. 'user' to + # include user information) status: Optional[str] - Filter by status. Currently + # supports "deleted" to query deleted keys. + # # Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, # "current_page": int, "total_pages": int, } + # + # When expand includes "user", each key object will include a "user" field with + # the associated user object. Note: When expand=user is specified, full key + # objects are returned regardless of the return_full_object parameter. sig do params( + expand: T.nilable(T::Array[String]), + include_created_by_keys: T::Boolean, include_team_keys: T::Boolean, key_alias: T.nilable(String), + key_hash: T.nilable(String), organization_id: T.nilable(String), page: Integer, return_full_object: T::Boolean, size: Integer, + sort_by: T.nilable(String), + sort_order: String, + status: T.nilable(String), team_id: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(Hanzoai::Models::KeyListResponse) end def list( + # Expand related objects (e.g. 'user') + expand: nil, + # Include keys created by the user + include_created_by_keys: nil, # Include all keys for teams that user is an admin of. include_team_keys: nil, # Filter keys by key alias key_alias: nil, + # Filter keys by key hash + key_hash: nil, # Filter keys by organization ID organization_id: nil, # Page number @@ -189,6 +283,12 @@ module Hanzoai return_full_object: nil, # Page size size: nil, + # Column to sort by (e.g. 'user_id', 'created_at', 'spend') + sort_by: nil, + # Sort order ('asc' or 'desc') + sort_order: nil, + # Filter by status (e.g. 'deleted') + status: nil, # Filter keys by team ID team_id: nil, # Filter keys by user ID @@ -226,19 +326,19 @@ module Hanzoai params( key_aliases: T.nilable(T::Array[String]), keys: T.nilable(T::Array[String]), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def delete( - # Body param: + # Body param key_aliases: nil, - # Body param: + # Body param keys: nil, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end @@ -262,17 +362,17 @@ module Hanzoai sig do params( key: String, - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.nilable(Hanzoai::Models::KeyBlockResponse)) end def block( - # Body param: + # Body param key:, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end @@ -326,7 +426,7 @@ module Hanzoai # Generate an API key based on the provided data. # - # Docs: https://docs.hanzo.ai/docs/proxy/virtual_keys + # Docs: https://docs.litellm.ai/docs/proxy/virtual_keys # # Parameters: # @@ -338,18 +438,21 @@ module Hanzoai # sk-key is created for you. # - team_id: Optional[str] - The team id of the key # - user_id: Optional[str] - The user id of the key + # - organization_id: Optional[str] - The organization id of the key. If not set, + # and team_id is set, the organization id will be the same as the team id. If + # conflict, an error will be raised. # - budget_id: Optional[str] - The budget id associated with the key. Created by # calling `/budget/new`. # - models: Optional[list] - Model_name's a user is allowed to call. (if empty, # key is allowed to call all models) # - aliases: Optional[dict] - Any alias mappings, on top of anything in the # config.yaml model list. - - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models + # https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models # - config: Optional[dict] - any key-specific configs, overrides config in # config.yaml # - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by # proxy whenever key is used. - # https://docs.hanzo.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend + # https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend # - send_invite_email: Optional[bool] - Whether to send an invite email to the # user_id, with the generate key # - max_budget: Optional[float] - Specify max budget for a given key. @@ -359,9 +462,11 @@ module Hanzoai # - max_parallel_requests: Optional[int] - Rate limit a user based on the number # of parallel requests. Raises 429 error, if user's parallel requests > x. # - metadata: Optional[dict] - Metadata for key, store information for key. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } + # Example metadata = {"team": "core-infra", "app": "app2", "email": + # "ishaan@berri.ai" } # - guardrails: Optional[List[str]] - List of active guardrails for the key + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. # - permissions: Optional[dict] - key-specific permissions. Currently just used # for turning off pii masking (if connected). Example - {"pii": false} # - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets @@ -373,9 +478,19 @@ module Hanzoai # - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - # {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model # specific tpm limit. + # - tpm_limit_type: Optional[str] - Type of tpm limit. Options: + # "best_effort_throughput" (no error if we're overallocating tpm), + # "guaranteed_throughput" (raise an error if we're overallocating tpm), + # "dynamic" (dynamically exceed limit when no 429 errors). Defaults to + # "best_effort_throughput". + # - rpm_limit_type: Optional[str] - Type of rpm limit. Options: + # "best_effort_throughput" (no error if we're overallocating rpm), + # "guaranteed_throughput" (raise an error if we're overallocating rpm), + # "dynamic" (dynamically exceed limit when no 429 errors). Defaults to + # "best_effort_throughput". # - allowed_cache_controls: Optional[list] - List of allowed cache control values. # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request + # https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request # - blocked: Optional[bool] - Whether the key is blocked. # - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per # minute) @@ -384,12 +499,45 @@ module Hanzoai # - soft_budget: Optional[float] - Specify soft budget for a given key. Will # trigger a slack alert when this soft budget is reached. # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. # - enforced_params: Optional[List[str]] - List of enforced params for the key # (Enterprise only). - # [Docs](https://docs.hanzo.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) + # - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. + # - allowed_routes: Optional[list] - List of allowed routes for the key. Store the + # actual route or store a wildcard pattern for a set of routes. Example - + # ["/chat/completions", "/embeddings", "/keys/*"] + # - allowed_passthrough_routes: Optional[list] - List of allowed pass through + # endpoints for the key. Store the actual endpoint or store a wildcard pattern + # for a set of endpoints. Example - ["/my-custom-endpoint"]. Use this instead of + # allowed_routes, if you just want to specify which pass through endpoints the + # key can access, without specifying the routes. If allowed_routes is specified, + # allowed_pass_through_endpoints is ignored. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - key_type: Optional[str] - Type of key that determines default allowed routes. + # Options: "llm_api" (can call LLM API routes), "management" (can call + # management routes), "read_only" (can only call info/read routes), "default" + # (uses default allowed routes). Defaults to "default". + # - prompts: Optional[List[str]] - List of allowed prompts for the key. If + # specified, the key will only be able to use these specific prompts. + # - auto_rotate: Optional[bool] - Whether this key should be automatically rotated + # (regenerated) + # - rotation_interval: Optional[str] - How often to auto-rotate this key (e.g., + # '30s', '30m', '30h', '30d'). Required if auto_rotate=True. + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - router_settings: Optional[UpdateRouterConfig] - key-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. # # Examples: # @@ -409,96 +557,142 @@ module Hanzoai # for same user id. sig do params( - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex::OrHash + ] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), key: T.nilable(String), key_alias: T.nilable(String), + key_type: T.nilable(Hanzoai::KeyGenerateParams::KeyType::OrSymbol), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::KeyGenerateParams::ObjectPermission::OrHash), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable(Hanzoai::KeyGenerateParams::RouterSettings::OrHash), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::KeyGenerateParams::RpmLimitType::OrSymbol), send_invite_email: T.nilable(T::Boolean), soft_budget: T.nilable(Float), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable(Hanzoai::KeyGenerateParams::TpmLimitType::OrSymbol), user_id: T.nilable(String), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(Hanzoai::GenerateKeyResponse) end def generate( - # Body param: + # Body param aliases: nil, - # Body param: + # Body param allowed_cache_controls: nil, - # Body param: + # Body param + allowed_passthrough_routes: nil, + # Body param + allowed_routes: nil, + # Body param + allowed_vector_store_indexes: nil, + # Body param: Whether this key should be automatically rotated + auto_rotate: nil, + # Body param blocked: nil, - # Body param: + # Body param budget_duration: nil, - # Body param: + # Body param budget_id: nil, - # Body param: + # Body param config: nil, - # Body param: + # Body param duration: nil, - # Body param: + # Body param enforced_params: nil, - # Body param: + # Body param guardrails: nil, - # Body param: + # Body param key: nil, - # Body param: + # Body param key_alias: nil, - # Body param: + # Body param: Enum for key types that determine what routes a key can access + key_type: nil, + # Body param max_budget: nil, - # Body param: + # Body param max_parallel_requests: nil, - # Body param: + # Body param metadata: nil, - # Body param: + # Body param model_max_budget: nil, - # Body param: + # Body param model_rpm_limit: nil, - # Body param: + # Body param model_tpm_limit: nil, - # Body param: + # Body param models: nil, - # Body param: + # Body param + object_permission: nil, + # Body param + organization_id: nil, + # Body param permissions: nil, - # Body param: + # Body param + prompts: nil, + # Body param: How often to rotate this key (e.g., '30d', '90d'). Required if + # auto_rotate=True + rotation_interval: nil, + # Body param: Set of params that you can modify via `router.update_settings()`. + router_settings: nil, + # Body param rpm_limit: nil, - # Body param: + # Body param + rpm_limit_type: nil, + # Body param send_invite_email: nil, - # Body param: + # Body param soft_budget: nil, - # Body param: + # Body param spend: nil, - # Body param: + # Body param tags: nil, - # Body param: + # Body param team_id: nil, - # Body param: + # Body param tpm_limit: nil, - # Body param: + # Body param + tpm_limit_type: nil, + # Body param user_id: nil, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end @@ -510,6 +704,11 @@ module Hanzoai # - key: str (path parameter) - The key to regenerate # - data: Optional[RegenerateKeyRequest] - Request body containing optional # parameters to update + # - key: Optional[str] - The key to regenerate. + # - new_master_key: Optional[str] - The new master key to use, if key is the + # master key. + # - new_key: Optional[str] - The new key to use, if key is not the master key. + # If both set, new_master_key will be used. # - key_alias: Optional[str] - User-friendly key alias # - user_id: Optional[str] - User ID associated with key # - team_id: Optional[str] - Team ID associated with key @@ -556,101 +755,159 @@ module Hanzoai sig do params( path_key: String, - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::OrHash + ] + ), + auto_rotate: T.nilable(T::Boolean), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), budget_id: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), enforced_params: T.nilable(T::Array[String]), guardrails: T.nilable(T::Array[String]), body_key: T.nilable(String), key_alias: T.nilable(String), + key_type: + T.nilable(Hanzoai::Key::RegenerateKeyRequest::KeyType::OrSymbol), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), + new_key: T.nilable(String), new_master_key: T.nilable(String), - permissions: T.nilable(T.anything), + object_permission: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::ObjectPermission::OrHash + ), + organization_id: T.nilable(String), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), + rotation_interval: T.nilable(String), + router_settings: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::RouterSettings::OrHash + ), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::RpmLimitType::OrSymbol + ), send_invite_email: T.nilable(T::Boolean), soft_budget: T.nilable(Float), spend: T.nilable(Float), tags: T.nilable(T::Array[String]), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + tpm_limit_type: + T.nilable( + Hanzoai::Key::RegenerateKeyRequest::TpmLimitType::OrSymbol + ), user_id: T.nilable(String), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.nilable(Hanzoai::GenerateKeyResponse)) end def regenerate_by_key( - # Path param: + # Path param path_key, - # Body param: + # Body param aliases: nil, - # Body param: + # Body param allowed_cache_controls: nil, - # Body param: + # Body param + allowed_passthrough_routes: nil, + # Body param + allowed_routes: nil, + # Body param + allowed_vector_store_indexes: nil, + # Body param: Whether this key should be automatically rotated + auto_rotate: nil, + # Body param blocked: nil, - # Body param: + # Body param budget_duration: nil, - # Body param: + # Body param budget_id: nil, - # Body param: + # Body param config: nil, - # Body param: + # Body param duration: nil, - # Body param: + # Body param enforced_params: nil, - # Body param: + # Body param guardrails: nil, - # Body param: + # Body param body_key: nil, - # Body param: + # Body param key_alias: nil, - # Body param: + # Body param: Enum for key types that determine what routes a key can access + key_type: nil, + # Body param max_budget: nil, - # Body param: + # Body param max_parallel_requests: nil, - # Body param: + # Body param metadata: nil, - # Body param: + # Body param model_max_budget: nil, - # Body param: + # Body param model_rpm_limit: nil, - # Body param: + # Body param model_tpm_limit: nil, - # Body param: + # Body param models: nil, - # Body param: + # Body param + new_key: nil, + # Body param new_master_key: nil, - # Body param: + # Body param + object_permission: nil, + # Body param + organization_id: nil, + # Body param permissions: nil, - # Body param: + # Body param + prompts: nil, + # Body param: How often to rotate this key (e.g., '30d', '90d'). Required if + # auto_rotate=True + rotation_interval: nil, + # Body param: Set of params that you can modify via `router.update_settings()`. + router_settings: nil, + # Body param rpm_limit: nil, - # Body param: + # Body param + rpm_limit_type: nil, + # Body param send_invite_email: nil, - # Body param: + # Body param soft_budget: nil, - # Body param: + # Body param spend: nil, - # Body param: + # Body param tags: nil, - # Body param: + # Body param team_id: nil, - # Body param: + # Body param tpm_limit: nil, - # Body param: + # Body param + tpm_limit_type: nil, + # Body param user_id: nil, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end @@ -663,14 +920,14 @@ module Hanzoai # Example Curl: # # ``` - # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-02Wr4IAlN3NvPXvL5JVvDA" -H "Authorization: Bearer sk-1234" + # curl -X GET "http://0.0.0.0:4000/key/info?key=sk-test-example-key-123" -H "Authorization: Bearer sk-1234" # ``` # # Example Curl - if no key is passed, it will use the Key Passed in Authorization # Header # # ``` - # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-02Wr4IAlN3NvPXvL5JVvDA" + # curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-test-example-key-123" # ``` sig do params( @@ -704,17 +961,17 @@ module Hanzoai sig do params( key: String, - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def unblock( - # Body param: + # Body param key:, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end diff --git a/rbi/hanzoai/resources/langfuse.rbi b/rbi/hanzoai/resources/langfuse.rbi index c9215456..6cd6336e 100644 --- a/rbi/hanzoai/resources/langfuse.rbi +++ b/rbi/hanzoai/resources/langfuse.rbi @@ -3,9 +3,9 @@ module Hanzoai module Resources class Langfuse - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -15,9 +15,9 @@ module Hanzoai def create(endpoint, request_options: {}) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -27,9 +27,9 @@ module Hanzoai def retrieve(endpoint, request_options: {}) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -39,9 +39,9 @@ module Hanzoai def update(endpoint, request_options: {}) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) sig do params( endpoint: String, @@ -51,9 +51,9 @@ module Hanzoai def delete(endpoint, request_options: {}) end - # Call Langfuse via LLM proxy. Works with Langfuse SDK. + # Call Langfuse via LiteLLM proxy. Works with Langfuse SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/langfuse) + # [Docs](https://docs.litellm.ai/docs/pass_through/langfuse) sig do params( endpoint: String, diff --git a/rbi/hanzoai/resources/model.rbi b/rbi/hanzoai/resources/model.rbi index 7f32984e..ac9d2f31 100644 --- a/rbi/hanzoai/resources/model.rbi +++ b/rbi/hanzoai/resources/model.rbi @@ -12,15 +12,15 @@ module Hanzoai # Allows adding new models to the model list in the config.yaml sig do params( - llm_params: Hanzoai::ModelCreateParams::LlmParams::OrHash, + litellm_params: Hanzoai::ModelCreateParams::LitellmParams::OrHash, model_info: Hanzoai::ModelInfo::OrHash, model_name: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def create( - # LLM Params with 'model' requirement - used for completions - llm_params:, + # LiteLLM Params with 'model' requirement - used for completions + litellm_params:, model_info:, model_name:, request_options: {} diff --git a/rbi/hanzoai/resources/model/info.rbi b/rbi/hanzoai/resources/model/info.rbi index 33dad6df..dc6bd6d1 100644 --- a/rbi/hanzoai/resources/model/info.rbi +++ b/rbi/hanzoai/resources/model/info.rbi @@ -7,11 +7,11 @@ module Hanzoai # Provides more info about each model in /models, including config.yaml # descriptions (except api key and api base) # - # Parameters: llm_model_id: Optional[str] = None (this is the value of - # `x-llm-model-id` returned in response headers) + # Parameters: litellm_model_id: Optional[str] = None (this is the value of + # `x-litellm-model-id` returned in response headers) # - # - When llm_model_id is passed, it will return the info for that specific model - # - When llm_model_id is not passed, it will return the info for all models + # - When litellm_model_id is passed, it will return the info for that specific model + # - When litellm_model_id is not passed, it will return the info for all models # # Returns: Returns a dictionary containing information about each model. # @@ -22,7 +22,7 @@ module Hanzoai # "data": [ # { # "model_name": "fake-openai-endpoint", - # "llm_params": { + # "litellm_params": { # "api_base": "https://exampleopenaiendpoint-production.up.railway.app/", # "model": "openai/fake" # }, @@ -36,11 +36,11 @@ module Hanzoai # ``` sig do params( - llm_model_id: T.nilable(String), + litellm_model_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def list(llm_model_id: nil, request_options: {}) + def list(litellm_model_id: nil, request_options: {}) end # @api private diff --git a/rbi/hanzoai/resources/model/update.rbi b/rbi/hanzoai/resources/model/update.rbi index d4ce6069..9a42d5e6 100644 --- a/rbi/hanzoai/resources/model/update.rbi +++ b/rbi/hanzoai/resources/model/update.rbi @@ -7,15 +7,17 @@ module Hanzoai # Edit existing model params sig do params( - llm_params: - T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash), + litellm_params: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::OrHash + ), model_info: T.nilable(Hanzoai::ModelInfo::OrHash), model_name: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def full( - llm_params: nil, + litellm_params: nil, model_info: nil, model_name: nil, request_options: {} @@ -37,8 +39,10 @@ module Hanzoai sig do params( model_id: String, - llm_params: - T.nilable(Hanzoai::Model::UpdateDeployment::LlmParams::OrHash), + litellm_params: + T.nilable( + Hanzoai::Model::UpdateDeployment::LitellmParams::OrHash + ), model_info: T.nilable(Hanzoai::ModelInfo::OrHash), model_name: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash @@ -46,7 +50,7 @@ module Hanzoai end def partial( model_id, - llm_params: nil, + litellm_params: nil, model_info: nil, model_name: nil, request_options: {} diff --git a/rbi/hanzoai/resources/model_group.rbi b/rbi/hanzoai/resources/model_group.rbi index 082109cf..e98c8d7c 100644 --- a/rbi/hanzoai/resources/model_group.rbi +++ b/rbi/hanzoai/resources/model_group.rbi @@ -3,8 +3,8 @@ module Hanzoai module Resources class ModelGroup - # Get information about all the deployments on llm proxy, including config.yaml - # descriptions (except api key and api base) + # Get information about all the deployments on litellm proxy, including + # config.yaml descriptions (except api key and api base) # # - /model_group/info returns all model groups. End users of proxy should use # /model_group/info since those models will be used for /chat/completions, @@ -33,7 +33,7 @@ module Hanzoai # ``` # # Learn how to use and set wildcard models - # [here](https://docs.hanzo.ai/docs/wildcard_routing) + # [here](https://docs.litellm.ai/docs/wildcard_routing) # # Example Response: # diff --git a/rbi/hanzoai/resources/models.rbi b/rbi/hanzoai/resources/models.rbi index f59bc43f..8ef6f87a 100644 --- a/rbi/hanzoai/resources/models.rbi +++ b/rbi/hanzoai/resources/models.rbi @@ -7,14 +7,33 @@ module Hanzoai # etc. # # This is just for compatibility with openai projects like aider. + # + # Query Parameters: + # + # - include_metadata: Include additional metadata in the response with fallback + # information + # - fallback_type: Type of fallbacks to include ("general", "context_window", + # "content_policy") Defaults to "general" when include_metadata=true sig do params( + fallback_type: T.nilable(String), + include_metadata: T.nilable(T::Boolean), + include_model_access_groups: T.nilable(T::Boolean), + only_model_access_groups: T.nilable(T::Boolean), return_wildcard_routes: T.nilable(T::Boolean), team_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def list(return_wildcard_routes: nil, team_id: nil, request_options: {}) + def list( + fallback_type: nil, + include_metadata: nil, + include_model_access_groups: nil, + only_model_access_groups: nil, + return_wildcard_routes: nil, + team_id: nil, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/moderations.rbi b/rbi/hanzoai/resources/moderations.rbi index da4c7a7c..ad2e88fb 100644 --- a/rbi/hanzoai/resources/moderations.rbi +++ b/rbi/hanzoai/resources/moderations.rbi @@ -4,9 +4,7 @@ module Hanzoai module Resources class Moderations # The moderations endpoint is a tool you can use to check whether content complies - # with an LLM Providers policies. - # - # Quick Start + # with an LLM Providers policies. Quick Start # # ``` # curl --location 'http://0.0.0.0:4000/moderations' --header 'Content-Type: application/json' --header 'Authorization: Bearer sk-1234' --data '{"input": "Sample text goes here", "model": "text-moderation-stable"}' diff --git a/rbi/hanzoai/resources/openai/deployments.rbi b/rbi/hanzoai/resources/openai/deployments.rbi index 40aa7f21..cae9d1dc 100644 --- a/rbi/hanzoai/resources/openai/deployments.rbi +++ b/rbi/hanzoai/resources/openai/deployments.rbi @@ -44,11 +44,43 @@ module Hanzoai # ``` sig do params( - model: String, + path_model: String, + body_model: String, + api_base: T.nilable(String), + api_key: T.nilable(String), + api_type: T.nilable(String), + api_version: T.nilable(String), + caching: T::Boolean, + custom_llm_provider: + T.nilable( + Hanzoai::OpenAI::DeploymentEmbedParams::CustomLlmProvider::Variants + ), + input: T::Array[String], + litellm_call_id: T.nilable(String), + litellm_logging_obj: T.nilable(T::Hash[Symbol, T.anything]), + logger_fn: T.nilable(String), + timeout: Integer, + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def embed(model, request_options: {}) + def embed( + path_model, + body_model:, + api_base: nil, + api_key: nil, + api_type: nil, + api_version: nil, + caching: nil, + custom_llm_provider: nil, + input: nil, + litellm_call_id: nil, + litellm_logging_obj: nil, + logger_fn: nil, + timeout: nil, + user: nil, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/openai/deployments/chat.rbi b/rbi/hanzoai/resources/openai/deployments/chat.rbi index 31035991..51563eb0 100644 --- a/rbi/hanzoai/resources/openai/deployments/chat.rbi +++ b/rbi/hanzoai/resources/openai/deployments/chat.rbi @@ -24,11 +24,91 @@ module Hanzoai # ``` sig do params( - model: String, + path_model: String, + messages: + T::Array[ + T.any( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::OrHash, + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::OrHash + ) + ], + body_model: String, + caching: T.nilable(T::Boolean), + context_window_fallback_dict: T.nilable(T::Hash[Symbol, String]), + fallbacks: T.nilable(T::Array[String]), + frequency_penalty: T.nilable(Float), + function_call: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::FunctionCall::Variants + ), + functions: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + guardrails: T.nilable(T::Array[String]), + logit_bias: T.nilable(T::Hash[Symbol, Float]), + logprobs: T.nilable(T::Boolean), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + n: T.nilable(Integer), + num_retries: T.nilable(Integer), + parallel_tool_calls: T.nilable(T::Boolean), + presence_penalty: T.nilable(Float), + response_format: T.nilable(T::Hash[Symbol, T.anything]), + seed: T.nilable(Integer), + service_tier: T.nilable(String), + stop: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Stop::Variants + ), + stream: T.nilable(T::Boolean), + stream_options: T.nilable(T::Hash[Symbol, T.anything]), + temperature: T.nilable(Float), + tool_choice: + T.nilable( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::ToolChoice::Variants + ), + tools: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end - def complete(model, request_options: {}) + def complete( + path_model, + messages:, + body_model:, + caching: nil, + context_window_fallback_dict: nil, + fallbacks: nil, + frequency_penalty: nil, + function_call: nil, + functions: nil, + guardrails: nil, + logit_bias: nil, + logprobs: nil, + max_tokens: nil, + metadata: nil, + n: nil, + num_retries: nil, + parallel_tool_calls: nil, + presence_penalty: nil, + response_format: nil, + seed: nil, + service_tier: nil, + stop: nil, + stream: nil, + stream_options: nil, + temperature: nil, + tool_choice: nil, + tools: nil, + top_logprobs: nil, + top_p: nil, + user: nil, + request_options: {} + ) end # @api private diff --git a/rbi/hanzoai/resources/organization.rbi b/rbi/hanzoai/resources/organization.rbi index 2b55cfba..d4ef591f 100644 --- a/rbi/hanzoai/resources/organization.rbi +++ b/rbi/hanzoai/resources/organization.rbi @@ -24,6 +24,10 @@ module Hanzoai # - max_budget: _Optional[float]_ - Max budget for org # - tpm_limit: _Optional[int]_ - Max tpm limit for org # - rpm_limit: _Optional[int]_ - Max rpm limit for org + # - model_rpm_limit: _Optional[Dict[str, int]]_ - The RPM (Requests Per Minute) + # limit per model for this organization. + # - model_tpm_limit: _Optional[Dict[str, int]]_ - The TPM (Tokens Per Minute) + # limit per model for this organization. # - max_parallel_requests: _Optional[int]_ - [Not Implemented Yet] Max parallel # requests for org # - soft_budget: _Optional[float]_ - [Not Implemented Yet] Get a slack alert when @@ -35,15 +39,17 @@ module Hanzoai # - blocked: _bool_ - Flag indicating if the org is blocked or not - will stop all # calls from keys with this org_id. # - tags: _Optional[List[str]]_ - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). # - organization_id: _Optional[str]_ - The organization id of the team. Default is # None. Create via `/organization/new`. # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) - # - # Case 1: Create new org **without** a budget_id + # [Docs](https://docs.litellm.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - + # organization-specific object permission. Example - {"vector_stores": + # ["vector_store_1", "vector_store_2"]}. IF null or {} then no object + # permission. Case 1: Create new org **without** a budget_id # # ```bash # curl --location 'http://0.0.0.0:4000/organization/new' @@ -77,9 +83,15 @@ module Hanzoai budget_id: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T::Array[T.anything], + object_permission: + T.nilable( + Hanzoai::OrganizationCreateParams::ObjectPermission::OrHash + ), organization_id: T.nilable(String), rpm_limit: T.nilable(Integer), soft_budget: T.nilable(Float), @@ -95,7 +107,10 @@ module Hanzoai max_parallel_requests: nil, metadata: nil, model_max_budget: nil, + model_rpm_limit: nil, + model_tpm_limit: nil, models: nil, + object_permission: nil, organization_id: nil, rpm_limit: nil, soft_budget: nil, @@ -106,38 +121,45 @@ module Hanzoai # Update an organization sig do - params( - budget_id: T.nilable(String), - metadata: T.nilable(T.anything), - models: T.nilable(T::Array[String]), - organization_alias: T.nilable(String), - organization_id: T.nilable(String), - spend: T.nilable(Float), - updated_by: T.nilable(String), - request_options: Hanzoai::RequestOptions::OrHash - ).returns(Hanzoai::Models::OrganizationUpdateResponse) + params(request_options: Hanzoai::RequestOptions::OrHash).returns( + Hanzoai::OrganizationTableWithMembers + ) end - def update( - budget_id: nil, - metadata: nil, - models: nil, - organization_alias: nil, - organization_id: nil, - spend: nil, - updated_by: nil, - request_options: {} - ) + def update(request_options: {}) end + # Get a list of organizations with optional filtering. + # + # Parameters: org_id: Optional[str] Filter organizations by exact organization_id + # match org_alias: Optional[str] Filter organizations by partial + # organization_alias match (case-insensitive) + # + # Example: + # + # ``` + # curl --location --request GET 'http://0.0.0.0:4000/organization/list?org_alias=my-org' --header 'Authorization: Bearer sk-1234' + # ``` + # + # Example with org_id: + # # ``` - # curl --location --request GET 'http://0.0.0.0:4000/organization/list' --header 'Authorization: Bearer sk-1234' + # curl --location --request GET 'http://0.0.0.0:4000/organization/list?org_id=123e4567-e89b-12d3-a456-426614174000' --header 'Authorization: Bearer sk-1234' # ``` sig do - params(request_options: Hanzoai::RequestOptions::OrHash).returns( - T::Array[Hanzoai::Models::OrganizationListResponseItem] - ) + params( + org_alias: T.nilable(String), + org_id: T.nilable(String), + request_options: Hanzoai::RequestOptions::OrHash + ).returns(T::Array[Hanzoai::OrganizationTableWithMembers]) end - def list(request_options: {}) + def list( + # Filter organizations by partial organization_alias match. Supports + # case-insensitive search. + org_alias: nil, + # Filter organizations by exact organization_id match + org_id: nil, + request_options: {} + ) end # Delete an organization @@ -149,7 +171,7 @@ module Hanzoai params( organization_ids: T::Array[String], request_options: Hanzoai::RequestOptions::OrHash - ).returns(T::Array[Hanzoai::Models::OrganizationDeleteResponseItem]) + ).returns(T::Array[Hanzoai::OrganizationTableWithMembers]) end def delete(organization_ids:, request_options: {}) end @@ -166,7 +188,7 @@ module Hanzoai # # - organization_id: str (required) # - member: Union[List[Member], Member] (required) - # - role: Literal[LLMUserRoles] (required) + # - role: Literal[LitellmUserRoles] (required) # - user_id: Optional[str] # - user_email: Optional[str] # @@ -179,7 +201,7 @@ module Hanzoai # "organization_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", # "member": { # "role": "internal_user", - # "user_id": "dev247652@hanzo.ai" + # "user_id": "krrish247652@berri.ai" # }, # "max_budget_in_organization": 100.0 # }' @@ -189,8 +211,8 @@ module Hanzoai # # 1. Check if organization exists # 2. Creates a new Internal User if the user_id or user_email is not found in - # LLM_UserTable - # 3. Add Internal User to the `LLM_OrganizationMembership` table + # LiteLLM_UserTable + # 3. Add Internal User to the `LiteLLM_OrganizationMembership` table sig do params( member: @@ -233,12 +255,11 @@ module Hanzoai params( organization_id: String, max_budget_in_organization: T.nilable(Float), - role: - T.nilable(Hanzoai::OrganizationUpdateMemberParams::Role::OrSymbol), + role: T.nilable(Hanzoai::UserRoles::OrSymbol), user_email: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash - ).returns(Hanzoai::Models::OrganizationUpdateMemberResponse) + ).returns(Hanzoai::OrganizationMembershipTable) end def update_member( organization_id:, diff --git a/rbi/hanzoai/resources/organization/info.rbi b/rbi/hanzoai/resources/organization/info.rbi index afc315c5..0b0072c2 100644 --- a/rbi/hanzoai/resources/organization/info.rbi +++ b/rbi/hanzoai/resources/organization/info.rbi @@ -9,7 +9,7 @@ module Hanzoai params( organization_id: String, request_options: Hanzoai::RequestOptions::OrHash - ).returns(Hanzoai::Models::Organization::InfoRetrieveResponse) + ).returns(Hanzoai::OrganizationTableWithMembers) end def retrieve(organization_id:, request_options: {}) end diff --git a/rbi/hanzoai/resources/provider.rbi b/rbi/hanzoai/resources/provider.rbi index 4a3115be..96a2f7ff 100644 --- a/rbi/hanzoai/resources/provider.rbi +++ b/rbi/hanzoai/resources/provider.rbi @@ -4,7 +4,7 @@ module Hanzoai module Resources class Provider # Provider Budget Routing - Get Budget, Spend Details - # https://docs.hanzo.ai/docs/proxy/provider_budget_routing + # https://docs.litellm.ai/docs/proxy/provider_budget_routing # # Use this endpoint to check current budget, spend and budget reset time for a # provider diff --git a/rbi/hanzoai/resources/responses.rbi b/rbi/hanzoai/resources/responses.rbi index 512fe394..4143df36 100644 --- a/rbi/hanzoai/resources/responses.rbi +++ b/rbi/hanzoai/resources/responses.rbi @@ -9,11 +9,23 @@ module Hanzoai # Follows the OpenAI Responses API spec: # https://platform.openai.com/docs/api-reference/responses # + # Supports background mode with polling_via_cache for partial response retrieval. + # When background=true and polling_via_cache is enabled, returns a polling_id + # immediately and streams the response in the background, updating Redis cache. + # # ```bash + # # Normal request # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ # "model": "gpt-4o", # "input": "Tell me about AI" # }' + # + # # Background request with polling + # curl -X POST http://localhost:4000/v1/responses -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ + # "model": "gpt-4o", + # "input": "Tell me about AI", + # "background": true + # }' # ``` sig do params(request_options: Hanzoai::RequestOptions::OrHash).returns( @@ -25,10 +37,20 @@ module Hanzoai # Get a response by ID. # + # Supports both: + # + # - Polling IDs (litellm*poll*\*): Returns cumulative cached content from + # background responses + # - Provider response IDs: Passes through to provider API + # # Follows the OpenAI Responses API spec: # https://platform.openai.com/docs/api-reference/responses/get # # ```bash + # # Get polling response + # curl -X GET http://localhost:4000/v1/responses/litellm_poll_abc123 -H "Authorization: Bearer sk-1234" + # + # # Get provider response # curl -X GET http://localhost:4000/v1/responses/resp_abc123 -H "Authorization: Bearer sk-1234" # ``` sig do @@ -42,6 +64,11 @@ module Hanzoai # Delete a response by ID. # + # Supports both: + # + # - Polling IDs (litellm*poll*\*): Deletes from Redis cache + # - Provider response IDs: Passes through to provider API + # # Follows the OpenAI Responses API spec: # https://platform.openai.com/docs/api-reference/responses/delete # diff --git a/rbi/hanzoai/resources/responses/input_items.rbi b/rbi/hanzoai/resources/responses/input_items.rbi index 44ecd943..5b944cac 100644 --- a/rbi/hanzoai/resources/responses/input_items.rbi +++ b/rbi/hanzoai/resources/responses/input_items.rbi @@ -4,14 +4,7 @@ module Hanzoai module Resources class Responses class InputItems - # Get input items for a response. - # - # Follows the OpenAI Responses API spec: - # https://platform.openai.com/docs/api-reference/responses/input-items - # - # ```bash - # curl -X GET http://localhost:4000/v1/responses/resp_abc123/input_items -H "Authorization: Bearer sk-1234" - # ``` + # List input items for a response. sig do params( response_id: String, diff --git a/rbi/hanzoai/resources/settings.rbi b/rbi/hanzoai/resources/settings.rbi index 84a45485..7ee45422 100644 --- a/rbi/hanzoai/resources/settings.rbi +++ b/rbi/hanzoai/resources/settings.rbi @@ -3,7 +3,7 @@ module Hanzoai module Resources class Settings - # Returns a list of llm level settings + # Returns a list of litellm level settings # # This is useful for debugging and ensuring the proxy server is configured # correctly. @@ -13,17 +13,17 @@ module Hanzoai # ``` # { # "alerting": _alerting, - # "llm.callbacks": llm_callbacks, - # "llm.input_callback": llm_input_callbacks, - # "llm.failure_callback": llm_failure_callbacks, - # "llm.success_callback": llm_success_callbacks, - # "llm._async_success_callback": llm_async_success_callbacks, - # "llm._async_failure_callback": llm_async_failure_callbacks, - # "llm._async_input_callback": llm_async_input_callbacks, - # "all_llm_callbacks": all_llm_callbacks, - # "num_callbacks": len(all_llm_callbacks), + # "litellm.callbacks": litellm_callbacks, + # "litellm.input_callback": litellm_input_callbacks, + # "litellm.failure_callback": litellm_failure_callbacks, + # "litellm.success_callback": litellm_success_callbacks, + # "litellm._async_success_callback": litellm_async_success_callbacks, + # "litellm._async_failure_callback": litellm_async_failure_callbacks, + # "litellm._async_input_callback": litellm_async_input_callbacks, + # "all_litellm_callbacks": all_litellm_callbacks, + # "num_callbacks": len(all_litellm_callbacks), # "num_alerting": _num_alerting, - # "llm.request_timeout": llm.request_timeout, + # "litellm.request_timeout": litellm.request_timeout, # } # ``` sig do diff --git a/rbi/hanzoai/resources/spend.rbi b/rbi/hanzoai/resources/spend.rbi index 4b285996..2a684c2e 100644 --- a/rbi/hanzoai/resources/spend.rbi +++ b/rbi/hanzoai/resources/spend.rbi @@ -8,7 +8,7 @@ module Hanzoai # Calculate spend **before** making call: # # Note: If you see a spend of $0.0 you need to set custom_pricing for your model: - # https://docs.hanzo.ai/docs/proxy/custom_pricing + # https://docs.litellm.ai/docs/proxy/custom_pricing # # ``` # curl --location 'http://localhost:4000/spend/calculate' @@ -52,7 +52,7 @@ module Hanzoai # ``` sig do params( - completion_response: T.nilable(T.anything), + completion_response: T.nilable(T::Hash[Symbol, T.anything]), messages: T.nilable(T::Array[T.anything]), model: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash @@ -66,9 +66,18 @@ module Hanzoai ) end + # [DEPRECATED] This endpoint is not paginated and can cause performance issues. + # Please use `/spend/logs/v2` instead for paginated access to spend logs. + # # View all spend logs, if request_id is provided, only logs for that request_id # will be returned # + # When start_date and end_date are provided: + # + # - summarize=true (default): Returns aggregated spend data grouped by date + # (maintains backward compatibility) + # - summarize=false: Returns filtered individual log entries within the date range + # # Example Request for all logs # # ``` @@ -84,13 +93,19 @@ module Hanzoai # Example Request for specific api_key # # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-Fn8Ej39NkBQmUagFEoUWPQ" -H "Authorization: Bearer sk-1234" + # curl -X GET "http://0.0.0.0:8000/spend/logs?api_key=sk-test-example-key-123" -H "Authorization: Bearer sk-1234" # ``` # # Example Request for specific user_id # # ``` - # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=z@hanzo.ai" -H "Authorization: Bearer sk-1234" + # curl -X GET "http://0.0.0.0:8000/spend/logs?user_id=ishaan@berri.ai" -H "Authorization: Bearer sk-1234" + # ``` + # + # Example Request for date range with individual logs (unsummarized) + # + # ``` + # curl -X GET "http://0.0.0.0:8000/spend/logs?start_date=2024-01-01&end_date=2024-01-02&summarize=false" -H "Authorization: Bearer sk-1234" # ``` sig do params( @@ -98,6 +113,7 @@ module Hanzoai end_date: T.nilable(String), request_id: T.nilable(String), start_date: T.nilable(String), + summarize: T::Boolean, user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(T::Array[Hanzoai::Models::SpendListLogsResponseItem]) @@ -112,13 +128,16 @@ module Hanzoai request_id: nil, # Time from which to start viewing key spend start_date: nil, + # When start_date and end_date are provided, summarize=true returns aggregated + # data by date (legacy behavior), summarize=false returns filtered individual logs + summarize: nil, # Get spend logs based on user_id user_id: nil, request_options: {} ) end - # LLM Enterprise - View Spend Per Request Tag + # LiteLLM Enterprise - View Spend Per Request Tag # # Example Request: # diff --git a/rbi/hanzoai/resources/team.rbi b/rbi/hanzoai/resources/team.rbi index 5da2a947..91b95d4e 100644 --- a/rbi/hanzoai/resources/team.rbi +++ b/rbi/hanzoai/resources/team.rbi @@ -12,7 +12,7 @@ module Hanzoai # Allow users to create a new team. Apply user permissions to their team. # # 👉 - # [Detailed Doc on setting team budgets](https://docs.hanzo.ai/docs/proxy/team_budgets) + # [Detailed Doc on setting team budgets](https://docs.litellm.ai/docs/proxy/team_budgets) # # Parameters: # @@ -22,16 +22,31 @@ module Hanzoai # - members_with_roles: List[{"role": "admin" or "user", "user_id": # ""}] - A list of users and their roles in the team. Get user_id when # making a new user via `/user/new`. + # - team_member_permissions: Optional[List[str]] - A list of routes that non-admin + # team members can access. example: ["/key/generate", "/key/update", + # "/key/delete"] # - metadata: Optional[dict] - Metadata for team, store information for team. # Example metadata = {"extra_info": "some info"} + # - model_rpm_limit: Optional[Dict[str, int]] - The RPM (Requests Per Minute) + # limit for this team - applied across all keys for this team. + # - model_tpm_limit: Optional[Dict[str, int]] - The TPM (Tokens Per Minute) limit + # for this team - applied across all keys for this team. # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - # all keys with this team_id will have at max this TPM limit # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - # all keys associated with this team_id will have at max this RPM limit + # - rpm_limit_type: Optional[Literal["guaranteed_throughput", + # "best_effort_throughput"]] - The type of RPM limit enforcement. Use + # "guaranteed_throughput" to raise an error if overallocating RPM, or + # "best_effort_throughput" for best effort enforcement. + # - tpm_limit_type: Optional[Literal["guaranteed_throughput", + # "best_effort_throughput"]] - The type of TPM limit enforcement. Use + # "guaranteed_throughput" to raise an error if overallocating TPM, or + # "best_effort_throughput" for best effort enforcement. # - max_budget: Optional[float] - The maximum budget allocated to the team - all # keys for this team_id will have at max this max_budget # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # [here](https://docs.litellm.ai/docs/proxy/team_budgets) # - models: Optional[list] - A list of models associated with the team - all keys # for this team_id will have at most, these models. If empty, assumes all models # are allowed. @@ -40,15 +55,46 @@ module Hanzoai # - members: Optional[List] - Control team members via `/team/member/add` and # `/team/member/delete`. # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). + # - prompts: Optional[List[str]] - List of prompts that the team is allowed to + # use. # - organization_id: Optional[str] - The organization id of the team. Default is # None. Create via `/organization/new`. # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # [Docs](https://docs.litellm.ai/docs/proxy/team_based_routing#create-team-with-model-alias) # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Returns: + # [Docs](https://docs.litellm.ai/docs/proxy/guardrails) + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - team-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - team_member_budget: Optional[float] - The maximum budget allocated to an + # individual team member. + # - team_member_rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for + # individual team members. + # - team_member_tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for + # individual team members. + # - team_member_key_duration: Optional[str] - The duration for a team member's + # key. e.g. "1d", "1w", "1mo" + # - allowed_passthrough_routes: Optional[List[str]] - List of allowed pass through + # routes for the team. + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - secret_manager_settings: Optional[dict] - Secret manager settings for the + # team. [Docs](https://docs.litellm.ai/docs/secret_managers/overview) + # - router_settings: Optional[UpdateRouterConfig] - team-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. + # + # Returns: + # # - team_id: (str) Unique team id - used for tracking spend across multiple keys # for same team id. # @@ -78,62 +124,115 @@ module Hanzoai sig do params( admins: T::Array[T.anything], + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::TeamCreateParams::AllowedVectorStoreIndex::OrHash + ] + ), blocked: T::Boolean, budget_duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), members: T::Array[T.anything], members_with_roles: T::Array[Hanzoai::Member::OrHash], - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_aliases: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T::Array[T.anything], + object_permission: + T.nilable(Hanzoai::TeamCreateParams::ObjectPermission::OrHash), organization_id: T.nilable(String), + prompts: T.nilable(T::Array[String]), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), + rpm_limit_type: + T.nilable(Hanzoai::TeamCreateParams::RpmLimitType::OrSymbol), + secret_manager_settings: T.nilable(T::Hash[Symbol, T.anything]), tags: T.nilable(T::Array[T.anything]), team_alias: T.nilable(String), team_id: T.nilable(String), + team_member_budget: T.nilable(Float), + team_member_key_duration: T.nilable(String), + team_member_permissions: T.nilable(T::Array[String]), + team_member_rpm_limit: T.nilable(Integer), + team_member_tpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer), - llm_changed_by: String, + tpm_limit_type: + T.nilable(Hanzoai::TeamCreateParams::TpmLimitType::OrSymbol), + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(Hanzoai::Models::TeamCreateResponse) end def create( - # Body param: + # Body param admins: nil, - # Body param: + # Body param + allowed_passthrough_routes: nil, + # Body param + allowed_vector_store_indexes: nil, + # Body param blocked: nil, - # Body param: + # Body param budget_duration: nil, - # Body param: + # Body param guardrails: nil, - # Body param: + # Body param max_budget: nil, - # Body param: + # Body param members: nil, - # Body param: + # Body param members_with_roles: nil, - # Body param: + # Body param metadata: nil, - # Body param: + # Body param model_aliases: nil, - # Body param: + # Body param + model_rpm_limit: nil, + # Body param + model_tpm_limit: nil, + # Body param models: nil, - # Body param: + # Body param + object_permission: nil, + # Body param organization_id: nil, - # Body param: + # Body param + prompts: nil, + # Body param + router_settings: nil, + # Body param rpm_limit: nil, - # Body param: + # Body param + rpm_limit_type: nil, + # Body param + secret_manager_settings: nil, + # Body param tags: nil, - # Body param: + # Body param team_alias: nil, - # Body param: + # Body param team_id: nil, - # Body param: + # Body param + team_member_budget: nil, + # Body param + team_member_key_duration: nil, + # Body param + team_member_permissions: nil, + # Body param + team_member_rpm_limit: nil, + # Body param + team_member_tpm_limit: nil, + # Body param tpm_limit: nil, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Body param + tpm_limit_type: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end @@ -146,9 +245,12 @@ module Hanzoai # # - team_id: str - The team id of the user. Required param. # - team_alias: Optional[str] - User defined team alias + # - team_member_permissions: Optional[List[str]] - A list of routes that non-admin + # team members can access. example: ["/key/generate", "/key/update", + # "/key/delete"] # - metadata: Optional[dict] - Metadata for team, store information for team. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } + # Example metadata = {"team": "core-infra", "app": "app2", "email": + # "ishaan@berri.ai" } # - tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for this team - # all keys with this team_id will have at max this TPM limit # - rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for this team - @@ -156,23 +258,57 @@ module Hanzoai # - max_budget: Optional[float] - The maximum budget allocated to the team - all # keys for this team_id will have at max this max_budget # - budget_duration: Optional[str] - The duration of the budget for the team. Doc - # [here](https://docs.hanzo.ai/docs/proxy/team_budgets) + # [here](https://docs.litellm.ai/docs/proxy/team_budgets) # - models: Optional[list] - A list of models associated with the team - all keys # for this team_id will have at most, these models. If empty, assumes all models # are allowed. + # - prompts: Optional[List[str]] - List of prompts that the team is allowed to + # use. # - blocked: bool - Flag indicating if the team is blocked or not - will stop all # calls from keys with this team_id. # - tags: Optional[List[str]] - Tags for - # [tracking spend](https://llm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) + # [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) # and/or doing - # [tag-based routing](https://llm.vercel.app/docs/proxy/tag_routing). + # [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). # - organization_id: Optional[str] - The organization id of the team. Default is # None. Create via `/organization/new`. # - model_aliases: Optional[dict] - Model aliases for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/team_based_routing#create-team-with-model-alias) + # [Docs](https://docs.litellm.ai/docs/proxy/team_based_routing#create-team-with-model-alias) # - guardrails: Optional[List[str]] - Guardrails for the team. - # [Docs](https://docs.hanzo.ai/docs/proxy/guardrails) Example - update team TPM - # Limit + # [Docs](https://docs.litellm.ai/docs/proxy/guardrails) + # - disable_global_guardrails: Optional[bool] - Whether to disable global + # guardrails for the key. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - team-specific + # object permission. Example - {"vector_stores": ["vector_store_1", + # "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": + # ["dev_group"]}. IF null or {} then no object permission. + # - team_member_budget: Optional[float] - The maximum budget allocated to an + # individual team member. + # - team_member_budget_duration: Optional[str] - The duration of the budget for + # the team member. Doc [here](https://docs.litellm.ai/docs/proxy/team_budgets) + # - team_member_rpm_limit: Optional[int] - The RPM (Requests Per Minute) limit for + # individual team members. + # - team_member_tpm_limit: Optional[int] - The TPM (Tokens Per Minute) limit for + # individual team members. + # - team_member_key_duration: Optional[str] - The duration for a team member's + # key. e.g. "1d", "1w", "1mo" + # - allowed_passthrough_routes: Optional[List[str]] - List of allowed pass through + # routes for the team. + # - model_rpm_limit: Optional[Dict[str, int]] - The RPM (Requests Per Minute) + # limit per model for this team. Example: {"gpt-4": 100, "gpt-3.5-turbo": 200} + # - model_tpm_limit: Optional[Dict[str, int]] - The TPM (Tokens Per Minute) limit + # per model for this team. Example: {"gpt-4": 10000, "gpt-3.5-turbo": 20000} + # Example - update team TPM Limit + # - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector + # store indexes for the key. Example - [{"index_name": "my-index", + # "index_permissions": ["write", "read"]}]. If specified, the key will only be + # able to use these specific vector store indexes. Create index, using + # `/v1/indexes` endpoint. + # - secret_manager_settings: Optional[dict] - Secret manager settings for the + # team. [Docs](https://docs.litellm.ai/docs/secret_managers/overview) + # - router_settings: Optional[UpdateRouterConfig] - team-specific router settings. + # Example - {"model_group_retry_policy": {"max_retries": 5}}. IF null or {} then + # no router settings. # # ``` # curl --location 'http://0.0.0.0:4000/team/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data-raw '{ @@ -192,53 +328,98 @@ module Hanzoai sig do params( team_id: String, + allowed_passthrough_routes: T.nilable(T::Array[T.anything]), + allowed_vector_store_indexes: + T.nilable( + T::Array[ + Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex::OrHash + ] + ), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), max_budget: T.nilable(Float), - metadata: T.nilable(T.anything), - model_aliases: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_aliases: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, Integer]), + model_tpm_limit: T.nilable(T::Hash[Symbol, Integer]), models: T.nilable(T::Array[T.anything]), + object_permission: + T.nilable(Hanzoai::TeamUpdateParams::ObjectPermission::OrHash), organization_id: T.nilable(String), + prompts: T.nilable(T::Array[String]), + router_settings: T.nilable(T::Hash[Symbol, T.anything]), rpm_limit: T.nilable(Integer), + secret_manager_settings: T.nilable(T::Hash[Symbol, T.anything]), tags: T.nilable(T::Array[T.anything]), team_alias: T.nilable(String), + team_member_budget: T.nilable(Float), + team_member_budget_duration: T.nilable(String), + team_member_key_duration: T.nilable(String), + team_member_rpm_limit: T.nilable(Integer), + team_member_tpm_limit: T.nilable(Integer), tpm_limit: T.nilable(Integer), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def update( - # Body param: + # Body param team_id:, - # Body param: + # Body param + allowed_passthrough_routes: nil, + # Body param + allowed_vector_store_indexes: nil, + # Body param blocked: nil, - # Body param: + # Body param budget_duration: nil, - # Body param: + # Body param guardrails: nil, - # Body param: + # Body param max_budget: nil, - # Body param: + # Body param metadata: nil, - # Body param: + # Body param model_aliases: nil, - # Body param: + # Body param + model_rpm_limit: nil, + # Body param + model_tpm_limit: nil, + # Body param models: nil, - # Body param: + # Body param + object_permission: nil, + # Body param organization_id: nil, - # Body param: + # Body param + prompts: nil, + # Body param + router_settings: nil, + # Body param rpm_limit: nil, - # Body param: + # Body param + secret_manager_settings: nil, + # Body param tags: nil, - # Body param: + # Body param team_alias: nil, - # Body param: + # Body param + team_member_budget: nil, + # Body param + team_member_budget_duration: nil, + # Body param + team_member_key_duration: nil, + # Body param + team_member_rpm_limit: nil, + # Body param + team_member_tpm_limit: nil, + # Body param tpm_limit: nil, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end @@ -284,23 +465,21 @@ module Hanzoai sig do params( team_ids: T::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def delete( - # Body param: + # Body param team_ids:, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end - # [BETA] - # # Add new members (either via user_email or user_id) to a team # # If user doesn't exist, new user row will also be added to User Table @@ -309,7 +488,7 @@ module Hanzoai # # ``` # - # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "dev247652@hanzo.ai"}}' + # curl -X POST 'http://0.0.0.0:4000/team/member_add' -H 'Authorization: Bearer sk-1234' -H 'Content-Type: application/json' -d '{"team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", "member": {"role": "user", "user_id": "krrish247652@berri.ai"}}' # # ``` sig do @@ -322,8 +501,13 @@ module Hanzoai ).returns(Hanzoai::Models::TeamAddMemberResponse) end def add_member( + # Member object or list of member objects to add. Each member must include either + # user_id or user_email, and a role member:, + # The ID of the team to add the member to team_id:, + # Maximum budget allocated to this user within the team. If not set, user has + # unlimited budget within team limits max_budget_in_team: nil, request_options: {} ) @@ -397,7 +581,7 @@ module Hanzoai # -H 'Content-Type: application/json' # -d '{ # "team_id": "45e3e396-ee08-4a61-a88e-16b3ce7e0849", - # "user_id": "dev247652@hanzo.ai" + # "user_id": "krrish247652@berri.ai" # }' # ``` sig do @@ -468,6 +652,8 @@ module Hanzoai team_id: String, max_budget_in_team: T.nilable(Float), role: T.nilable(Hanzoai::TeamUpdateMemberParams::Role::OrSymbol), + rpm_limit: T.nilable(Integer), + tpm_limit: T.nilable(Integer), user_email: T.nilable(String), user_id: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash @@ -477,6 +663,10 @@ module Hanzoai team_id:, max_budget_in_team: nil, role: nil, + # Requests per minute limit for this team member + rpm_limit: nil, + # Tokens per minute limit for this team member + tpm_limit: nil, user_email: nil, user_id: nil, request_options: {} diff --git a/rbi/hanzoai/resources/team/callback.rbi b/rbi/hanzoai/resources/team/callback.rbi index 00ef590c..670a09ec 100644 --- a/rbi/hanzoai/resources/team/callback.rbi +++ b/rbi/hanzoai/resources/team/callback.rbi @@ -81,23 +81,23 @@ module Hanzoai T.nilable( Hanzoai::Team::CallbackAddParams::CallbackType::OrSymbol ), - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def add( - # Path param: + # Path param team_id, - # Body param: + # Body param callback_name:, - # Body param: + # Body param callback_vars:, - # Body param: + # Body param callback_type: nil, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end diff --git a/rbi/hanzoai/resources/user.rbi b/rbi/hanzoai/resources/user.rbi index 876da43e..e8d43666 100644 --- a/rbi/hanzoai/resources/user.rbi +++ b/rbi/hanzoai/resources/user.rbi @@ -4,8 +4,8 @@ module Hanzoai module Resources class User # Use this to create a new INTERNAL user with a budget. Internal Users can access - # LLM Admin UI to make keys, request access to models. This creates a new user and - # generates a new api key for the new user. The new api key is returned. + # LiteLLM Admin UI to make keys, request access to models. This creates a new user + # and generates a new api key for the new user. The new api key is returned. # # Returns user id, budget + new key. # @@ -21,7 +21,7 @@ module Hanzoai # - user_role: Optional[str] - Specify a user role - "proxy_admin", # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` + # `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` # - max_budget: Optional[float] - Specify max budget for a given user. # - budget_duration: Optional[str] - Budget is reset at the end of specified # duration. If not set, budget is never reset. You can set duration as seconds @@ -36,29 +36,29 @@ module Hanzoai # - auto_create_key: bool - Default=True. Flag used for returning a key as part of # the /user/new response # - aliases: Optional[dict] - Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) + # [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) # - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. # - allowed_cache_controls: Optional[list] - List of allowed cache control values. # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- + # https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- # - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. # - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active # guardrails for the user # - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, # eg. turning off pii masking. # - metadata: Optional[dict] - Metadata for user, store information for user. - # Example metadata = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" - # } + # Example metadata = {"team": "core-infra", "app": "app2", "email": + # "ishaan@berri.ai" } # - max_parallel_requests: Optional[int] - Rate limit a user based on the number # of parallel requests. Raises 429 error, if user's parallel requests > x. # - soft_budget: Optional[float] - Get alerts when user crosses given budget, # doesn't block requests. # - model_max_budget: Optional[dict] - Model-specific max budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) # - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) # - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) # - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated # by proxy whenever user is used. You can set duration as seconds ("30s"), # minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). @@ -68,9 +68,15 @@ module Hanzoai # Default is None. # - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. # Default is None. - # - # Returns: - # + # - sso_user_id: Optional[str] - The id of the user in the SSO provider. + # - object_permission: Optional[LiteLLM_ObjectPermissionBase] - internal + # user-specific object permission. Example - {"vector_stores": + # ["vector_store_1", "vector_store_2"]}. IF null or {} then no object + # permission. + # - prompts: Optional[List[str]] - List of allowed prompts for the user. If + # specified, the user will only be able to use these specific prompts. + # - organizations: List[str] - List of organization id's the user is a member of + # Returns: # - key: (str) The generated api key for the user # - expires: (datetime) Datetime object for when key expires. # - user_id: (str) Unique user id - used for tracking spend across multiple keys @@ -87,28 +93,33 @@ module Hanzoai # ``` sig do params( - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), auto_create_key: T::Boolean, blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), - permissions: T.nilable(T.anything), + object_permission: + T.nilable(Hanzoai::UserCreateParams::ObjectPermission::OrHash), + organizations: T.nilable(T::Array[String]), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), rpm_limit: T.nilable(Integer), send_invite_email: T.nilable(T::Boolean), spend: T.nilable(Float), + sso_user_id: T.nilable(String), team_id: T.nilable(String), - teams: T.nilable(T::Array[T.anything]), + teams: T.nilable(Hanzoai::UserCreateParams::Teams::Variants), tpm_limit: T.nilable(Integer), user_alias: T.nilable(String), user_email: T.nilable(String), @@ -134,10 +145,14 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, + organizations: nil, permissions: nil, + prompts: nil, rpm_limit: nil, send_invite_email: nil, spend: nil, + sso_user_id: nil, team_id: nil, teams: nil, tpm_limit: nil, @@ -153,7 +168,7 @@ module Hanzoai # # ``` # curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ - # "user_id": "test-llm-user-4", + # "user_id": "test-litellm-user-4", # "user_role": "proxy_admin_viewer" # }' # ``` @@ -167,7 +182,7 @@ module Hanzoai # user_role: Optional[str] - Specify a user role - "proxy_admin", # "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", # "customer". Info about each role here: - # `https://github.com/hanzoai/llm/llm/proxy/_types.py#L20` - max_budget: + # `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` - max_budget: # Optional[float] - Specify max budget for a given user. - budget_duration: # Optional[str] - Budget is reset at the end of specified duration. If not set, # budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), @@ -178,56 +193,64 @@ module Hanzoai # (Requests per minute) - auto_create_key: bool - Default=True. Flag used for # returning a key as part of the /user/new response - aliases: Optional[dict] - # Model aliases for the user - - # [Docs](https://llm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: - # Optional[dict] - [DEPRECATED PARAM] User-specific config. - + # [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) - + # config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - # allowed_cache_controls: Optional[list] - List of allowed cache control values. # Example - ["no-cache", "no-store"]. See all values - - # https://docs.hanzo.ai/docs/proxy/caching#turn-on--off-caching-per-request- - + # https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- - # blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - # guardrails: Optional[List[str]] - [Not Implemented Yet] List of active # guardrails for the user - permissions: Optional[dict] - [Not Implemented Yet] # User-specific permissions, eg. turning off pii masking. - metadata: # Optional[dict] - Metadata for user, store information for user. Example metadata - # = {"team": "core-infra", "app": "app2", "email": "z@hanzo.ai" } - + # = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - # max_parallel_requests: Optional[int] - Rate limit a user based on the number of # parallel requests. Raises 429 error, if user's parallel requests > x. - # soft_budget: Optional[float] - Get alerts when user crosses given budget, # doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max # budget for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - # model_rpm_limit: Optional[float] - Model-specific rpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # model_tpm_limit: Optional[float] - Model-specific tpm limit for user. - # [Docs](https://docs.hanzo.ai/docs/proxy/users#add-model-specific-limits-to-keys) - + # [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - # spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by # proxy whenever user is used. You can set duration as seconds ("30s"), minutes # ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - team_id: Optional[str] - # [DEPRECATED PARAM] The team id of the user. Default is None. - duration: # Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT - # IMPLEMENTED]. + # IMPLEMENTED]. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - + # internal user-specific object permission. Example - {"vector_stores": + # ["vector_store_1", "vector_store_2"]}. IF null or {} then no object + # permission. - prompts: Optional[List[str]] - List of allowed prompts for the + # user. If specified, the user will only be able to use these specific prompts. sig do params( - aliases: T.nilable(T.anything), + aliases: T.nilable(T::Hash[Symbol, T.anything]), allowed_cache_controls: T.nilable(T::Array[T.anything]), blocked: T.nilable(T::Boolean), budget_duration: T.nilable(String), - config: T.nilable(T.anything), + config: T.nilable(T::Hash[Symbol, T.anything]), duration: T.nilable(String), guardrails: T.nilable(T::Array[String]), key_alias: T.nilable(String), max_budget: T.nilable(Float), max_parallel_requests: T.nilable(Integer), - metadata: T.nilable(T.anything), - model_max_budget: T.nilable(T.anything), - model_rpm_limit: T.nilable(T.anything), - model_tpm_limit: T.nilable(T.anything), + metadata: T.nilable(T::Hash[Symbol, T.anything]), + model_max_budget: T.nilable(T::Hash[Symbol, T.anything]), + model_rpm_limit: T.nilable(T::Hash[Symbol, T.anything]), + model_tpm_limit: T.nilable(T::Hash[Symbol, T.anything]), models: T.nilable(T::Array[T.anything]), + object_permission: + T.nilable(Hanzoai::UserUpdateParams::ObjectPermission::OrHash), password: T.nilable(String), - permissions: T.nilable(T.anything), + permissions: T.nilable(T::Hash[Symbol, T.anything]), + prompts: T.nilable(T::Array[String]), rpm_limit: T.nilable(Integer), spend: T.nilable(Float), team_id: T.nilable(String), tpm_limit: T.nilable(Integer), + user_alias: T.nilable(String), user_email: T.nilable(String), user_id: T.nilable(String), user_role: T.nilable(Hanzoai::UserUpdateParams::UserRole::OrSymbol), @@ -250,12 +273,15 @@ module Hanzoai model_rpm_limit: nil, model_tpm_limit: nil, models: nil, + object_permission: nil, password: nil, permissions: nil, + prompts: nil, rpm_limit: nil, spend: nil, team_id: nil, tpm_limit: nil, + user_alias: nil, user_email: nil, user_id: nil, user_role: nil, @@ -263,45 +289,6 @@ module Hanzoai ) end - # Get a paginated list of users, optionally filtered by role. - # - # Used by the UI to populate the user lists. - # - # Parameters: role: Optional[str] Filter users by role. Can be one of: - - # proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer - # user_ids: Optional[str] Get list of users by user_ids. Comma separated list of - # user_ids. page: int The page number to return page_size: int The number of items - # per page - # - # Currently - admin-only endpoint. - # - # Example curl: - # - # ``` - # http://0.0.0.0:4000/user/list?user_ids=default_user_id,693c1a4a-1cc0-4c7c-afe8-b5d2c8d52e17 - # ``` - sig do - params( - page: Integer, - page_size: Integer, - role: T.nilable(String), - user_ids: T.nilable(String), - request_options: Hanzoai::RequestOptions::OrHash - ).returns(T.anything) - end - def list( - # Page number - page: nil, - # Number of items per page - page_size: nil, - # Filter users by role - role: nil, - # Get list of users by user_ids - user_ids: nil, - request_options: {} - ) - end - # delete user and associated user keys # # ``` @@ -319,17 +306,17 @@ module Hanzoai sig do params( user_ids: T::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions::OrHash ).returns(T.anything) end def delete( - # Body param: + # Body param user_ids:, - # Header param: The llm-changed-by header enables tracking of actions performed by - # authorized users on behalf of other users, providing an audit trail for - # accountability - llm_changed_by: nil, + # Header param: The litellm-changed-by header enables tracking of actions + # performed by authorized users on behalf of other users, providing an audit trail + # for accountability + litellm_changed_by: nil, request_options: {} ) end @@ -341,7 +328,7 @@ module Hanzoai # Example request # # ``` - # curl -X GET 'http://localhost:4000/user/info?user_id=dev7%40hanzo.ai' --header 'Authorization: Bearer sk-1234' + # curl -X GET 'http://localhost:4000/user/info?user_id=krrish7%40berri.ai' --header 'Authorization: Bearer sk-1234' # ``` sig do params( diff --git a/rbi/hanzoai/resources/utils.rbi b/rbi/hanzoai/resources/utils.rbi index 2c2e4cca..cb41fb4c 100644 --- a/rbi/hanzoai/resources/utils.rbi +++ b/rbi/hanzoai/resources/utils.rbi @@ -3,7 +3,7 @@ module Hanzoai module Resources class Utils - # Returns supported openai params for a given llm model name + # Returns supported openai params for a given litellm model name # # e.g. `gpt-4` vs `gpt-3.5-turbo` # @@ -21,23 +21,41 @@ module Hanzoai def get_supported_openai_params(model:, request_options: {}) end - # Token Counter + # Args: request: TokenCountRequest call_endpoint: bool - When set to "True" it + # will call the token counting endpoint - e.g Anthropic or Google AI Studio Token + # Counting APIs. + # + # Returns: TokenCountResponse sig do params( model: String, - messages: T.nilable(T::Array[T.anything]), + call_endpoint: T::Boolean, + contents: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), + messages: T.nilable(T::Array[T::Hash[Symbol, T.anything]]), prompt: T.nilable(String), request_options: Hanzoai::RequestOptions::OrHash ).returns(Hanzoai::Models::UtilTokenCounterResponse) end - def token_counter(model:, messages: nil, prompt: nil, request_options: {}) + def token_counter( + # Body param + model:, + # Query param + call_endpoint: nil, + # Body param + contents: nil, + # Body param + messages: nil, + # Body param + prompt: nil, + request_options: {} + ) end # Transform Request sig do params( call_type: Hanzoai::UtilTransformRequestParams::CallType::OrSymbol, - request_body: T.anything, + request_body: T::Hash[Symbol, T.anything], request_options: Hanzoai::RequestOptions::OrHash ).returns(Hanzoai::Models::UtilTransformRequestResponse) end diff --git a/rbi/hanzoai/resources/vertex_ai.rbi b/rbi/hanzoai/resources/vertex_ai.rbi index b1bb54b8..ace2346c 100644 --- a/rbi/hanzoai/resources/vertex_ai.rbi +++ b/rbi/hanzoai/resources/vertex_ai.rbi @@ -3,9 +3,9 @@ module Hanzoai module Resources class VertexAI - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -15,9 +15,9 @@ module Hanzoai def create(endpoint, request_options: {}) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -27,9 +27,9 @@ module Hanzoai def retrieve(endpoint, request_options: {}) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -39,9 +39,9 @@ module Hanzoai def update(endpoint, request_options: {}) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, @@ -51,9 +51,9 @@ module Hanzoai def delete(endpoint, request_options: {}) end - # Call LLM proxy via Vertex AI SDK. + # Call LiteLLM proxy via Vertex AI SDK. # - # [Docs](https://docs.hanzo.ai/docs/pass_through/vertex_ai) + # [Docs](https://docs.litellm.ai/docs/pass_through/vertex_ai) sig do params( endpoint: String, diff --git a/sig/hanzoai/models.rbs b/sig/hanzoai/models.rbs index 889b3678..abe2c084 100644 --- a/sig/hanzoai/models.rbs +++ b/sig/hanzoai/models.rbs @@ -85,6 +85,8 @@ module Hanzoai class BudgetSettingsParams = Hanzoai::Models::BudgetSettingsParams + class BudgetTable = Hanzoai::Models::BudgetTable + class BudgetUpdateParams = Hanzoai::Models::BudgetUpdateParams module Cache = Hanzoai::Models::Cache @@ -113,8 +115,6 @@ module Hanzoai module Config = Hanzoai::Models::Config - class ConfigurableClientsideParamsCustomAuth = Hanzoai::Models::ConfigurableClientsideParamsCustomAuth - class CredentialCreateParams = Hanzoai::Models::CredentialCreateParams class CredentialDeleteParams = Hanzoai::Models::CredentialDeleteParams @@ -229,6 +229,8 @@ module Hanzoai class LangfuseUpdateParams = Hanzoai::Models::LangfuseUpdateParams + class LiteLlmEndUserTable = Hanzoai::Models::LiteLlmEndUserTable + class Member = Hanzoai::Models::Member module Model = Hanzoai::Models::Model @@ -269,6 +271,10 @@ module Hanzoai class OrganizationListParams = Hanzoai::Models::OrganizationListParams + class OrganizationMembershipTable = Hanzoai::Models::OrganizationMembershipTable + + class OrganizationTableWithMembers = Hanzoai::Models::OrganizationTableWithMembers + class OrganizationUpdateMemberParams = Hanzoai::Models::OrganizationUpdateMemberParams class OrganizationUpdateParams = Hanzoai::Models::OrganizationUpdateParams @@ -339,10 +345,10 @@ module Hanzoai class UserDeleteParams = Hanzoai::Models::UserDeleteParams - class UserListParams = Hanzoai::Models::UserListParams - class UserRetrieveInfoParams = Hanzoai::Models::UserRetrieveInfoParams + module UserRoles = Hanzoai::Models::UserRoles + class UserUpdateParams = Hanzoai::Models::UserUpdateParams class UtilGetSupportedOpenAIParamsParams = Hanzoai::Models::UtilGetSupportedOpenAIParamsParams diff --git a/sig/hanzoai/models/batch_list_params.rbs b/sig/hanzoai/models/batch_list_params.rbs index d49b6a4f..be0d0fd3 100644 --- a/sig/hanzoai/models/batch_list_params.rbs +++ b/sig/hanzoai/models/batch_list_params.rbs @@ -1,7 +1,12 @@ module Hanzoai module Models type batch_list_params = - { after: String?, limit: Integer?, provider: String? } + { + after: String?, + limit: Integer?, + provider: String?, + target_model_names: String? + } & Hanzoai::Internal::Type::request_parameters class BatchListParams < Hanzoai::Internal::Type::BaseModel @@ -14,10 +19,13 @@ module Hanzoai attr_accessor provider: String? + attr_accessor target_model_names: String? + def initialize: ( ?after: String?, ?limit: Integer?, ?provider: String?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> void @@ -25,6 +33,7 @@ module Hanzoai after: String?, limit: Integer?, provider: String?, + target_model_names: String?, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/batch_list_with_provider_params.rbs b/sig/hanzoai/models/batch_list_with_provider_params.rbs index 7a249a5a..d1eec42b 100644 --- a/sig/hanzoai/models/batch_list_with_provider_params.rbs +++ b/sig/hanzoai/models/batch_list_with_provider_params.rbs @@ -1,7 +1,7 @@ module Hanzoai module Models type batch_list_with_provider_params = - { after: String?, limit: Integer? } + { after: String?, limit: Integer?, target_model_names: String? } & Hanzoai::Internal::Type::request_parameters class BatchListWithProviderParams < Hanzoai::Internal::Type::BaseModel @@ -12,15 +12,19 @@ module Hanzoai attr_accessor limit: Integer? + attr_accessor target_model_names: String? + def initialize: ( ?after: String?, ?limit: Integer?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { after: String?, limit: Integer?, + target_model_names: String?, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/budget_new.rbs b/sig/hanzoai/models/budget_new.rbs index 5dfde588..4d0f2713 100644 --- a/sig/hanzoai/models/budget_new.rbs +++ b/sig/hanzoai/models/budget_new.rbs @@ -4,6 +4,7 @@ module Hanzoai { budget_duration: String?, budget_id: String?, + budget_reset_at: Time?, max_budget: Float?, max_parallel_requests: Integer?, model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, @@ -17,6 +18,8 @@ module Hanzoai attr_accessor budget_id: String? + attr_accessor budget_reset_at: Time? + attr_accessor max_budget: Float? attr_accessor max_parallel_requests: Integer? @@ -32,6 +35,7 @@ module Hanzoai def initialize: ( ?budget_duration: String?, ?budget_id: String?, + ?budget_reset_at: Time?, ?max_budget: Float?, ?max_parallel_requests: Integer?, ?model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, @@ -43,6 +47,7 @@ module Hanzoai def to_hash: -> { budget_duration: String?, budget_id: String?, + budget_reset_at: Time?, max_budget: Float?, max_parallel_requests: Integer?, model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, diff --git a/sig/hanzoai/models/budget_table.rbs b/sig/hanzoai/models/budget_table.rbs new file mode 100644 index 00000000..ea472427 --- /dev/null +++ b/sig/hanzoai/models/budget_table.rbs @@ -0,0 +1,55 @@ +module Hanzoai + module Models + type budget_table = + { + budget_duration: String?, + budget_id: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: ::Hash[Symbol, top]?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } + + class BudgetTable < Hanzoai::Internal::Type::BaseModel + attr_accessor budget_duration: String? + + attr_accessor budget_id: String? + + attr_accessor max_budget: Float? + + attr_accessor max_parallel_requests: Integer? + + attr_accessor model_max_budget: ::Hash[Symbol, top]? + + attr_accessor rpm_limit: Integer? + + attr_accessor soft_budget: Float? + + attr_accessor tpm_limit: Integer? + + def initialize: ( + ?budget_duration: String?, + ?budget_id: String?, + ?max_budget: Float?, + ?max_parallel_requests: Integer?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?rpm_limit: Integer?, + ?soft_budget: Float?, + ?tpm_limit: Integer? + ) -> void + + def to_hash: -> { + budget_duration: String?, + budget_id: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + model_max_budget: ::Hash[Symbol, top]?, + rpm_limit: Integer?, + soft_budget: Float?, + tpm_limit: Integer? + } + end + end +end diff --git a/sig/hanzoai/models/cache_ping_response.rbs b/sig/hanzoai/models/cache_ping_response.rbs index 698def89..b68f782c 100644 --- a/sig/hanzoai/models/cache_ping_response.rbs +++ b/sig/hanzoai/models/cache_ping_response.rbs @@ -4,8 +4,8 @@ module Hanzoai { cache_type: String, status: String, - health_check_cache_params: top?, - llm_cache_params: String?, + health_check_cache_params: ::Hash[Symbol, top]?, + litellm_cache_params: String?, ping_response: bool?, set_cache_response: String? } @@ -15,9 +15,9 @@ module Hanzoai attr_accessor status: String - attr_accessor health_check_cache_params: top? + attr_accessor health_check_cache_params: ::Hash[Symbol, top]? - attr_accessor llm_cache_params: String? + attr_accessor litellm_cache_params: String? attr_accessor ping_response: bool? @@ -26,8 +26,8 @@ module Hanzoai def initialize: ( cache_type: String, status: String, - ?health_check_cache_params: top?, - ?llm_cache_params: String?, + ?health_check_cache_params: ::Hash[Symbol, top]?, + ?litellm_cache_params: String?, ?ping_response: bool?, ?set_cache_response: String? ) -> void @@ -35,8 +35,8 @@ module Hanzoai def to_hash: -> { cache_type: String, status: String, - health_check_cache_params: top?, - llm_cache_params: String?, + health_check_cache_params: ::Hash[Symbol, top]?, + litellm_cache_params: String?, ping_response: bool?, set_cache_response: String? } diff --git a/sig/hanzoai/models/chat/completion_create_params.rbs b/sig/hanzoai/models/chat/completion_create_params.rbs index 9079bc1a..246dfebb 100644 --- a/sig/hanzoai/models/chat/completion_create_params.rbs +++ b/sig/hanzoai/models/chat/completion_create_params.rbs @@ -2,23 +2,1283 @@ module Hanzoai module Models module Chat type completion_create_params = - { model: String? } & Hanzoai::Internal::Type::request_parameters + { + messages: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::message], + model: String, + caching: bool?, + context_window_fallback_dict: ::Hash[Symbol, String]?, + fallbacks: ::Array[String]?, + frequency_penalty: Float?, + function_call: Hanzoai::Models::Chat::CompletionCreateParams::function_call?, + functions: ::Array[::Hash[Symbol, top]]?, + guardrails: ::Array[String]?, + logit_bias: ::Hash[Symbol, Float]?, + logprobs: bool?, + max_tokens: Integer?, + metadata: ::Hash[Symbol, top]?, + n: Integer?, + num_retries: Integer?, + parallel_tool_calls: bool?, + presence_penalty: Float?, + response_format: ::Hash[Symbol, top]?, + seed: Integer?, + service_tier: String?, + stop: Hanzoai::Models::Chat::CompletionCreateParams::stop?, + stream: bool?, + stream_options: ::Hash[Symbol, top]?, + temperature: Float?, + tool_choice: Hanzoai::Models::Chat::CompletionCreateParams::tool_choice?, + tools: ::Array[::Hash[Symbol, top]]?, + top_logprobs: Integer?, + top_p: Float?, + user: String? + } + & Hanzoai::Internal::Type::request_parameters class CompletionCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor model: String? + attr_accessor messages: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::message] + + attr_accessor model: String + + attr_accessor caching: bool? + + attr_accessor context_window_fallback_dict: ::Hash[Symbol, String]? + + attr_accessor fallbacks: ::Array[String]? + + attr_accessor frequency_penalty: Float? + + attr_accessor function_call: Hanzoai::Models::Chat::CompletionCreateParams::function_call? + + attr_accessor functions: ::Array[::Hash[Symbol, top]]? + + attr_accessor guardrails: ::Array[String]? + + attr_accessor logit_bias: ::Hash[Symbol, Float]? + + attr_accessor logprobs: bool? + + attr_accessor max_tokens: Integer? + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor n: Integer? + + attr_accessor num_retries: Integer? + + attr_accessor parallel_tool_calls: bool? + + attr_accessor presence_penalty: Float? + + attr_accessor response_format: ::Hash[Symbol, top]? + + attr_accessor seed: Integer? + + attr_accessor service_tier: String? + + attr_accessor stop: Hanzoai::Models::Chat::CompletionCreateParams::stop? + + attr_accessor stream: bool? + + attr_accessor stream_options: ::Hash[Symbol, top]? + + attr_accessor temperature: Float? + + attr_accessor tool_choice: Hanzoai::Models::Chat::CompletionCreateParams::tool_choice? + + attr_accessor tools: ::Array[::Hash[Symbol, top]]? + + attr_accessor top_logprobs: Integer? + + attr_accessor top_p: Float? + + attr_accessor user: String? def initialize: ( - ?model: String?, + messages: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::message], + model: String, + ?caching: bool?, + ?context_window_fallback_dict: ::Hash[Symbol, String]?, + ?fallbacks: ::Array[String]?, + ?frequency_penalty: Float?, + ?function_call: Hanzoai::Models::Chat::CompletionCreateParams::function_call?, + ?functions: ::Array[::Hash[Symbol, top]]?, + ?guardrails: ::Array[String]?, + ?logit_bias: ::Hash[Symbol, Float]?, + ?logprobs: bool?, + ?max_tokens: Integer?, + ?metadata: ::Hash[Symbol, top]?, + ?n: Integer?, + ?num_retries: Integer?, + ?parallel_tool_calls: bool?, + ?presence_penalty: Float?, + ?response_format: ::Hash[Symbol, top]?, + ?seed: Integer?, + ?service_tier: String?, + ?stop: Hanzoai::Models::Chat::CompletionCreateParams::stop?, + ?stream: bool?, + ?stream_options: ::Hash[Symbol, top]?, + ?temperature: Float?, + ?tool_choice: Hanzoai::Models::Chat::CompletionCreateParams::tool_choice?, + ?tools: ::Array[::Hash[Symbol, top]]?, + ?top_logprobs: Integer?, + ?top_p: Float?, + ?user: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - model: String?, + messages: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::message], + model: String, + caching: bool?, + context_window_fallback_dict: ::Hash[Symbol, String]?, + fallbacks: ::Array[String]?, + frequency_penalty: Float?, + function_call: Hanzoai::Models::Chat::CompletionCreateParams::function_call?, + functions: ::Array[::Hash[Symbol, top]]?, + guardrails: ::Array[String]?, + logit_bias: ::Hash[Symbol, Float]?, + logprobs: bool?, + max_tokens: Integer?, + metadata: ::Hash[Symbol, top]?, + n: Integer?, + num_retries: Integer?, + parallel_tool_calls: bool?, + presence_penalty: Float?, + response_format: ::Hash[Symbol, top]?, + seed: Integer?, + service_tier: String?, + stop: Hanzoai::Models::Chat::CompletionCreateParams::stop?, + stream: bool?, + stream_options: ::Hash[Symbol, top]?, + temperature: Float?, + tool_choice: Hanzoai::Models::Chat::CompletionCreateParams::tool_choice?, + tools: ::Array[::Hash[Symbol, top]]?, + top_logprobs: Integer?, + top_p: Float?, + user: String?, request_options: Hanzoai::RequestOptions } + + type message = + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage + + module Message + extend Hanzoai::Internal::Type::Union + + type chat_completion_user_message = + { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::content, + role: :user, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl + } + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::content + + attr_accessor role: :user + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl + + def initialize: ( + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::content, + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl, + ?role: :user + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::content, + role: :user, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::CacheControl + } + + type content = + String + | ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::union_member1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + type chat_completion_text_object = + { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_image_object = + { + image_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + type: :image_url + } + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + attr_accessor image_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url + + attr_accessor type: :image_url + + def initialize: ( + image_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + ?type: :image_url + ) -> void + + def to_hash: -> { + image_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + type: :image_url + } + + type image_url = + String + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + + module ImageURL + extend Hanzoai::Internal::Type::Union + + type chat_completion_image_url_object = + { url: String, detail: String, format_: String } + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_reader detail: String? + + def detail=: (String) -> String + + attr_reader format_: String? + + def format_=: (String) -> String + + def initialize: ( + url: String, + ?detail: String, + ?format_: String + ) -> void + + def to_hash: -> { + url: String, + detail: String, + format_: String + } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url] + end + end + + type chat_completion_audio_object = + { + input_audio: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: :input_audio + } + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + attr_accessor input_audio: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio + + attr_accessor type: :input_audio + + def initialize: ( + input_audio: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + ?type: :input_audio + ) -> void + + def to_hash: -> { + input_audio: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: :input_audio + } + + type input_audio = + { + data: String, + format_: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + } + + class InputAudio < Hanzoai::Internal::Type::BaseModel + attr_accessor data: String + + attr_accessor format_: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + + def initialize: ( + data: String, + format_: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + ) -> void + + def to_hash: -> { + data: String, + format_: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + } + + type format_ = :wav | :mp3 + + module Format + extend Hanzoai::Internal::Type::Enum + + WAV: :wav + MP3: :mp3 + + def self?.values: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_] + end + end + end + + type chat_completion_document_object = + { + citations: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: :document + } + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + attr_accessor citations: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations? + + attr_accessor context: String + + attr_accessor source: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source + + attr_accessor title: String + + attr_accessor type: :document + + def initialize: ( + citations: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + ?type: :document + ) -> void + + def to_hash: -> { + citations: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: :document + } + + type citations = { enabled: bool } + + class Citations < Hanzoai::Internal::Type::BaseModel + attr_accessor enabled: bool + + def initialize: (enabled: bool) -> void + + def to_hash: -> { enabled: bool } + end + + type source = + { data: String, media_type: String, type: :text } + + class Source < Hanzoai::Internal::Type::BaseModel + attr_accessor data: String + + attr_accessor media_type: String + + attr_accessor type: :text + + def initialize: ( + data: String, + media_type: String, + ?type: :text + ) -> void + + def to_hash: -> { + data: String, + media_type: String, + type: :text + } + end + end + + type chat_completion_video_object = + { + type: :video_url, + video_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + } + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :video_url + + attr_accessor video_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + + def initialize: ( + video_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url, + ?type: :video_url + ) -> void + + def to_hash: -> { + type: :video_url, + video_url: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + } + + type video_url = + String + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + + module VideoURL + extend Hanzoai::Internal::Type::Union + + type chat_completion_video_url_object = + { url: String, detail: String } + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_reader detail: String? + + def detail=: (String) -> String + + def initialize: (url: String, ?detail: String) -> void + + def to_hash: -> { url: String, detail: String } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url] + end + end + + type chat_completion_file_object = + { + file: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: :file + } + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + attr_accessor file: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File + + attr_accessor type: :file + + def initialize: ( + file: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + ?type: :file + ) -> void + + def to_hash: -> { + file: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: :file + } + + type file = + { + file_data: String, + file_id: String, + filename: String, + format_: String + } + + class File < Hanzoai::Internal::Type::BaseModel + attr_reader file_data: String? + + def file_data=: (String) -> String + + attr_reader file_id: String? + + def file_id=: (String) -> String + + attr_reader filename: String? + + def filename=: (String) -> String + + attr_reader format_: String? + + def format_=: (String) -> String + + def initialize: ( + ?file_data: String, + ?file_id: String, + ?filename: String, + ?format_: String + ) -> void + + def to_hash: -> { + file_data: String, + file_id: String, + filename: String, + format_: String + } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::Content::union_member1] + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionUserMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_assistant_message = + { + role: :assistant, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::content?, + function_call: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + name: String?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + tool_calls: ::Array[Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall]? + } + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor role: :assistant + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl + + attr_accessor content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::content? + + attr_accessor function_call: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall? + + attr_accessor name: String? + + attr_accessor reasoning_content: String? + + attr_accessor thinking_blocks: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::thinking_block]? + + attr_accessor tool_calls: ::Array[Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall]? + + def initialize: ( + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl, + ?content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::content?, + ?function_call: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + ?name: String?, + ?reasoning_content: String?, + ?thinking_blocks: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + ?tool_calls: ::Array[Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall]?, + ?role: :assistant + ) -> void + + def to_hash: -> { + role: :assistant, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::content?, + function_call: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + name: String?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + tool_calls: ::Array[Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall]? + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + type content = + String + | ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::union_member1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + type chat_completion_text_object = + { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::Content::union_member1] + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type function_call = + { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + attr_reader arguments: String? + + def arguments=: (String) -> String + + attr_accessor name: String? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + ?arguments: String, + ?name: String?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + end + + type thinking_block = + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_redacted_thinking_block = + { + type: :redacted_thinking, + cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :redacted_thinking + + attr_accessor cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control? + + attr_reader data: String? + + def data=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + ?data: String, + ?type: :redacted_thinking + ) -> void + + def to_hash: -> { + type: :redacted_thinking, + cache_control: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::thinking_block] + end + + type tool_call = + { + id: String?, + function: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: :function + } + + class ToolCall < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String? + + attr_accessor function: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function + + attr_accessor type: :function + + def initialize: ( + id: String?, + function: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + ?type: :function + ) -> void + + def to_hash: -> { + id: String?, + function: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: :function + } + + type function = + { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class Function < Hanzoai::Internal::Type::BaseModel + attr_reader arguments: String? + + def arguments=: (String) -> String + + attr_accessor name: String? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + ?arguments: String, + ?name: String?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + end + end + end + + type chat_completion_tool_message = + { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::content, + role: :tool, + tool_call_id: String + } + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::content + + attr_accessor role: :tool + + attr_accessor tool_call_id: String + + def initialize: ( + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::content, + tool_call_id: String, + ?role: :tool + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::content, + role: :tool, + tool_call_id: String + } + + type content = + String + | ::Array[Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionToolMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_system_message = + { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::content, + role: :system, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::content + + attr_accessor role: :system + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl + + attr_reader name: String? + + def name=: (String) -> String + + def initialize: ( + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::content, + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl, + ?name: String, + ?role: :system + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::content, + role: :system, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + + type content = String | ::Array[top] + + module Content + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionSystemMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_function_message = + { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + role: :function, + tool_call_id: String? + } + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::content? + + attr_accessor name: String + + attr_accessor role: :function + + attr_accessor tool_call_id: String? + + def initialize: ( + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + tool_call_id: String?, + ?role: :function + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + role: :function, + tool_call_id: String? + } + + type content = + String + | ::Array[Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionFunctionMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_developer_message = + { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::content, + role: :developer, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::content + + attr_accessor role: :developer + + attr_reader cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl + ) -> Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl + + attr_reader name: String? + + def name=: (String) -> String + + def initialize: ( + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::content, + ?cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl, + ?name: String, + ?role: :developer + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::content, + role: :developer, + cache_control: Hanzoai::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + + type content = String | ::Array[top] + + module Content + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::Message::ChatCompletionDeveloperMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::message] + end + + type function_call = String | ::Hash[Symbol, top] + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::function_call] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + + type stop = String | ::Array[String] + + module Stop + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::stop] + + StringArray: Hanzoai::Internal::Type::Converter + end + + type tool_choice = String | ::Hash[Symbol, top] + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Chat::CompletionCreateParams::tool_choice] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end end end end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs index 7419275c..e83e7be3 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_list_params.rbs @@ -2,7 +2,8 @@ module Hanzoai module Models module Config type pass_through_endpoint_list_params = - { endpoint_id: String? } & Hanzoai::Internal::Type::request_parameters + { endpoint_id: String?, team_id: String? } + & Hanzoai::Internal::Type::request_parameters class PassThroughEndpointListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter @@ -10,13 +11,17 @@ module Hanzoai attr_accessor endpoint_id: String? + attr_accessor team_id: String? + def initialize: ( ?endpoint_id: String?, + ?team_id: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { endpoint_id: String?, + team_id: String?, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs b/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs index a2c5ffd2..d98e67b1 100644 --- a/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs +++ b/sig/hanzoai/models/config/pass_through_endpoint_update_params.rbs @@ -4,7 +4,7 @@ module Hanzoai type pass_through_endpoint_update_params = { } & Hanzoai::Internal::Type::request_parameters - class PassThroughEndpointUpdateParams < Hanzoai::Internal::Type::BaseModel + class PassThroughEndpointUpdateParams < Hanzoai::Models::Config::PassThroughGenericEndpoint extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters diff --git a/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs b/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs index e3aace70..46740783 100644 --- a/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs +++ b/sig/hanzoai/models/config/pass_through_generic_endpoint.rbs @@ -2,18 +2,85 @@ module Hanzoai module Models module Config type pass_through_generic_endpoint = - { headers: top, path: String, target: String } + { + path: String, + target: String, + id: String?, + auth: bool, + cost_per_request: Float, + guardrails: ::Hash[Symbol, Hanzoai::Config::PassThroughGenericEndpoint::Guardrail?]?, + headers: ::Hash[Symbol, top], + include_subpath: bool + } class PassThroughGenericEndpoint < Hanzoai::Internal::Type::BaseModel - attr_accessor headers: top - attr_accessor path: String attr_accessor target: String - def initialize: (headers: top, path: String, target: String) -> void + attr_accessor id: String? + + attr_reader auth: bool? + + def auth=: (bool) -> bool + + attr_reader cost_per_request: Float? + + def cost_per_request=: (Float) -> Float + + attr_accessor guardrails: ::Hash[Symbol, Hanzoai::Config::PassThroughGenericEndpoint::Guardrail?]? + + attr_reader headers: ::Hash[Symbol, top]? + + def headers=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_reader include_subpath: bool? + + def include_subpath=: (bool) -> bool + + def initialize: ( + path: String, + target: String, + ?id: String?, + ?auth: bool, + ?cost_per_request: Float, + ?guardrails: ::Hash[Symbol, Hanzoai::Config::PassThroughGenericEndpoint::Guardrail?]?, + ?headers: ::Hash[Symbol, top], + ?include_subpath: bool + ) -> void + + def to_hash: -> { + path: String, + target: String, + id: String?, + auth: bool, + cost_per_request: Float, + guardrails: ::Hash[Symbol, Hanzoai::Config::PassThroughGenericEndpoint::Guardrail?]?, + headers: ::Hash[Symbol, top], + include_subpath: bool + } + + type guardrail = + { + request_fields: ::Array[String]?, + response_fields: ::Array[String]? + } + + class Guardrail < Hanzoai::Internal::Type::BaseModel + attr_accessor request_fields: ::Array[String]? + + attr_accessor response_fields: ::Array[String]? + + def initialize: ( + ?request_fields: ::Array[String]?, + ?response_fields: ::Array[String]? + ) -> void - def to_hash: -> { headers: top, path: String, target: String } + def to_hash: -> { + request_fields: ::Array[String]?, + response_fields: ::Array[String]? + } + end end end end diff --git a/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs b/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs deleted file mode 100644 index 8da3907e..00000000 --- a/sig/hanzoai/models/configurable_clientside_params_custom_auth.rbs +++ /dev/null @@ -1,13 +0,0 @@ -module Hanzoai - module Models - type configurable_clientside_params_custom_auth = { api_base: String } - - class ConfigurableClientsideParamsCustomAuth < Hanzoai::Internal::Type::BaseModel - attr_accessor api_base: String - - def initialize: (api_base: String) -> void - - def to_hash: -> { api_base: String } - end - end -end diff --git a/sig/hanzoai/models/credential_create_params.rbs b/sig/hanzoai/models/credential_create_params.rbs index c527b392..00d50c8d 100644 --- a/sig/hanzoai/models/credential_create_params.rbs +++ b/sig/hanzoai/models/credential_create_params.rbs @@ -2,9 +2,9 @@ module Hanzoai module Models type credential_create_params = { - credential_info: top, + credential_info: ::Hash[Symbol, top], credential_name: String, - credential_values: top?, + credential_values: ::Hash[Symbol, top]?, model_id: String? } & Hanzoai::Internal::Type::request_parameters @@ -13,26 +13,26 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor credential_info: top + attr_accessor credential_info: ::Hash[Symbol, top] attr_accessor credential_name: String - attr_accessor credential_values: top? + attr_accessor credential_values: ::Hash[Symbol, top]? attr_accessor model_id: String? def initialize: ( - credential_info: top, + credential_info: ::Hash[Symbol, top], credential_name: String, - ?credential_values: top?, + ?credential_values: ::Hash[Symbol, top]?, ?model_id: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - credential_info: top, + credential_info: ::Hash[Symbol, top], credential_name: String, - credential_values: top?, + credential_values: ::Hash[Symbol, top]?, model_id: String?, request_options: Hanzoai::RequestOptions } diff --git a/sig/hanzoai/models/credential_item.rbs b/sig/hanzoai/models/credential_item.rbs index d6baa622..a22edba5 100644 --- a/sig/hanzoai/models/credential_item.rbs +++ b/sig/hanzoai/models/credential_item.rbs @@ -1,25 +1,29 @@ module Hanzoai module Models type credential_item = - { credential_info: top, credential_name: String, credential_values: top } + { + credential_info: ::Hash[Symbol, top], + credential_name: String, + credential_values: ::Hash[Symbol, top] + } class CredentialItem < Hanzoai::Internal::Type::BaseModel - attr_accessor credential_info: top + attr_accessor credential_info: ::Hash[Symbol, top] attr_accessor credential_name: String - attr_accessor credential_values: top + attr_accessor credential_values: ::Hash[Symbol, top] def initialize: ( - credential_info: top, + credential_info: ::Hash[Symbol, top], credential_name: String, - credential_values: top + credential_values: ::Hash[Symbol, top] ) -> void def to_hash: -> { - credential_info: top, + credential_info: ::Hash[Symbol, top], credential_name: String, - credential_values: top + credential_values: ::Hash[Symbol, top] } end end diff --git a/sig/hanzoai/models/customer_create_params.rbs b/sig/hanzoai/models/customer_create_params.rbs index 0df5a337..ccc8a850 100644 --- a/sig/hanzoai/models/customer_create_params.rbs +++ b/sig/hanzoai/models/customer_create_params.rbs @@ -8,12 +8,14 @@ module Hanzoai blocked: bool, budget_duration: String?, budget_id: String?, + budget_reset_at: Time?, default_model: String?, max_budget: Float?, max_parallel_requests: Integer?, model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, rpm_limit: Integer?, soft_budget: Float?, + spend: Float?, tpm_limit: Integer? } & Hanzoai::Internal::Type::request_parameters @@ -36,6 +38,8 @@ module Hanzoai attr_accessor budget_id: String? + attr_accessor budget_reset_at: Time? + attr_accessor default_model: String? attr_accessor max_budget: Float? @@ -48,6 +52,8 @@ module Hanzoai attr_accessor soft_budget: Float? + attr_accessor spend: Float? + attr_accessor tpm_limit: Integer? def initialize: ( @@ -57,12 +63,14 @@ module Hanzoai ?blocked: bool, ?budget_duration: String?, ?budget_id: String?, + ?budget_reset_at: Time?, ?default_model: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, ?model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, ?rpm_limit: Integer?, ?soft_budget: Float?, + ?spend: Float?, ?tpm_limit: Integer?, ?request_options: Hanzoai::request_opts ) -> void @@ -74,12 +82,14 @@ module Hanzoai blocked: bool, budget_duration: String?, budget_id: String?, + budget_reset_at: Time?, default_model: String?, max_budget: Float?, max_parallel_requests: Integer?, model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, rpm_limit: Integer?, soft_budget: Float?, + spend: Float?, tpm_limit: Integer?, request_options: Hanzoai::RequestOptions } diff --git a/sig/hanzoai/models/customer_list_response.rbs b/sig/hanzoai/models/customer_list_response.rbs index 85d5815d..e8ae39d7 100644 --- a/sig/hanzoai/models/customer_list_response.rbs +++ b/sig/hanzoai/models/customer_list_response.rbs @@ -1,114 +1,6 @@ module Hanzoai module Models - type customer_list_response_item = - { - blocked: bool, - user_id: String, - alias_: String?, - allowed_model_region: Hanzoai::Models::CustomerListResponseItem::allowed_model_region?, - default_model: String?, - llm_budget_table: Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable?, - spend: Float - } - - class CustomerListResponseItem < Hanzoai::Internal::Type::BaseModel - attr_accessor blocked: bool - - attr_accessor user_id: String - - attr_accessor alias_: String? - - attr_accessor allowed_model_region: Hanzoai::Models::CustomerListResponseItem::allowed_model_region? - - attr_accessor default_model: String? - - attr_accessor llm_budget_table: Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - def initialize: ( - blocked: bool, - user_id: String, - ?alias_: String?, - ?allowed_model_region: Hanzoai::Models::CustomerListResponseItem::allowed_model_region?, - ?default_model: String?, - ?llm_budget_table: Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable?, - ?spend: Float - ) -> void - - def to_hash: -> { - blocked: bool, - user_id: String, - alias_: String?, - allowed_model_region: Hanzoai::Models::CustomerListResponseItem::allowed_model_region?, - default_model: String?, - llm_budget_table: Hanzoai::Models::CustomerListResponseItem::LlmBudgetTable?, - spend: Float - } - - type allowed_model_region = :eu | :us - - module AllowedModelRegion - extend Hanzoai::Internal::Type::Enum - - EU: :eu - US: :us - - def self?.values: -> ::Array[Hanzoai::Models::CustomerListResponseItem::allowed_model_region] - end - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - - type customer_list_response = - ::Array[Hanzoai::Models::CustomerListResponseItem] + type customer_list_response = ::Array[Hanzoai::LiteLlmEndUserTable] CustomerListResponse: Hanzoai::Internal::Type::Converter end diff --git a/sig/hanzoai/models/customer_retrieve_info_response.rbs b/sig/hanzoai/models/customer_retrieve_info_response.rbs deleted file mode 100644 index bb39f0aa..00000000 --- a/sig/hanzoai/models/customer_retrieve_info_response.rbs +++ /dev/null @@ -1,110 +0,0 @@ -module Hanzoai - module Models - type customer_retrieve_info_response = - { - blocked: bool, - user_id: String, - alias_: String?, - allowed_model_region: Hanzoai::Models::CustomerRetrieveInfoResponse::allowed_model_region?, - default_model: String?, - llm_budget_table: Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable?, - spend: Float - } - - class CustomerRetrieveInfoResponse < Hanzoai::Internal::Type::BaseModel - attr_accessor blocked: bool - - attr_accessor user_id: String - - attr_accessor alias_: String? - - attr_accessor allowed_model_region: Hanzoai::Models::CustomerRetrieveInfoResponse::allowed_model_region? - - attr_accessor default_model: String? - - attr_accessor llm_budget_table: Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - def initialize: ( - blocked: bool, - user_id: String, - ?alias_: String?, - ?allowed_model_region: Hanzoai::Models::CustomerRetrieveInfoResponse::allowed_model_region?, - ?default_model: String?, - ?llm_budget_table: Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable?, - ?spend: Float - ) -> void - - def to_hash: -> { - blocked: bool, - user_id: String, - alias_: String?, - allowed_model_region: Hanzoai::Models::CustomerRetrieveInfoResponse::allowed_model_region?, - default_model: String?, - llm_budget_table: Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable?, - spend: Float - } - - type allowed_model_region = :eu | :us - - module AllowedModelRegion - extend Hanzoai::Internal::Type::Enum - - EU: :eu - US: :us - - def self?.values: -> ::Array[Hanzoai::Models::CustomerRetrieveInfoResponse::allowed_model_region] - end - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - end -end diff --git a/sig/hanzoai/models/embedding_create_params.rbs b/sig/hanzoai/models/embedding_create_params.rbs index 7c51b693..e70f56b8 100644 --- a/sig/hanzoai/models/embedding_create_params.rbs +++ b/sig/hanzoai/models/embedding_create_params.rbs @@ -1,23 +1,102 @@ module Hanzoai module Models type embedding_create_params = - { model: String? } & Hanzoai::Internal::Type::request_parameters + { + model: String, + api_base: String?, + api_key: String?, + api_type: String?, + api_version: String?, + caching: bool, + custom_llm_provider: Hanzoai::Models::EmbeddingCreateParams::custom_llm_provider?, + input: ::Array[String], + litellm_call_id: String?, + litellm_logging_obj: ::Hash[Symbol, top]?, + logger_fn: String?, + timeout: Integer, + user: String? + } + & Hanzoai::Internal::Type::request_parameters class EmbeddingCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor model: String? + attr_accessor model: String + + attr_accessor api_base: String? + + attr_accessor api_key: String? + + attr_accessor api_type: String? + + attr_accessor api_version: String? + + attr_reader caching: bool? + + def caching=: (bool) -> bool + + attr_accessor custom_llm_provider: Hanzoai::Models::EmbeddingCreateParams::custom_llm_provider? + + attr_reader input: ::Array[String]? + + def input=: (::Array[String]) -> ::Array[String] + + attr_accessor litellm_call_id: String? + + attr_accessor litellm_logging_obj: ::Hash[Symbol, top]? + + attr_accessor logger_fn: String? + + attr_reader timeout: Integer? + + def timeout=: (Integer) -> Integer + + attr_accessor user: String? def initialize: ( - ?model: String?, + model: String, + ?api_base: String?, + ?api_key: String?, + ?api_type: String?, + ?api_version: String?, + ?caching: bool, + ?custom_llm_provider: Hanzoai::Models::EmbeddingCreateParams::custom_llm_provider?, + ?input: ::Array[String], + ?litellm_call_id: String?, + ?litellm_logging_obj: ::Hash[Symbol, top]?, + ?logger_fn: String?, + ?timeout: Integer, + ?user: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - model: String?, + model: String, + api_base: String?, + api_key: String?, + api_type: String?, + api_version: String?, + caching: bool, + custom_llm_provider: Hanzoai::Models::EmbeddingCreateParams::custom_llm_provider?, + input: ::Array[String], + litellm_call_id: String?, + litellm_logging_obj: ::Hash[Symbol, top]?, + logger_fn: String?, + timeout: Integer, + user: String?, request_options: Hanzoai::RequestOptions } + + type custom_llm_provider = String | ::Hash[Symbol, top] + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::EmbeddingCreateParams::custom_llm_provider] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end end end end diff --git a/sig/hanzoai/models/engine_embed_params.rbs b/sig/hanzoai/models/engine_embed_params.rbs index 48e4233f..194d1c66 100644 --- a/sig/hanzoai/models/engine_embed_params.rbs +++ b/sig/hanzoai/models/engine_embed_params.rbs @@ -1,15 +1,102 @@ module Hanzoai module Models type engine_embed_params = - { } & Hanzoai::Internal::Type::request_parameters + { + body_model: String, + api_base: String?, + api_key: String?, + api_type: String?, + api_version: String?, + caching: bool, + custom_llm_provider: Hanzoai::Models::EngineEmbedParams::custom_llm_provider?, + input: ::Array[String], + litellm_call_id: String?, + litellm_logging_obj: ::Hash[Symbol, top]?, + logger_fn: String?, + timeout: Integer, + user: String? + } + & Hanzoai::Internal::Type::request_parameters class EngineEmbedParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def initialize: (?request_options: Hanzoai::request_opts) -> void + attr_accessor body_model: String - def to_hash: -> { request_options: Hanzoai::RequestOptions } + attr_accessor api_base: String? + + attr_accessor api_key: String? + + attr_accessor api_type: String? + + attr_accessor api_version: String? + + attr_reader caching: bool? + + def caching=: (bool) -> bool + + attr_accessor custom_llm_provider: Hanzoai::Models::EngineEmbedParams::custom_llm_provider? + + attr_reader input: ::Array[String]? + + def input=: (::Array[String]) -> ::Array[String] + + attr_accessor litellm_call_id: String? + + attr_accessor litellm_logging_obj: ::Hash[Symbol, top]? + + attr_accessor logger_fn: String? + + attr_reader timeout: Integer? + + def timeout=: (Integer) -> Integer + + attr_accessor user: String? + + def initialize: ( + body_model: String, + ?api_base: String?, + ?api_key: String?, + ?api_type: String?, + ?api_version: String?, + ?caching: bool, + ?custom_llm_provider: Hanzoai::Models::EngineEmbedParams::custom_llm_provider?, + ?input: ::Array[String], + ?litellm_call_id: String?, + ?litellm_logging_obj: ::Hash[Symbol, top]?, + ?logger_fn: String?, + ?timeout: Integer, + ?user: String?, + ?request_options: Hanzoai::request_opts + ) -> void + + def to_hash: -> { + body_model: String, + api_base: String?, + api_key: String?, + api_type: String?, + api_version: String?, + caching: bool, + custom_llm_provider: Hanzoai::Models::EngineEmbedParams::custom_llm_provider?, + input: ::Array[String], + litellm_call_id: String?, + litellm_logging_obj: ::Hash[Symbol, top]?, + logger_fn: String?, + timeout: Integer, + user: String?, + request_options: Hanzoai::RequestOptions + } + + type custom_llm_provider = String | ::Hash[Symbol, top] + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::EngineEmbedParams::custom_llm_provider] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end end end end diff --git a/sig/hanzoai/models/engines/chat_complete_params.rbs b/sig/hanzoai/models/engines/chat_complete_params.rbs index 4ece7e50..761c8f15 100644 --- a/sig/hanzoai/models/engines/chat_complete_params.rbs +++ b/sig/hanzoai/models/engines/chat_complete_params.rbs @@ -2,15 +2,1283 @@ module Hanzoai module Models module Engines type chat_complete_params = - { } & Hanzoai::Internal::Type::request_parameters + { + messages: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::message], + body_model: String, + caching: bool?, + context_window_fallback_dict: ::Hash[Symbol, String]?, + fallbacks: ::Array[String]?, + frequency_penalty: Float?, + function_call: Hanzoai::Models::Engines::ChatCompleteParams::function_call?, + functions: ::Array[::Hash[Symbol, top]]?, + guardrails: ::Array[String]?, + logit_bias: ::Hash[Symbol, Float]?, + logprobs: bool?, + max_tokens: Integer?, + metadata: ::Hash[Symbol, top]?, + n: Integer?, + num_retries: Integer?, + parallel_tool_calls: bool?, + presence_penalty: Float?, + response_format: ::Hash[Symbol, top]?, + seed: Integer?, + service_tier: String?, + stop: Hanzoai::Models::Engines::ChatCompleteParams::stop?, + stream: bool?, + stream_options: ::Hash[Symbol, top]?, + temperature: Float?, + tool_choice: Hanzoai::Models::Engines::ChatCompleteParams::tool_choice?, + tools: ::Array[::Hash[Symbol, top]]?, + top_logprobs: Integer?, + top_p: Float?, + user: String? + } + & Hanzoai::Internal::Type::request_parameters class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def initialize: (?request_options: Hanzoai::request_opts) -> void + attr_accessor messages: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::message] - def to_hash: -> { request_options: Hanzoai::RequestOptions } + attr_accessor body_model: String + + attr_accessor caching: bool? + + attr_accessor context_window_fallback_dict: ::Hash[Symbol, String]? + + attr_accessor fallbacks: ::Array[String]? + + attr_accessor frequency_penalty: Float? + + attr_accessor function_call: Hanzoai::Models::Engines::ChatCompleteParams::function_call? + + attr_accessor functions: ::Array[::Hash[Symbol, top]]? + + attr_accessor guardrails: ::Array[String]? + + attr_accessor logit_bias: ::Hash[Symbol, Float]? + + attr_accessor logprobs: bool? + + attr_accessor max_tokens: Integer? + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor n: Integer? + + attr_accessor num_retries: Integer? + + attr_accessor parallel_tool_calls: bool? + + attr_accessor presence_penalty: Float? + + attr_accessor response_format: ::Hash[Symbol, top]? + + attr_accessor seed: Integer? + + attr_accessor service_tier: String? + + attr_accessor stop: Hanzoai::Models::Engines::ChatCompleteParams::stop? + + attr_accessor stream: bool? + + attr_accessor stream_options: ::Hash[Symbol, top]? + + attr_accessor temperature: Float? + + attr_accessor tool_choice: Hanzoai::Models::Engines::ChatCompleteParams::tool_choice? + + attr_accessor tools: ::Array[::Hash[Symbol, top]]? + + attr_accessor top_logprobs: Integer? + + attr_accessor top_p: Float? + + attr_accessor user: String? + + def initialize: ( + messages: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::message], + body_model: String, + ?caching: bool?, + ?context_window_fallback_dict: ::Hash[Symbol, String]?, + ?fallbacks: ::Array[String]?, + ?frequency_penalty: Float?, + ?function_call: Hanzoai::Models::Engines::ChatCompleteParams::function_call?, + ?functions: ::Array[::Hash[Symbol, top]]?, + ?guardrails: ::Array[String]?, + ?logit_bias: ::Hash[Symbol, Float]?, + ?logprobs: bool?, + ?max_tokens: Integer?, + ?metadata: ::Hash[Symbol, top]?, + ?n: Integer?, + ?num_retries: Integer?, + ?parallel_tool_calls: bool?, + ?presence_penalty: Float?, + ?response_format: ::Hash[Symbol, top]?, + ?seed: Integer?, + ?service_tier: String?, + ?stop: Hanzoai::Models::Engines::ChatCompleteParams::stop?, + ?stream: bool?, + ?stream_options: ::Hash[Symbol, top]?, + ?temperature: Float?, + ?tool_choice: Hanzoai::Models::Engines::ChatCompleteParams::tool_choice?, + ?tools: ::Array[::Hash[Symbol, top]]?, + ?top_logprobs: Integer?, + ?top_p: Float?, + ?user: String?, + ?request_options: Hanzoai::request_opts + ) -> void + + def to_hash: -> { + messages: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::message], + body_model: String, + caching: bool?, + context_window_fallback_dict: ::Hash[Symbol, String]?, + fallbacks: ::Array[String]?, + frequency_penalty: Float?, + function_call: Hanzoai::Models::Engines::ChatCompleteParams::function_call?, + functions: ::Array[::Hash[Symbol, top]]?, + guardrails: ::Array[String]?, + logit_bias: ::Hash[Symbol, Float]?, + logprobs: bool?, + max_tokens: Integer?, + metadata: ::Hash[Symbol, top]?, + n: Integer?, + num_retries: Integer?, + parallel_tool_calls: bool?, + presence_penalty: Float?, + response_format: ::Hash[Symbol, top]?, + seed: Integer?, + service_tier: String?, + stop: Hanzoai::Models::Engines::ChatCompleteParams::stop?, + stream: bool?, + stream_options: ::Hash[Symbol, top]?, + temperature: Float?, + tool_choice: Hanzoai::Models::Engines::ChatCompleteParams::tool_choice?, + tools: ::Array[::Hash[Symbol, top]]?, + top_logprobs: Integer?, + top_p: Float?, + user: String?, + request_options: Hanzoai::RequestOptions + } + + type message = + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + + module Message + extend Hanzoai::Internal::Type::Union + + type chat_completion_user_message = + { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::content, + role: :user, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + } + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::content + + attr_accessor role: :user + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + + def initialize: ( + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::content, + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl, + ?role: :user + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::content, + role: :user, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + } + + type content = + String + | ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::union_member1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + type chat_completion_text_object = + { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_image_object = + { + image_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + type: :image_url + } + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + attr_accessor image_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url + + attr_accessor type: :image_url + + def initialize: ( + image_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + ?type: :image_url + ) -> void + + def to_hash: -> { + image_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + type: :image_url + } + + type image_url = + String + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + + module ImageURL + extend Hanzoai::Internal::Type::Union + + type chat_completion_image_url_object = + { url: String, detail: String, format_: String } + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_reader detail: String? + + def detail=: (String) -> String + + attr_reader format_: String? + + def format_=: (String) -> String + + def initialize: ( + url: String, + ?detail: String, + ?format_: String + ) -> void + + def to_hash: -> { + url: String, + detail: String, + format_: String + } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url] + end + end + + type chat_completion_audio_object = + { + input_audio: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: :input_audio + } + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + attr_accessor input_audio: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio + + attr_accessor type: :input_audio + + def initialize: ( + input_audio: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + ?type: :input_audio + ) -> void + + def to_hash: -> { + input_audio: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: :input_audio + } + + type input_audio = + { + data: String, + format_: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + } + + class InputAudio < Hanzoai::Internal::Type::BaseModel + attr_accessor data: String + + attr_accessor format_: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + + def initialize: ( + data: String, + format_: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + ) -> void + + def to_hash: -> { + data: String, + format_: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + } + + type format_ = :wav | :mp3 + + module Format + extend Hanzoai::Internal::Type::Enum + + WAV: :wav + MP3: :mp3 + + def self?.values: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_] + end + end + end + + type chat_completion_document_object = + { + citations: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: :document + } + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + attr_accessor citations: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations? + + attr_accessor context: String + + attr_accessor source: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source + + attr_accessor title: String + + attr_accessor type: :document + + def initialize: ( + citations: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + ?type: :document + ) -> void + + def to_hash: -> { + citations: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: :document + } + + type citations = { enabled: bool } + + class Citations < Hanzoai::Internal::Type::BaseModel + attr_accessor enabled: bool + + def initialize: (enabled: bool) -> void + + def to_hash: -> { enabled: bool } + end + + type source = + { data: String, media_type: String, type: :text } + + class Source < Hanzoai::Internal::Type::BaseModel + attr_accessor data: String + + attr_accessor media_type: String + + attr_accessor type: :text + + def initialize: ( + data: String, + media_type: String, + ?type: :text + ) -> void + + def to_hash: -> { + data: String, + media_type: String, + type: :text + } + end + end + + type chat_completion_video_object = + { + type: :video_url, + video_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + } + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :video_url + + attr_accessor video_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + + def initialize: ( + video_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url, + ?type: :video_url + ) -> void + + def to_hash: -> { + type: :video_url, + video_url: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + } + + type video_url = + String + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + + module VideoURL + extend Hanzoai::Internal::Type::Union + + type chat_completion_video_url_object = + { url: String, detail: String } + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_reader detail: String? + + def detail=: (String) -> String + + def initialize: (url: String, ?detail: String) -> void + + def to_hash: -> { url: String, detail: String } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url] + end + end + + type chat_completion_file_object = + { + file: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: :file + } + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + attr_accessor file: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File + + attr_accessor type: :file + + def initialize: ( + file: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + ?type: :file + ) -> void + + def to_hash: -> { + file: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: :file + } + + type file = + { + file_data: String, + file_id: String, + filename: String, + format_: String + } + + class File < Hanzoai::Internal::Type::BaseModel + attr_reader file_data: String? + + def file_data=: (String) -> String + + attr_reader file_id: String? + + def file_id=: (String) -> String + + attr_reader filename: String? + + def filename=: (String) -> String + + attr_reader format_: String? + + def format_=: (String) -> String + + def initialize: ( + ?file_data: String, + ?file_id: String, + ?filename: String, + ?format_: String + ) -> void + + def to_hash: -> { + file_data: String, + file_id: String, + filename: String, + format_: String + } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::union_member1] + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionUserMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_assistant_message = + { + role: :assistant, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content?, + function_call: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + name: String?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + tool_calls: ::Array[Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]? + } + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor role: :assistant + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl + + attr_accessor content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content? + + attr_accessor function_call: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall? + + attr_accessor name: String? + + attr_accessor reasoning_content: String? + + attr_accessor thinking_blocks: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]? + + attr_accessor tool_calls: ::Array[Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]? + + def initialize: ( + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + ?content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content?, + ?function_call: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + ?name: String?, + ?reasoning_content: String?, + ?thinking_blocks: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + ?tool_calls: ::Array[Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]?, + ?role: :assistant + ) -> void + + def to_hash: -> { + role: :assistant, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content?, + function_call: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + name: String?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + tool_calls: ::Array[Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]? + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + type content = + String + | ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::union_member1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + type chat_completion_text_object = + { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::union_member1] + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type function_call = + { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + attr_reader arguments: String? + + def arguments=: (String) -> String + + attr_accessor name: String? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + ?arguments: String, + ?name: String?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + end + + type thinking_block = + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_redacted_thinking_block = + { + type: :redacted_thinking, + cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :redacted_thinking + + attr_accessor cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control? + + attr_reader data: String? + + def data=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + ?data: String, + ?type: :redacted_thinking + ) -> void + + def to_hash: -> { + type: :redacted_thinking, + cache_control: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block] + end + + type tool_call = + { + id: String?, + function: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: :function + } + + class ToolCall < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String? + + attr_accessor function: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function + + attr_accessor type: :function + + def initialize: ( + id: String?, + function: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + ?type: :function + ) -> void + + def to_hash: -> { + id: String?, + function: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: :function + } + + type function = + { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class Function < Hanzoai::Internal::Type::BaseModel + attr_reader arguments: String? + + def arguments=: (String) -> String + + attr_accessor name: String? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + ?arguments: String, + ?name: String?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + end + end + end + + type chat_completion_tool_message = + { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::content, + role: :tool, + tool_call_id: String + } + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::content + + attr_accessor role: :tool + + attr_accessor tool_call_id: String + + def initialize: ( + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::content, + tool_call_id: String, + ?role: :tool + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::content, + role: :tool, + tool_call_id: String + } + + type content = + String + | ::Array[Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionToolMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_system_message = + { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::content, + role: :system, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::content + + attr_accessor role: :system + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl + + attr_reader name: String? + + def name=: (String) -> String + + def initialize: ( + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::content, + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + ?name: String, + ?role: :system + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::content, + role: :system, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + + type content = String | ::Array[top] + + module Content + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionSystemMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_function_message = + { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + role: :function, + tool_call_id: String? + } + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content? + + attr_accessor name: String + + attr_accessor role: :function + + attr_accessor tool_call_id: String? + + def initialize: ( + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + tool_call_id: String?, + ?role: :function + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + role: :function, + tool_call_id: String? + } + + type content = + String + | ::Array[Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_developer_message = + { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content, + role: :developer, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content + + attr_accessor role: :developer + + attr_reader cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl? + + def cache_control=: ( + Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl + ) -> Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl + + attr_reader name: String? + + def name=: (String) -> String + + def initialize: ( + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content, + ?cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + ?name: String, + ?role: :developer + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content, + role: :developer, + cache_control: Hanzoai::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + + type content = String | ::Array[top] + + module Content + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::message] + end + + type function_call = String | ::Hash[Symbol, top] + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::function_call] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + + type stop = String | ::Array[String] + + module Stop + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::stop] + + StringArray: Hanzoai::Internal::Type::Converter + end + + type tool_choice = String | ::Hash[Symbol, top] + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Engines::ChatCompleteParams::tool_choice] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end end end end diff --git a/sig/hanzoai/models/file_create_params.rbs b/sig/hanzoai/models/file_create_params.rbs index f51135bf..c116f973 100644 --- a/sig/hanzoai/models/file_create_params.rbs +++ b/sig/hanzoai/models/file_create_params.rbs @@ -4,7 +4,10 @@ module Hanzoai { file: Hanzoai::Internal::file_input, purpose: String, - custom_llm_provider: String + custom_llm_provider: String, + litellm_metadata: String?, + target_model_names: String, + target_storage: String } & Hanzoai::Internal::Type::request_parameters @@ -20,10 +23,23 @@ module Hanzoai def custom_llm_provider=: (String) -> String + attr_accessor litellm_metadata: String? + + attr_reader target_model_names: String? + + def target_model_names=: (String) -> String + + attr_reader target_storage: String? + + def target_storage=: (String) -> String + def initialize: ( file: Hanzoai::Internal::file_input, purpose: String, ?custom_llm_provider: String, + ?litellm_metadata: String?, + ?target_model_names: String, + ?target_storage: String, ?request_options: Hanzoai::request_opts ) -> void @@ -31,6 +47,9 @@ module Hanzoai file: Hanzoai::Internal::file_input, purpose: String, custom_llm_provider: String, + litellm_metadata: String?, + target_model_names: String, + target_storage: String, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/file_list_params.rbs b/sig/hanzoai/models/file_list_params.rbs index e0b2e1f3..20b7b1ac 100644 --- a/sig/hanzoai/models/file_list_params.rbs +++ b/sig/hanzoai/models/file_list_params.rbs @@ -1,7 +1,8 @@ module Hanzoai module Models type file_list_params = - { purpose: String? } & Hanzoai::Internal::Type::request_parameters + { purpose: String?, target_model_names: String? } + & Hanzoai::Internal::Type::request_parameters class FileListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter @@ -9,13 +10,17 @@ module Hanzoai attr_accessor purpose: String? + attr_accessor target_model_names: String? + def initialize: ( ?purpose: String?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { purpose: String?, + target_model_names: String?, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/fine_tuning/job_create_params.rbs b/sig/hanzoai/models/fine_tuning/job_create_params.rbs index bf2bf3d5..133216ce 100644 --- a/sig/hanzoai/models/fine_tuning/job_create_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_create_params.rbs @@ -2,124 +2,15 @@ module Hanzoai module Models module FineTuning type job_create_params = - { - custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, - model: String, - training_file: String, - hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, - integrations: ::Array[String]?, - seed: Integer?, - suffix: String?, - validation_file: String? - } - & Hanzoai::Internal::Type::request_parameters + { } & Hanzoai::Internal::Type::request_parameters - class JobCreateParams < Hanzoai::Internal::Type::BaseModel + class JobCreateParams < Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider + def initialize: (?request_options: Hanzoai::request_opts) -> void - attr_accessor model: String - - attr_accessor training_file: String - - attr_accessor hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters? - - attr_accessor integrations: ::Array[String]? - - attr_accessor seed: Integer? - - attr_accessor suffix: String? - - attr_accessor validation_file: String? - - def initialize: ( - custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, - model: String, - training_file: String, - ?hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, - ?integrations: ::Array[String]?, - ?seed: Integer?, - ?suffix: String?, - ?validation_file: String?, - ?request_options: Hanzoai::request_opts - ) -> void - - def to_hash: -> { - custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, - model: String, - training_file: String, - hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, - integrations: ::Array[String]?, - seed: Integer?, - suffix: String?, - validation_file: String?, - request_options: Hanzoai::RequestOptions - } - - type custom_llm_provider = :openai | :azure | :vertex_ai - - module CustomLlmProvider - extend Hanzoai::Internal::Type::Enum - - OPENAI: :openai - AZURE: :azure - VERTEX_AI: :vertex_ai - - def self?.values: -> ::Array[Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider] - end - - type hyperparameters = - { - batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, - learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, - n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? - } - - class Hyperparameters < Hanzoai::Internal::Type::BaseModel - attr_accessor batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size? - - attr_accessor learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier? - - attr_accessor n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? - - def initialize: ( - ?batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, - ?learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, - ?n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? - ) -> void - - def to_hash: -> { - batch_size: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size?, - learning_rate_multiplier: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier?, - n_epochs: Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? - } - - type batch_size = String | Integer - - module BatchSize - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size] - end - - type learning_rate_multiplier = String | Float - - module LearningRateMultiplier - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier] - end - - type n_epochs = String | Integer - - module NEpochs - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs] - end - end + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/fine_tuning/job_list_params.rbs b/sig/hanzoai/models/fine_tuning/job_list_params.rbs index 08edac6e..2c0d8bd3 100644 --- a/sig/hanzoai/models/fine_tuning/job_list_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_list_params.rbs @@ -3,9 +3,10 @@ module Hanzoai module FineTuning type job_list_params = { - custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider, after: String?, - limit: Integer? + custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider?, + limit: Integer?, + target_model_names: String? } & Hanzoai::Internal::Type::request_parameters @@ -13,23 +14,27 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider - attr_accessor after: String? + attr_accessor custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider? + attr_accessor limit: Integer? + attr_accessor target_model_names: String? + def initialize: ( - custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider, ?after: String?, + ?custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider?, ?limit: Integer?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider, after: String?, + custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider?, limit: Integer?, + target_model_names: String?, request_options: Hanzoai::RequestOptions } diff --git a/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs b/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs index 1461e3d0..27d7daab 100644 --- a/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs +++ b/sig/hanzoai/models/fine_tuning/job_retrieve_params.rbs @@ -3,7 +3,7 @@ module Hanzoai module FineTuning type job_retrieve_params = { - custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider + custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider? } & Hanzoai::Internal::Type::request_parameters @@ -11,15 +11,15 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider + attr_accessor custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider? def initialize: ( - custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider, + ?custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider, + custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider?, request_options: Hanzoai::RequestOptions } diff --git a/sig/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbs b/sig/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbs new file mode 100644 index 00000000..dcf64f49 --- /dev/null +++ b/sig/hanzoai/models/fine_tuning/lite_llm_fine_tuning_job_create.rbs @@ -0,0 +1,120 @@ +module Hanzoai + module Models + module FineTuning + type lite_llm_fine_tuning_job_create = + { + model: String, + training_file: String, + custom_llm_provider: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::custom_llm_provider?, + hyperparameters: Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters?, + integrations: ::Array[String]?, + seed: Integer?, + suffix: String?, + validation_file: String? + } + + class LiteLlmFineTuningJobCreate < Hanzoai::Internal::Type::BaseModel + attr_accessor model: String + + attr_accessor training_file: String + + attr_accessor custom_llm_provider: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::custom_llm_provider? + + attr_accessor hyperparameters: Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters? + + attr_accessor integrations: ::Array[String]? + + attr_accessor seed: Integer? + + attr_accessor suffix: String? + + attr_accessor validation_file: String? + + def initialize: ( + model: String, + training_file: String, + ?custom_llm_provider: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::custom_llm_provider?, + ?hyperparameters: Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters?, + ?integrations: ::Array[String]?, + ?seed: Integer?, + ?suffix: String?, + ?validation_file: String? + ) -> void + + def to_hash: -> { + model: String, + training_file: String, + custom_llm_provider: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::custom_llm_provider?, + hyperparameters: Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters?, + integrations: ::Array[String]?, + seed: Integer?, + suffix: String?, + validation_file: String? + } + + type custom_llm_provider = :openai | :azure | :vertex_ai + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Enum + + OPENAI: :openai + AZURE: :azure + VERTEX_AI: :vertex_ai + + def self?.values: -> ::Array[Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::custom_llm_provider] + end + + type hyperparameters = + { + batch_size: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::batch_size?, + learning_rate_multiplier: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::learning_rate_multiplier?, + n_epochs: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::n_epochs? + } + + class Hyperparameters < Hanzoai::Internal::Type::BaseModel + attr_accessor batch_size: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::batch_size? + + attr_accessor learning_rate_multiplier: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::learning_rate_multiplier? + + attr_accessor n_epochs: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::n_epochs? + + def initialize: ( + ?batch_size: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::batch_size?, + ?learning_rate_multiplier: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::learning_rate_multiplier?, + ?n_epochs: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::n_epochs? + ) -> void + + def to_hash: -> { + batch_size: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::batch_size?, + learning_rate_multiplier: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::learning_rate_multiplier?, + n_epochs: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::n_epochs? + } + + type batch_size = String | Integer + + module BatchSize + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::batch_size] + end + + type learning_rate_multiplier = String | Float + + module LearningRateMultiplier + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::learning_rate_multiplier] + end + + type n_epochs = String | Integer + + module NEpochs + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters::n_epochs] + end + end + end + end + end +end diff --git a/sig/hanzoai/models/generate_key_response.rbs b/sig/hanzoai/models/generate_key_response.rbs index 5a70b1ad..fb4e0fda 100644 --- a/sig/hanzoai/models/generate_key_response.rbs +++ b/sig/hanzoai/models/generate_key_response.rbs @@ -2,58 +2,75 @@ module Hanzoai module Models type generate_key_response = { - expires: Time?, key: String, token: String?, - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex]?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, + created_at: Time?, created_by: String?, duration: String?, enforced_params: ::Array[String]?, + expires: Time?, guardrails: ::Array[String]?, key_alias: String?, key_name: String?, - llm_budget_table: top, + litellm_budget_table: top, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::GenerateKeyResponse::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + router_settings: Hanzoai::GenerateKeyResponse::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::GenerateKeyResponse::rpm_limit_type?, spend: Float?, tags: ::Array[String]?, team_id: String?, token_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::GenerateKeyResponse::tpm_limit_type?, + updated_at: Time?, updated_by: String?, user_id: String? } class GenerateKeyResponse < Hanzoai::Internal::Type::BaseModel - attr_accessor expires: Time? - attr_accessor key: String attr_accessor token: String? - attr_accessor aliases: top? + attr_accessor aliases: ::Hash[Symbol, top]? attr_accessor allowed_cache_controls: ::Array[top]? + attr_accessor allowed_passthrough_routes: ::Array[top]? + + attr_accessor allowed_routes: ::Array[top]? + + attr_accessor allowed_vector_store_indexes: ::Array[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex]? + attr_accessor blocked: bool? attr_accessor budget_duration: String? attr_accessor budget_id: String? - attr_accessor config: top? + attr_accessor config: ::Hash[Symbol, top]? + + attr_accessor created_at: Time? attr_accessor created_by: String? @@ -61,34 +78,46 @@ module Hanzoai attr_accessor enforced_params: ::Array[String]? + attr_accessor expires: Time? + attr_accessor guardrails: ::Array[String]? attr_accessor key_alias: String? attr_accessor key_name: String? - attr_reader llm_budget_table: top? + attr_reader litellm_budget_table: top? - def llm_budget_table=: (top) -> top + def litellm_budget_table=: (top) -> top attr_accessor max_budget: Float? attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_rpm_limit: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, top]? - attr_accessor model_tpm_limit: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, top]? attr_accessor models: ::Array[top]? - attr_accessor permissions: top? + attr_accessor object_permission: Hanzoai::GenerateKeyResponse::ObjectPermission? + + attr_accessor organization_id: String? + + attr_accessor permissions: ::Hash[Symbol, top]? + + attr_accessor prompts: ::Array[String]? + + attr_accessor router_settings: Hanzoai::GenerateKeyResponse::RouterSettings? attr_accessor rpm_limit: Integer? + attr_accessor rpm_limit_type: Hanzoai::Models::GenerateKeyResponse::rpm_limit_type? + attr_accessor spend: Float? attr_accessor tags: ::Array[String]? @@ -99,79 +128,288 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor tpm_limit_type: Hanzoai::Models::GenerateKeyResponse::tpm_limit_type? + + attr_accessor updated_at: Time? + attr_accessor updated_by: String? attr_accessor user_id: String? def initialize: ( - expires: Time?, key: String, ?token: String?, - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex]?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, + ?created_at: Time?, ?created_by: String?, ?duration: String?, ?enforced_params: ::Array[String]?, + ?expires: Time?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?key_name: String?, - ?llm_budget_table: top, + ?litellm_budget_table: top, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::GenerateKeyResponse::ObjectPermission?, + ?organization_id: String?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?router_settings: Hanzoai::GenerateKeyResponse::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::GenerateKeyResponse::rpm_limit_type?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?token_id: String?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::GenerateKeyResponse::tpm_limit_type?, + ?updated_at: Time?, ?updated_by: String?, ?user_id: String? ) -> void def to_hash: -> { - expires: Time?, key: String, token: String?, - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex]?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, + created_at: Time?, created_by: String?, duration: String?, enforced_params: ::Array[String]?, + expires: Time?, guardrails: ::Array[String]?, key_alias: String?, key_name: String?, - llm_budget_table: top, + litellm_budget_table: top, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::GenerateKeyResponse::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + router_settings: Hanzoai::GenerateKeyResponse::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::GenerateKeyResponse::rpm_limit_type?, spend: Float?, tags: ::Array[String]?, team_id: String?, token_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::GenerateKeyResponse::tpm_limit_type?, + updated_at: Time?, updated_by: String?, user_id: String? } + + type allowed_vector_store_index = + { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::GenerateKeyResponse::AllowedVectorStoreIndex::index_permission] + } + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + attr_accessor index_name: String + + attr_accessor index_permissions: ::Array[Hanzoai::Models::GenerateKeyResponse::AllowedVectorStoreIndex::index_permission] + + def initialize: ( + index_name: String, + index_permissions: ::Array[Hanzoai::Models::GenerateKeyResponse::AllowedVectorStoreIndex::index_permission] + ) -> void + + def to_hash: -> { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::GenerateKeyResponse::AllowedVectorStoreIndex::index_permission] + } + + type index_permission = :read | :write + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ: :read + WRITE: :write + + def self?.values: -> ::Array[Hanzoai::Models::GenerateKeyResponse::AllowedVectorStoreIndex::index_permission] + end + end + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type router_settings = + { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::GenerateKeyResponse::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + attr_accessor allowed_fails: Integer? + + attr_accessor context_window_fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor cooldown_time: Float? + + attr_accessor fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor max_retries: Integer? + + attr_accessor model_group_alias: ::Hash[Symbol, Hanzoai::Models::GenerateKeyResponse::RouterSettings::model_group_alias]? + + attr_accessor model_group_retry_policy: ::Hash[Symbol, top]? + + attr_accessor num_retries: Integer? + + attr_accessor retry_after: Float? + + attr_accessor routing_strategy: String? + + attr_accessor routing_strategy_args: ::Hash[Symbol, top]? + + attr_accessor timeout: Float? + + def initialize: ( + ?allowed_fails: Integer?, + ?context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + ?cooldown_time: Float?, + ?fallbacks: ::Array[::Hash[Symbol, top]]?, + ?max_retries: Integer?, + ?model_group_alias: ::Hash[Symbol, Hanzoai::Models::GenerateKeyResponse::RouterSettings::model_group_alias]?, + ?model_group_retry_policy: ::Hash[Symbol, top]?, + ?num_retries: Integer?, + ?retry_after: Float?, + ?routing_strategy: String?, + ?routing_strategy_args: ::Hash[Symbol, top]?, + ?timeout: Float? + ) -> void + + def to_hash: -> { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::GenerateKeyResponse::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + type model_group_alias = String | ::Hash[Symbol, top] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::GenerateKeyResponse::RouterSettings::model_group_alias] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + end + + type rpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::GenerateKeyResponse::rpm_limit_type] + end + + type tpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::GenerateKeyResponse::tpm_limit_type] + end end end end diff --git a/sig/hanzoai/models/global/spend_list_tags_response.rbs b/sig/hanzoai/models/global/spend_list_tags_response.rbs index 92d9ffae..02b19bda 100644 --- a/sig/hanzoai/models/global/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/global/spend_list_tags_response.rbs @@ -119,7 +119,7 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem::end_time] end - type messages = String | ::Array[top] | top + type messages = String | ::Array[top] | ::Hash[Symbol, top] module Messages extend Hanzoai::Internal::Type::Union @@ -127,9 +127,11 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end - type response = String | ::Array[top] | top + type response = String | ::Array[top] | ::Hash[Symbol, top] module Response extend Hanzoai::Internal::Type::Union @@ -137,6 +139,8 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendListTagsResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs index eecc3142..6de262de 100644 --- a/sig/hanzoai/models/global/spend_retrieve_report_response.rbs +++ b/sig/hanzoai/models/global/spend_retrieve_report_response.rbs @@ -119,7 +119,7 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem::end_time] end - type messages = String | ::Array[top] | top + type messages = String | ::Array[top] | ::Hash[Symbol, top] module Messages extend Hanzoai::Internal::Type::Union @@ -127,9 +127,11 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end - type response = String | ::Array[top] | top + type response = String | ::Array[top] | ::Hash[Symbol, top] module Response extend Hanzoai::Internal::Type::Union @@ -137,6 +139,8 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::Global::SpendRetrieveReportResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/guardrail_list_response.rbs b/sig/hanzoai/models/guardrail_list_response.rbs index 3c35fce2..e9416bb2 100644 --- a/sig/hanzoai/models/guardrail_list_response.rbs +++ b/sig/hanzoai/models/guardrail_list_response.rbs @@ -16,66 +16,189 @@ module Hanzoai type guardrail = { - guardrail_info: top?, guardrail_name: String, - llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams + created_at: Time?, + guardrail_definition_location: Hanzoai::Models::GuardrailListResponse::Guardrail::guardrail_definition_location, + guardrail_id: String?, + guardrail_info: ::Hash[Symbol, top]?, + litellm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams?, + updated_at: Time? } class Guardrail < Hanzoai::Internal::Type::BaseModel - attr_accessor guardrail_info: top? - attr_accessor guardrail_name: String - attr_accessor llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams + attr_accessor created_at: Time? + + attr_reader guardrail_definition_location: Hanzoai::Models::GuardrailListResponse::Guardrail::guardrail_definition_location? + + def guardrail_definition_location=: ( + Hanzoai::Models::GuardrailListResponse::Guardrail::guardrail_definition_location + ) -> Hanzoai::Models::GuardrailListResponse::Guardrail::guardrail_definition_location + + attr_accessor guardrail_id: String? + + attr_accessor guardrail_info: ::Hash[Symbol, top]? + + attr_accessor litellm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams? + + attr_accessor updated_at: Time? def initialize: ( - guardrail_info: top?, guardrail_name: String, - llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams + ?created_at: Time?, + ?guardrail_definition_location: Hanzoai::Models::GuardrailListResponse::Guardrail::guardrail_definition_location, + ?guardrail_id: String?, + ?guardrail_info: ::Hash[Symbol, top]?, + ?litellm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams?, + ?updated_at: Time? ) -> void def to_hash: -> { - guardrail_info: top?, guardrail_name: String, - llm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams + created_at: Time?, + guardrail_definition_location: Hanzoai::Models::GuardrailListResponse::Guardrail::guardrail_definition_location, + guardrail_id: String?, + guardrail_info: ::Hash[Symbol, top]?, + litellm_params: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams?, + updated_at: Time? } - type llm_params = + type guardrail_definition_location = :db | :config + + module GuardrailDefinitionLocation + extend Hanzoai::Internal::Type::Enum + + DB: :db + CONFIG: :config + + def self?.values: -> ::Array[Hanzoai::Models::GuardrailListResponse::Guardrail::guardrail_definition_location] + end + + type litellm_params = { - guardrail: String, - mode: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::mode, - default_on: bool + additional_provider_specific_params: ::Hash[Symbol, top]?, + api_base: String?, + api_endpoint: String?, + api_key: String?, + category_thresholds: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds?, + credentials: String?, + default_on: bool?, + detect_secrets_config: ::Hash[Symbol, top]?, + experimental_use_latest_role_message_only: bool?, + fail_on_error: bool?, + guard_name: String?, + location: String?, + mask_request_content: bool?, + mask_response_content: bool?, + model: String?, + pangea_input_recipe: String?, + pangea_output_recipe: String?, + template_id: String?, + violation_message_template: String? } - class LlmParams < Hanzoai::Internal::Type::BaseModel - attr_accessor guardrail: String + class LitellmParams < Hanzoai::Internal::Type::BaseModel + attr_accessor additional_provider_specific_params: ::Hash[Symbol, top]? + + attr_accessor api_base: String? + + attr_accessor api_endpoint: String? + + attr_accessor api_key: String? - attr_accessor mode: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::mode + attr_accessor category_thresholds: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds? - attr_reader default_on: bool? + attr_accessor credentials: String? - def default_on=: (bool) -> bool + attr_accessor default_on: bool? + + attr_accessor detect_secrets_config: ::Hash[Symbol, top]? + + attr_accessor experimental_use_latest_role_message_only: bool? + + attr_accessor fail_on_error: bool? + + attr_accessor guard_name: String? + + attr_accessor location: String? + + attr_accessor mask_request_content: bool? + + attr_accessor mask_response_content: bool? + + attr_accessor model: String? + + attr_accessor pangea_input_recipe: String? + + attr_accessor pangea_output_recipe: String? + + attr_accessor template_id: String? + + attr_accessor violation_message_template: String? def initialize: ( - guardrail: String, - mode: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::mode, - ?default_on: bool + ?additional_provider_specific_params: ::Hash[Symbol, top]?, + ?api_base: String?, + ?api_endpoint: String?, + ?api_key: String?, + ?category_thresholds: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds?, + ?credentials: String?, + ?default_on: bool?, + ?detect_secrets_config: ::Hash[Symbol, top]?, + ?experimental_use_latest_role_message_only: bool?, + ?fail_on_error: bool?, + ?guard_name: String?, + ?location: String?, + ?mask_request_content: bool?, + ?mask_response_content: bool?, + ?model: String?, + ?pangea_input_recipe: String?, + ?pangea_output_recipe: String?, + ?template_id: String?, + ?violation_message_template: String? ) -> void def to_hash: -> { - guardrail: String, - mode: Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::mode, - default_on: bool + additional_provider_specific_params: ::Hash[Symbol, top]?, + api_base: String?, + api_endpoint: String?, + api_key: String?, + category_thresholds: Hanzoai::Models::GuardrailListResponse::Guardrail::LitellmParams::CategoryThresholds?, + credentials: String?, + default_on: bool?, + detect_secrets_config: ::Hash[Symbol, top]?, + experimental_use_latest_role_message_only: bool?, + fail_on_error: bool?, + guard_name: String?, + location: String?, + mask_request_content: bool?, + mask_response_content: bool?, + model: String?, + pangea_input_recipe: String?, + pangea_output_recipe: String?, + template_id: String?, + violation_message_template: String? } - type mode = String | ::Array[String] + type category_thresholds = + { jailbreak: Float, prompt_injection: Float } + + class CategoryThresholds < Hanzoai::Internal::Type::BaseModel + attr_reader jailbreak: Float? + + def jailbreak=: (Float) -> Float + + attr_reader prompt_injection: Float? - module Mode - extend Hanzoai::Internal::Type::Union + def prompt_injection=: (Float) -> Float - def self?.variants: -> ::Array[Hanzoai::Models::GuardrailListResponse::Guardrail::LlmParams::mode] + def initialize: ( + ?jailbreak: Float, + ?prompt_injection: Float + ) -> void - StringArray: Hanzoai::Internal::Type::Converter + def to_hash: -> { jailbreak: Float, prompt_injection: Float } end end end diff --git a/sig/hanzoai/models/health_check_all_params.rbs b/sig/hanzoai/models/health_check_all_params.rbs index 8125ac4e..ee98bc8a 100644 --- a/sig/hanzoai/models/health_check_all_params.rbs +++ b/sig/hanzoai/models/health_check_all_params.rbs @@ -1,7 +1,8 @@ module Hanzoai module Models type health_check_all_params = - { model: String? } & Hanzoai::Internal::Type::request_parameters + { model: String?, model_id: String? } + & Hanzoai::Internal::Type::request_parameters class HealthCheckAllParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter @@ -9,13 +10,17 @@ module Hanzoai attr_accessor model: String? + attr_accessor model_id: String? + def initialize: ( ?model: String?, + ?model_id: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { model: String?, + model_id: String?, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/health_check_services_params.rbs b/sig/hanzoai/models/health_check_services_params.rbs index 8283d864..ae52a776 100644 --- a/sig/hanzoai/models/health_check_services_params.rbs +++ b/sig/hanzoai/models/health_check_services_params.rbs @@ -23,12 +23,16 @@ module Hanzoai type service = :slack_budget_alerts | :langfuse + | :langfuse_otel | :slack | :openmeter | :webhook | :email | :braintrust | :datadog + | :generic_api + | :arize + | :sqs | String module Service @@ -38,12 +42,16 @@ module Hanzoai SLACK_BUDGET_ALERTS: :slack_budget_alerts LANGFUSE: :langfuse + LANGFUSE_OTEL: :langfuse_otel SLACK: :slack OPENMETER: :openmeter WEBHOOK: :webhook EMAIL: :email BRAINTRUST: :braintrust DATADOG: :datadog + GENERIC_API: :generic_api + ARIZE: :arize + SQS: :sqs end end end diff --git a/sig/hanzoai/models/images/generation_create_params.rbs b/sig/hanzoai/models/images/generation_create_params.rbs index 147617cc..b8180b86 100644 --- a/sig/hanzoai/models/images/generation_create_params.rbs +++ b/sig/hanzoai/models/images/generation_create_params.rbs @@ -2,15 +2,23 @@ module Hanzoai module Models module Images type generation_create_params = - { } & Hanzoai::Internal::Type::request_parameters + { model: String? } & Hanzoai::Internal::Type::request_parameters class GenerationCreateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def initialize: (?request_options: Hanzoai::request_opts) -> void + attr_accessor model: String? - def to_hash: -> { request_options: Hanzoai::RequestOptions } + def initialize: ( + ?model: String?, + ?request_options: Hanzoai::request_opts + ) -> void + + def to_hash: -> { + model: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/key/regenerate_key_request.rbs b/sig/hanzoai/models/key/regenerate_key_request.rbs index b5669374..aa3af1a9 100644 --- a/sig/hanzoai/models/key/regenerate_key_request.rbs +++ b/sig/hanzoai/models/key/regenerate_key_request.rbs @@ -3,48 +3,69 @@ module Hanzoai module Key type regenerate_key_request = { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, enforced_params: ::Array[String]?, guardrails: ::Array[String]?, key: String?, key_alias: String?, + key_type: Hanzoai::Models::Key::RegenerateKeyRequest::key_type?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, + new_key: String?, new_master_key: String?, - permissions: top?, + object_permission: Hanzoai::Key::RegenerateKeyRequest::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + rotation_interval: String?, + router_settings: Hanzoai::Key::RegenerateKeyRequest::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::rpm_limit_type?, send_invite_email: bool?, soft_budget: Float?, spend: Float?, tags: ::Array[String]?, team_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::tpm_limit_type?, user_id: String? } class RegenerateKeyRequest < Hanzoai::Internal::Type::BaseModel - attr_accessor aliases: top? + attr_accessor aliases: ::Hash[Symbol, top]? attr_accessor allowed_cache_controls: ::Array[top]? + attr_accessor allowed_passthrough_routes: ::Array[top]? + + attr_accessor allowed_routes: ::Array[top]? + + attr_accessor allowed_vector_store_indexes: ::Array[Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex]? + + attr_accessor auto_rotate: bool? + attr_accessor blocked: bool? attr_accessor budget_duration: String? attr_accessor budget_id: String? - attr_accessor config: top? + attr_accessor config: ::Hash[Symbol, top]? attr_accessor duration: String? @@ -56,26 +77,42 @@ module Hanzoai attr_accessor key_alias: String? + attr_accessor key_type: Hanzoai::Models::Key::RegenerateKeyRequest::key_type? + attr_accessor max_budget: Float? attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_rpm_limit: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, top]? - attr_accessor model_tpm_limit: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, top]? attr_accessor models: ::Array[top]? + attr_accessor new_key: String? + attr_accessor new_master_key: String? - attr_accessor permissions: top? + attr_accessor object_permission: Hanzoai::Key::RegenerateKeyRequest::ObjectPermission? + + attr_accessor organization_id: String? + + attr_accessor permissions: ::Hash[Symbol, top]? + + attr_accessor prompts: ::Array[String]? + + attr_accessor rotation_interval: String? + + attr_accessor router_settings: Hanzoai::Key::RegenerateKeyRequest::RouterSettings? attr_accessor rpm_limit: Integer? + attr_accessor rpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::rpm_limit_type? + attr_accessor send_invite_email: bool? attr_accessor soft_budget: Float? @@ -88,69 +125,293 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor tpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::tpm_limit_type? + attr_accessor user_id: String? def initialize: ( - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex]?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?enforced_params: ::Array[String]?, ?guardrails: ::Array[String]?, ?key: String?, ?key_alias: String?, + ?key_type: Hanzoai::Models::Key::RegenerateKeyRequest::key_type?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, + ?new_key: String?, ?new_master_key: String?, - ?permissions: top?, + ?object_permission: Hanzoai::Key::RegenerateKeyRequest::ObjectPermission?, + ?organization_id: String?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?rotation_interval: String?, + ?router_settings: Hanzoai::Key::RegenerateKeyRequest::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::rpm_limit_type?, ?send_invite_email: bool?, ?soft_budget: Float?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::tpm_limit_type?, ?user_id: String? ) -> void def to_hash: -> { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, enforced_params: ::Array[String]?, guardrails: ::Array[String]?, key: String?, key_alias: String?, + key_type: Hanzoai::Models::Key::RegenerateKeyRequest::key_type?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, + new_key: String?, new_master_key: String?, - permissions: top?, + object_permission: Hanzoai::Key::RegenerateKeyRequest::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + rotation_interval: String?, + router_settings: Hanzoai::Key::RegenerateKeyRequest::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::rpm_limit_type?, send_invite_email: bool?, soft_budget: Float?, spend: Float?, tags: ::Array[String]?, team_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::tpm_limit_type?, user_id: String? } + + type allowed_vector_store_index = + { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::index_permission] + } + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + attr_accessor index_name: String + + attr_accessor index_permissions: ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::index_permission] + + def initialize: ( + index_name: String, + index_permissions: ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::index_permission] + ) -> void + + def to_hash: -> { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::index_permission] + } + + type index_permission = :read | :write + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ: :read + WRITE: :write + + def self?.values: -> ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::AllowedVectorStoreIndex::index_permission] + end + end + + type key_type = :llm_api | :management | :read_only | :default + + module KeyType + extend Hanzoai::Internal::Type::Enum + + LLM_API: :llm_api + MANAGEMENT: :management + READ_ONLY: :read_only + DEFAULT: :default + + def self?.values: -> ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::key_type] + end + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type router_settings = + { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + attr_accessor allowed_fails: Integer? + + attr_accessor context_window_fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor cooldown_time: Float? + + attr_accessor fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor max_retries: Integer? + + attr_accessor model_group_alias: ::Hash[Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings::model_group_alias]? + + attr_accessor model_group_retry_policy: ::Hash[Symbol, top]? + + attr_accessor num_retries: Integer? + + attr_accessor retry_after: Float? + + attr_accessor routing_strategy: String? + + attr_accessor routing_strategy_args: ::Hash[Symbol, top]? + + attr_accessor timeout: Float? + + def initialize: ( + ?allowed_fails: Integer?, + ?context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + ?cooldown_time: Float?, + ?fallbacks: ::Array[::Hash[Symbol, top]]?, + ?max_retries: Integer?, + ?model_group_alias: ::Hash[Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings::model_group_alias]?, + ?model_group_retry_policy: ::Hash[Symbol, top]?, + ?num_retries: Integer?, + ?retry_after: Float?, + ?routing_strategy: String?, + ?routing_strategy_args: ::Hash[Symbol, top]?, + ?timeout: Float? + ) -> void + + def to_hash: -> { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + type model_group_alias = String | ::Hash[Symbol, top] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::RouterSettings::model_group_alias] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + end + + type rpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::rpm_limit_type] + end + + type tpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::Key::RegenerateKeyRequest::tpm_limit_type] + end end end end diff --git a/sig/hanzoai/models/key_block_params.rbs b/sig/hanzoai/models/key_block_params.rbs index 0646e610..8078169a 100644 --- a/sig/hanzoai/models/key_block_params.rbs +++ b/sig/hanzoai/models/key_block_params.rbs @@ -1,23 +1,24 @@ module Hanzoai module Models type key_block_params = - { llm_changed_by: String } & Hanzoai::Internal::Type::request_parameters + { litellm_changed_by: String } + & Hanzoai::Internal::Type::request_parameters class KeyBlockParams < Hanzoai::Models::BlockKeyRequest extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def llm_changed_by: -> String? + def litellm_changed_by: -> String? - def llm_changed_by=: (String _) -> String + def litellm_changed_by=: (String _) -> String def initialize: ( - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/key_block_response.rbs b/sig/hanzoai/models/key_block_response.rbs index 47a8c479..75929f9d 100644 --- a/sig/hanzoai/models/key_block_response.rbs +++ b/sig/hanzoai/models/key_block_response.rbs @@ -3,26 +3,35 @@ module Hanzoai type key_block_response = { token: String?, - aliases: top, + aliases: ::Hash[Symbol, top], allowed_cache_controls: ::Array[top]?, + allowed_routes: ::Array[top]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_reset_at: Time?, - config: top, + config: ::Hash[Symbol, top], created_at: Time?, created_by: String?, expires: Hanzoai::Models::KeyBlockResponse::expires?, key_alias: String?, key_name: String?, - llm_budget_table: top?, + key_rotation_at: Time?, + last_rotation_at: Time?, + litellm_budget_table: ::Hash[Symbol, top]?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top, - model_max_budget: top, - model_spend: top, + metadata: ::Hash[Symbol, top], + model_max_budget: ::Hash[Symbol, top], + model_spend: ::Hash[Symbol, top], models: ::Array[top], + object_permission: Hanzoai::Models::KeyBlockResponse::ObjectPermission?, + object_permission_id: String?, org_id: String?, - permissions: top, + permissions: ::Hash[Symbol, top], + rotation_count: Integer?, + rotation_interval: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, soft_budget_cooldown: bool, spend: Float, @@ -36,21 +45,25 @@ module Hanzoai class KeyBlockResponse < Hanzoai::Internal::Type::BaseModel attr_accessor token: String? - attr_reader aliases: top? + attr_reader aliases: ::Hash[Symbol, top]? - def aliases=: (top) -> top + def aliases=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] attr_accessor allowed_cache_controls: ::Array[top]? + attr_accessor allowed_routes: ::Array[top]? + + attr_accessor auto_rotate: bool? + attr_accessor blocked: bool? attr_accessor budget_duration: String? attr_accessor budget_reset_at: Time? - attr_reader config: top? + attr_reader config: ::Hash[Symbol, top]? - def config=: (top) -> top + def config=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] attr_accessor created_at: Time? @@ -62,33 +75,47 @@ module Hanzoai attr_accessor key_name: String? - attr_accessor llm_budget_table: top? + attr_accessor key_rotation_at: Time? + + attr_accessor last_rotation_at: Time? + + attr_accessor litellm_budget_table: ::Hash[Symbol, top]? attr_accessor max_budget: Float? attr_accessor max_parallel_requests: Integer? - attr_reader metadata: top? + attr_reader metadata: ::Hash[Symbol, top]? - def metadata=: (top) -> top + def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - attr_reader model_max_budget: top? + attr_reader model_max_budget: ::Hash[Symbol, top]? - def model_max_budget=: (top) -> top + def model_max_budget=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - attr_reader model_spend: top? + attr_reader model_spend: ::Hash[Symbol, top]? - def model_spend=: (top) -> top + def model_spend=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] attr_reader models: ::Array[top]? def models=: (::Array[top]) -> ::Array[top] + attr_accessor object_permission: Hanzoai::Models::KeyBlockResponse::ObjectPermission? + + attr_accessor object_permission_id: String? + attr_accessor org_id: String? - attr_reader permissions: top? + attr_reader permissions: ::Hash[Symbol, top]? - def permissions=: (top) -> top + def permissions=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_accessor rotation_count: Integer? + + attr_accessor rotation_interval: String? + + attr_accessor router_settings: ::Hash[Symbol, top]? attr_accessor rpm_limit: Integer? @@ -112,26 +139,35 @@ module Hanzoai def initialize: ( ?token: String?, - ?aliases: top, + ?aliases: ::Hash[Symbol, top], ?allowed_cache_controls: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_reset_at: Time?, - ?config: top, + ?config: ::Hash[Symbol, top], ?created_at: Time?, ?created_by: String?, ?expires: Hanzoai::Models::KeyBlockResponse::expires?, ?key_alias: String?, ?key_name: String?, - ?llm_budget_table: top?, + ?key_rotation_at: Time?, + ?last_rotation_at: Time?, + ?litellm_budget_table: ::Hash[Symbol, top]?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top, - ?model_max_budget: top, - ?model_spend: top, + ?metadata: ::Hash[Symbol, top], + ?model_max_budget: ::Hash[Symbol, top], + ?model_spend: ::Hash[Symbol, top], ?models: ::Array[top], + ?object_permission: Hanzoai::Models::KeyBlockResponse::ObjectPermission?, + ?object_permission_id: String?, ?org_id: String?, - ?permissions: top, + ?permissions: ::Hash[Symbol, top], + ?rotation_count: Integer?, + ?rotation_interval: String?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, ?soft_budget_cooldown: bool, ?spend: Float, @@ -144,26 +180,35 @@ module Hanzoai def to_hash: -> { token: String?, - aliases: top, + aliases: ::Hash[Symbol, top], allowed_cache_controls: ::Array[top]?, + allowed_routes: ::Array[top]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_reset_at: Time?, - config: top, + config: ::Hash[Symbol, top], created_at: Time?, created_by: String?, expires: Hanzoai::Models::KeyBlockResponse::expires?, key_alias: String?, key_name: String?, - llm_budget_table: top?, + key_rotation_at: Time?, + last_rotation_at: Time?, + litellm_budget_table: ::Hash[Symbol, top]?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top, - model_max_budget: top, - model_spend: top, + metadata: ::Hash[Symbol, top], + model_max_budget: ::Hash[Symbol, top], + model_spend: ::Hash[Symbol, top], models: ::Array[top], + object_permission: Hanzoai::Models::KeyBlockResponse::ObjectPermission?, + object_permission_id: String?, org_id: String?, - permissions: top, + permissions: ::Hash[Symbol, top], + rotation_count: Integer?, + rotation_interval: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, soft_budget_cooldown: bool, spend: Float, @@ -181,6 +226,53 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::KeyBlockResponse::expires] end + + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end end end end diff --git a/sig/hanzoai/models/key_delete_params.rbs b/sig/hanzoai/models/key_delete_params.rbs index 4dddf590..acc30d07 100644 --- a/sig/hanzoai/models/key_delete_params.rbs +++ b/sig/hanzoai/models/key_delete_params.rbs @@ -4,7 +4,7 @@ module Hanzoai { key_aliases: ::Array[String]?, keys: ::Array[String]?, - llm_changed_by: String + litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters @@ -16,21 +16,21 @@ module Hanzoai attr_accessor keys: ::Array[String]? - attr_reader llm_changed_by: String? + attr_reader litellm_changed_by: String? - def llm_changed_by=: (String) -> String + def litellm_changed_by=: (String) -> String def initialize: ( ?key_aliases: ::Array[String]?, ?keys: ::Array[String]?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { key_aliases: ::Array[String]?, keys: ::Array[String]?, - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/key_generate_params.rbs b/sig/hanzoai/models/key_generate_params.rbs index 41d9b635..13f514b1 100644 --- a/sig/hanzoai/models/key_generate_params.rbs +++ b/sig/hanzoai/models/key_generate_params.rbs @@ -2,34 +2,46 @@ module Hanzoai module Models type key_generate_params = { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, enforced_params: ::Array[String]?, guardrails: ::Array[String]?, key: String?, key_alias: String?, + key_type: Hanzoai::Models::KeyGenerateParams::key_type?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::KeyGenerateParams::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + rotation_interval: String?, + router_settings: Hanzoai::KeyGenerateParams::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::KeyGenerateParams::rpm_limit_type?, send_invite_email: bool?, soft_budget: Float?, spend: Float?, tags: ::Array[String]?, team_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::KeyGenerateParams::tpm_limit_type?, user_id: String?, - llm_changed_by: String + litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters @@ -37,17 +49,25 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor aliases: top? + attr_accessor aliases: ::Hash[Symbol, top]? attr_accessor allowed_cache_controls: ::Array[top]? + attr_accessor allowed_passthrough_routes: ::Array[top]? + + attr_accessor allowed_routes: ::Array[top]? + + attr_accessor allowed_vector_store_indexes: ::Array[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex]? + + attr_accessor auto_rotate: bool? + attr_accessor blocked: bool? attr_accessor budget_duration: String? attr_accessor budget_id: String? - attr_accessor config: top? + attr_accessor config: ::Hash[Symbol, top]? attr_accessor duration: String? @@ -59,24 +79,38 @@ module Hanzoai attr_accessor key_alias: String? + attr_accessor key_type: Hanzoai::Models::KeyGenerateParams::key_type? + attr_accessor max_budget: Float? attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_rpm_limit: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, top]? - attr_accessor model_tpm_limit: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, top]? attr_accessor models: ::Array[top]? - attr_accessor permissions: top? + attr_accessor object_permission: Hanzoai::KeyGenerateParams::ObjectPermission? + + attr_accessor organization_id: String? + + attr_accessor permissions: ::Hash[Symbol, top]? + + attr_accessor prompts: ::Array[String]? + + attr_accessor rotation_interval: String? + + attr_accessor router_settings: Hanzoai::KeyGenerateParams::RouterSettings? attr_accessor rpm_limit: Integer? + attr_accessor rpm_limit_type: Hanzoai::Models::KeyGenerateParams::rpm_limit_type? + attr_accessor send_invite_email: bool? attr_accessor soft_budget: Float? @@ -89,75 +123,297 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor tpm_limit_type: Hanzoai::Models::KeyGenerateParams::tpm_limit_type? + attr_accessor user_id: String? - attr_reader llm_changed_by: String? + attr_reader litellm_changed_by: String? - def llm_changed_by=: (String) -> String + def litellm_changed_by=: (String) -> String def initialize: ( - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex]?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?enforced_params: ::Array[String]?, ?guardrails: ::Array[String]?, ?key: String?, ?key_alias: String?, + ?key_type: Hanzoai::Models::KeyGenerateParams::key_type?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::KeyGenerateParams::ObjectPermission?, + ?organization_id: String?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?rotation_interval: String?, + ?router_settings: Hanzoai::KeyGenerateParams::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::KeyGenerateParams::rpm_limit_type?, ?send_invite_email: bool?, ?soft_budget: Float?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::KeyGenerateParams::tpm_limit_type?, ?user_id: String?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, enforced_params: ::Array[String]?, guardrails: ::Array[String]?, key: String?, key_alias: String?, + key_type: Hanzoai::Models::KeyGenerateParams::key_type?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::KeyGenerateParams::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + rotation_interval: String?, + router_settings: Hanzoai::KeyGenerateParams::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::KeyGenerateParams::rpm_limit_type?, send_invite_email: bool?, soft_budget: Float?, spend: Float?, tags: ::Array[String]?, team_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::KeyGenerateParams::tpm_limit_type?, user_id: String?, - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } + + type allowed_vector_store_index = + { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::KeyGenerateParams::AllowedVectorStoreIndex::index_permission] + } + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + attr_accessor index_name: String + + attr_accessor index_permissions: ::Array[Hanzoai::Models::KeyGenerateParams::AllowedVectorStoreIndex::index_permission] + + def initialize: ( + index_name: String, + index_permissions: ::Array[Hanzoai::Models::KeyGenerateParams::AllowedVectorStoreIndex::index_permission] + ) -> void + + def to_hash: -> { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::KeyGenerateParams::AllowedVectorStoreIndex::index_permission] + } + + type index_permission = :read | :write + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ: :read + WRITE: :write + + def self?.values: -> ::Array[Hanzoai::Models::KeyGenerateParams::AllowedVectorStoreIndex::index_permission] + end + end + + type key_type = :llm_api | :management | :read_only | :default + + module KeyType + extend Hanzoai::Internal::Type::Enum + + LLM_API: :llm_api + MANAGEMENT: :management + READ_ONLY: :read_only + DEFAULT: :default + + def self?.values: -> ::Array[Hanzoai::Models::KeyGenerateParams::key_type] + end + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type router_settings = + { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyGenerateParams::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + attr_accessor allowed_fails: Integer? + + attr_accessor context_window_fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor cooldown_time: Float? + + attr_accessor fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor max_retries: Integer? + + attr_accessor model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyGenerateParams::RouterSettings::model_group_alias]? + + attr_accessor model_group_retry_policy: ::Hash[Symbol, top]? + + attr_accessor num_retries: Integer? + + attr_accessor retry_after: Float? + + attr_accessor routing_strategy: String? + + attr_accessor routing_strategy_args: ::Hash[Symbol, top]? + + attr_accessor timeout: Float? + + def initialize: ( + ?allowed_fails: Integer?, + ?context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + ?cooldown_time: Float?, + ?fallbacks: ::Array[::Hash[Symbol, top]]?, + ?max_retries: Integer?, + ?model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyGenerateParams::RouterSettings::model_group_alias]?, + ?model_group_retry_policy: ::Hash[Symbol, top]?, + ?num_retries: Integer?, + ?retry_after: Float?, + ?routing_strategy: String?, + ?routing_strategy_args: ::Hash[Symbol, top]?, + ?timeout: Float? + ) -> void + + def to_hash: -> { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyGenerateParams::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + type model_group_alias = String | ::Hash[Symbol, top] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::KeyGenerateParams::RouterSettings::model_group_alias] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + end + + type rpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::KeyGenerateParams::rpm_limit_type] + end + + type tpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::KeyGenerateParams::tpm_limit_type] + end end end end diff --git a/sig/hanzoai/models/key_list_params.rbs b/sig/hanzoai/models/key_list_params.rbs index e459540b..1f90eadc 100644 --- a/sig/hanzoai/models/key_list_params.rbs +++ b/sig/hanzoai/models/key_list_params.rbs @@ -2,12 +2,18 @@ module Hanzoai module Models type key_list_params = { + expand: ::Array[String]?, + include_created_by_keys: bool, include_team_keys: bool, key_alias: String?, + key_hash: String?, organization_id: String?, page: Integer, return_full_object: bool, size: Integer, + sort_by: String?, + sort_order: String, + status: String?, team_id: String?, user_id: String? } @@ -17,12 +23,20 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + attr_accessor expand: ::Array[String]? + + attr_reader include_created_by_keys: bool? + + def include_created_by_keys=: (bool) -> bool + attr_reader include_team_keys: bool? def include_team_keys=: (bool) -> bool attr_accessor key_alias: String? + attr_accessor key_hash: String? + attr_accessor organization_id: String? attr_reader page: Integer? @@ -37,29 +51,49 @@ module Hanzoai def size=: (Integer) -> Integer + attr_accessor sort_by: String? + + attr_reader sort_order: String? + + def sort_order=: (String) -> String + + attr_accessor status: String? + attr_accessor team_id: String? attr_accessor user_id: String? def initialize: ( + ?expand: ::Array[String]?, + ?include_created_by_keys: bool, ?include_team_keys: bool, ?key_alias: String?, + ?key_hash: String?, ?organization_id: String?, ?page: Integer, ?return_full_object: bool, ?size: Integer, + ?sort_by: String?, + ?sort_order: String, + ?status: String?, ?team_id: String?, ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { + expand: ::Array[String]?, + include_created_by_keys: bool, include_team_keys: bool, key_alias: String?, + key_hash: String?, organization_id: String?, page: Integer, return_full_object: bool, size: Integer, + sort_by: String?, + sort_order: String, + status: String?, team_id: String?, user_id: String?, request_options: Hanzoai::RequestOptions diff --git a/sig/hanzoai/models/key_list_response.rbs b/sig/hanzoai/models/key_list_response.rbs index 9c12ed27..8b6124d4 100644 --- a/sig/hanzoai/models/key_list_response.rbs +++ b/sig/hanzoai/models/key_list_response.rbs @@ -35,7 +35,10 @@ module Hanzoai total_pages: Integer? } - type key = String | Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth + type key = + String + | Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth + | Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken module Key extend Hanzoai::Internal::Type::Union @@ -43,14 +46,16 @@ module Hanzoai type user_api_key_auth = { token: String?, - aliases: top, + aliases: ::Hash[Symbol, top], allowed_cache_controls: ::Array[top]?, allowed_model_region: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::allowed_model_region?, + allowed_routes: ::Array[top]?, api_key: String?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_reset_at: Time?, - config: top, + config: ::Hash[Symbol, top], created_at: Time?, created_by: String?, end_user_id: String?, @@ -60,17 +65,29 @@ module Hanzoai expires: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::expires?, key_alias: String?, key_name: String?, + key_rotation_at: Time?, last_refreshed_at: Float?, - llm_budget_table: top?, + last_rotation_at: Time?, + litellm_budget_table: ::Hash[Symbol, top]?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top, - model_max_budget: top, - model_spend: top, + metadata: ::Hash[Symbol, top], + model_max_budget: ::Hash[Symbol, top], + model_spend: ::Hash[Symbol, top], models: ::Array[top], + object_permission: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission?, + object_permission_id: String?, org_id: String?, + organization_max_budget: Float?, + organization_metadata: ::Hash[Symbol, top]?, + organization_rpm_limit: Integer?, + organization_tpm_limit: Integer?, parent_otel_span: top, - permissions: top, + permissions: ::Hash[Symbol, top], + request_route: String?, + rotation_count: Integer?, + rotation_interval: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, rpm_limit_per_model: ::Hash[Symbol, Integer]?, soft_budget: Float?, @@ -81,10 +98,13 @@ module Hanzoai team_id: String?, team_max_budget: Float?, team_member: Hanzoai::Member?, + team_member_rpm_limit: Integer?, team_member_spend: Float?, - team_metadata: top?, - team_model_aliases: top?, + team_member_tpm_limit: Integer?, + team_metadata: ::Hash[Symbol, top]?, + team_model_aliases: ::Hash[Symbol, top]?, team_models: ::Array[top], + team_object_permission_id: String?, team_rpm_limit: Integer?, team_spend: Float?, team_tpm_limit: Integer?, @@ -92,35 +112,42 @@ module Hanzoai tpm_limit_per_model: ::Hash[Symbol, Integer]?, updated_at: Time?, updated_by: String?, + user: top, user_email: String?, user_id: String?, - user_role: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::user_role?, + user_max_budget: Float?, + user_role: Hanzoai::Models::user_roles?, user_rpm_limit: Integer?, + user_spend: Float?, user_tpm_limit: Integer? } class UserAPIKeyAuth < Hanzoai::Internal::Type::BaseModel attr_accessor token: String? - attr_reader aliases: top? + attr_reader aliases: ::Hash[Symbol, top]? - def aliases=: (top) -> top + def aliases=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] attr_accessor allowed_cache_controls: ::Array[top]? attr_accessor allowed_model_region: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::allowed_model_region? + attr_accessor allowed_routes: ::Array[top]? + attr_accessor api_key: String? + attr_accessor auto_rotate: bool? + attr_accessor blocked: bool? attr_accessor budget_duration: String? attr_accessor budget_reset_at: Time? - attr_reader config: top? + attr_reader config: ::Hash[Symbol, top]? - def config=: (top) -> top + def config=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] attr_accessor created_at: Time? @@ -140,39 +167,63 @@ module Hanzoai attr_accessor key_name: String? + attr_accessor key_rotation_at: Time? + attr_accessor last_refreshed_at: Float? - attr_accessor llm_budget_table: top? + attr_accessor last_rotation_at: Time? + + attr_accessor litellm_budget_table: ::Hash[Symbol, top]? attr_accessor max_budget: Float? attr_accessor max_parallel_requests: Integer? - attr_reader metadata: top? + attr_reader metadata: ::Hash[Symbol, top]? - def metadata=: (top) -> top + def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - attr_reader model_max_budget: top? + attr_reader model_max_budget: ::Hash[Symbol, top]? - def model_max_budget=: (top) -> top + def model_max_budget=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - attr_reader model_spend: top? + attr_reader model_spend: ::Hash[Symbol, top]? - def model_spend=: (top) -> top + def model_spend=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] attr_reader models: ::Array[top]? def models=: (::Array[top]) -> ::Array[top] + attr_accessor object_permission: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission? + + attr_accessor object_permission_id: String? + attr_accessor org_id: String? + attr_accessor organization_max_budget: Float? + + attr_accessor organization_metadata: ::Hash[Symbol, top]? + + attr_accessor organization_rpm_limit: Integer? + + attr_accessor organization_tpm_limit: Integer? + attr_reader parent_otel_span: top? def parent_otel_span=: (top) -> top - attr_reader permissions: top? + attr_reader permissions: ::Hash[Symbol, top]? + + def permissions=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - def permissions=: (top) -> top + attr_accessor request_route: String? + + attr_accessor rotation_count: Integer? + + attr_accessor rotation_interval: String? + + attr_accessor router_settings: ::Hash[Symbol, top]? attr_accessor rpm_limit: Integer? @@ -200,16 +251,22 @@ module Hanzoai attr_accessor team_member: Hanzoai::Member? + attr_accessor team_member_rpm_limit: Integer? + attr_accessor team_member_spend: Float? - attr_accessor team_metadata: top? + attr_accessor team_member_tpm_limit: Integer? + + attr_accessor team_metadata: ::Hash[Symbol, top]? - attr_accessor team_model_aliases: top? + attr_accessor team_model_aliases: ::Hash[Symbol, top]? attr_reader team_models: ::Array[top]? def team_models=: (::Array[top]) -> ::Array[top] + attr_accessor team_object_permission_id: String? + attr_accessor team_rpm_limit: Integer? attr_accessor team_spend: Float? @@ -224,26 +281,36 @@ module Hanzoai attr_accessor updated_by: String? + attr_reader user: top? + + def user=: (top) -> top + attr_accessor user_email: String? attr_accessor user_id: String? - attr_accessor user_role: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::user_role? + attr_accessor user_max_budget: Float? + + attr_accessor user_role: Hanzoai::Models::user_roles? attr_accessor user_rpm_limit: Integer? + attr_accessor user_spend: Float? + attr_accessor user_tpm_limit: Integer? def initialize: ( ?token: String?, - ?aliases: top, + ?aliases: ::Hash[Symbol, top], ?allowed_cache_controls: ::Array[top]?, ?allowed_model_region: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::allowed_model_region?, + ?allowed_routes: ::Array[top]?, ?api_key: String?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_reset_at: Time?, - ?config: top, + ?config: ::Hash[Symbol, top], ?created_at: Time?, ?created_by: String?, ?end_user_id: String?, @@ -253,17 +320,29 @@ module Hanzoai ?expires: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::expires?, ?key_alias: String?, ?key_name: String?, + ?key_rotation_at: Time?, ?last_refreshed_at: Float?, - ?llm_budget_table: top?, + ?last_rotation_at: Time?, + ?litellm_budget_table: ::Hash[Symbol, top]?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top, - ?model_max_budget: top, - ?model_spend: top, + ?metadata: ::Hash[Symbol, top], + ?model_max_budget: ::Hash[Symbol, top], + ?model_spend: ::Hash[Symbol, top], ?models: ::Array[top], + ?object_permission: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission?, + ?object_permission_id: String?, ?org_id: String?, + ?organization_max_budget: Float?, + ?organization_metadata: ::Hash[Symbol, top]?, + ?organization_rpm_limit: Integer?, + ?organization_tpm_limit: Integer?, ?parent_otel_span: top, - ?permissions: top, + ?permissions: ::Hash[Symbol, top], + ?request_route: String?, + ?rotation_count: Integer?, + ?rotation_interval: String?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, ?rpm_limit_per_model: ::Hash[Symbol, Integer]?, ?soft_budget: Float?, @@ -274,10 +353,13 @@ module Hanzoai ?team_id: String?, ?team_max_budget: Float?, ?team_member: Hanzoai::Member?, + ?team_member_rpm_limit: Integer?, ?team_member_spend: Float?, - ?team_metadata: top?, - ?team_model_aliases: top?, + ?team_member_tpm_limit: Integer?, + ?team_metadata: ::Hash[Symbol, top]?, + ?team_model_aliases: ::Hash[Symbol, top]?, ?team_models: ::Array[top], + ?team_object_permission_id: String?, ?team_rpm_limit: Integer?, ?team_spend: Float?, ?team_tpm_limit: Integer?, @@ -285,23 +367,28 @@ module Hanzoai ?tpm_limit_per_model: ::Hash[Symbol, Integer]?, ?updated_at: Time?, ?updated_by: String?, + ?user: top, ?user_email: String?, ?user_id: String?, - ?user_role: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::user_role?, + ?user_max_budget: Float?, + ?user_role: Hanzoai::Models::user_roles?, ?user_rpm_limit: Integer?, + ?user_spend: Float?, ?user_tpm_limit: Integer? ) -> void def to_hash: -> { token: String?, - aliases: top, + aliases: ::Hash[Symbol, top], allowed_cache_controls: ::Array[top]?, allowed_model_region: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::allowed_model_region?, + allowed_routes: ::Array[top]?, api_key: String?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_reset_at: Time?, - config: top, + config: ::Hash[Symbol, top], created_at: Time?, created_by: String?, end_user_id: String?, @@ -311,17 +398,29 @@ module Hanzoai expires: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::expires?, key_alias: String?, key_name: String?, + key_rotation_at: Time?, last_refreshed_at: Float?, - llm_budget_table: top?, + last_rotation_at: Time?, + litellm_budget_table: ::Hash[Symbol, top]?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top, - model_max_budget: top, - model_spend: top, + metadata: ::Hash[Symbol, top], + model_max_budget: ::Hash[Symbol, top], + model_spend: ::Hash[Symbol, top], models: ::Array[top], + object_permission: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::ObjectPermission?, + object_permission_id: String?, org_id: String?, + organization_max_budget: Float?, + organization_metadata: ::Hash[Symbol, top]?, + organization_rpm_limit: Integer?, + organization_tpm_limit: Integer?, parent_otel_span: top, - permissions: top, + permissions: ::Hash[Symbol, top], + request_route: String?, + rotation_count: Integer?, + rotation_interval: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, rpm_limit_per_model: ::Hash[Symbol, Integer]?, soft_budget: Float?, @@ -332,10 +431,13 @@ module Hanzoai team_id: String?, team_max_budget: Float?, team_member: Hanzoai::Member?, + team_member_rpm_limit: Integer?, team_member_spend: Float?, - team_metadata: top?, - team_model_aliases: top?, + team_member_tpm_limit: Integer?, + team_metadata: ::Hash[Symbol, top]?, + team_model_aliases: ::Hash[Symbol, top]?, team_models: ::Array[top], + team_object_permission_id: String?, team_rpm_limit: Integer?, team_spend: Float?, team_tpm_limit: Integer?, @@ -343,10 +445,13 @@ module Hanzoai tpm_limit_per_model: ::Hash[Symbol, Integer]?, updated_at: Time?, updated_by: String?, + user: top, user_email: String?, user_id: String?, - user_role: Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::user_role?, + user_max_budget: Float?, + user_role: Hanzoai::Models::user_roles?, user_rpm_limit: Integer?, + user_spend: Float?, user_tpm_limit: Integer? } @@ -369,27 +474,351 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::expires] end - type user_role = - :proxy_admin - | :proxy_admin_viewer - | :org_admin - | :internal_user - | :internal_user_viewer - | :team - | :customer + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + end - module UserRole - extend Hanzoai::Internal::Type::Enum + type lite_llm_deleted_verification_token = + { + id: String?, + token: String?, + aliases: ::Hash[Symbol, top], + allowed_cache_controls: ::Array[top]?, + allowed_routes: ::Array[top]?, + auto_rotate: bool?, + blocked: bool?, + budget_duration: String?, + budget_reset_at: Time?, + config: ::Hash[Symbol, top], + created_at: Time?, + created_by: String?, + deleted_at: Time?, + deleted_by: String?, + deleted_by_api_key: String?, + expires: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::expires?, + key_alias: String?, + key_name: String?, + key_rotation_at: Time?, + last_rotation_at: Time?, + litellm_budget_table: ::Hash[Symbol, top]?, + litellm_changed_by: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: ::Hash[Symbol, top], + model_max_budget: ::Hash[Symbol, top], + model_spend: ::Hash[Symbol, top], + models: ::Array[top], + object_permission: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission?, + object_permission_id: String?, + org_id: String?, + permissions: ::Hash[Symbol, top], + rotation_count: Integer?, + rotation_interval: String?, + router_settings: ::Hash[Symbol, top]?, + rpm_limit: Integer?, + soft_budget_cooldown: bool, + spend: Float, + team_id: String?, + tpm_limit: Integer?, + updated_at: Time?, + updated_by: String?, + user_id: String? + } + + class LiteLlmDeletedVerificationToken < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String? + + attr_accessor token: String? + + attr_reader aliases: ::Hash[Symbol, top]? + + def aliases=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_accessor allowed_cache_controls: ::Array[top]? + + attr_accessor allowed_routes: ::Array[top]? + + attr_accessor auto_rotate: bool? + + attr_accessor blocked: bool? + + attr_accessor budget_duration: String? + + attr_accessor budget_reset_at: Time? + + attr_reader config: ::Hash[Symbol, top]? + + def config=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_accessor created_at: Time? + + attr_accessor created_by: String? + + attr_accessor deleted_at: Time? + + attr_accessor deleted_by: String? + + attr_accessor deleted_by_api_key: String? + + attr_accessor expires: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::expires? + + attr_accessor key_alias: String? + + attr_accessor key_name: String? + + attr_accessor key_rotation_at: Time? + + attr_accessor last_rotation_at: Time? + + attr_accessor litellm_budget_table: ::Hash[Symbol, top]? + + attr_accessor litellm_changed_by: String? + + attr_accessor max_budget: Float? + + attr_accessor max_parallel_requests: Integer? + + attr_reader metadata: ::Hash[Symbol, top]? + + def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_reader model_max_budget: ::Hash[Symbol, top]? + + def model_max_budget=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - PROXY_ADMIN: :proxy_admin - PROXY_ADMIN_VIEWER: :proxy_admin_viewer - ORG_ADMIN: :org_admin - INTERNAL_USER: :internal_user - INTERNAL_USER_VIEWER: :internal_user_viewer - TEAM: :team - CUSTOMER: :customer + attr_reader model_spend: ::Hash[Symbol, top]? + + def model_spend=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_reader models: ::Array[top]? + + def models=: (::Array[top]) -> ::Array[top] + + attr_accessor object_permission: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission? + + attr_accessor object_permission_id: String? + + attr_accessor org_id: String? + + attr_reader permissions: ::Hash[Symbol, top]? + + def permissions=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + attr_accessor rotation_count: Integer? + + attr_accessor rotation_interval: String? + + attr_accessor router_settings: ::Hash[Symbol, top]? + + attr_accessor rpm_limit: Integer? + + attr_reader soft_budget_cooldown: bool? + + def soft_budget_cooldown=: (bool) -> bool + + attr_reader spend: Float? + + def spend=: (Float) -> Float + + attr_accessor team_id: String? + + attr_accessor tpm_limit: Integer? + + attr_accessor updated_at: Time? + + attr_accessor updated_by: String? + + attr_accessor user_id: String? + + def initialize: ( + ?id: String?, + ?token: String?, + ?aliases: ::Hash[Symbol, top], + ?allowed_cache_controls: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?auto_rotate: bool?, + ?blocked: bool?, + ?budget_duration: String?, + ?budget_reset_at: Time?, + ?config: ::Hash[Symbol, top], + ?created_at: Time?, + ?created_by: String?, + ?deleted_at: Time?, + ?deleted_by: String?, + ?deleted_by_api_key: String?, + ?expires: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::expires?, + ?key_alias: String?, + ?key_name: String?, + ?key_rotation_at: Time?, + ?last_rotation_at: Time?, + ?litellm_budget_table: ::Hash[Symbol, top]?, + ?litellm_changed_by: String?, + ?max_budget: Float?, + ?max_parallel_requests: Integer?, + ?metadata: ::Hash[Symbol, top], + ?model_max_budget: ::Hash[Symbol, top], + ?model_spend: ::Hash[Symbol, top], + ?models: ::Array[top], + ?object_permission: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission?, + ?object_permission_id: String?, + ?org_id: String?, + ?permissions: ::Hash[Symbol, top], + ?rotation_count: Integer?, + ?rotation_interval: String?, + ?router_settings: ::Hash[Symbol, top]?, + ?rpm_limit: Integer?, + ?soft_budget_cooldown: bool, + ?spend: Float, + ?team_id: String?, + ?tpm_limit: Integer?, + ?updated_at: Time?, + ?updated_by: String?, + ?user_id: String? + ) -> void + + def to_hash: -> { + id: String?, + token: String?, + aliases: ::Hash[Symbol, top], + allowed_cache_controls: ::Array[top]?, + allowed_routes: ::Array[top]?, + auto_rotate: bool?, + blocked: bool?, + budget_duration: String?, + budget_reset_at: Time?, + config: ::Hash[Symbol, top], + created_at: Time?, + created_by: String?, + deleted_at: Time?, + deleted_by: String?, + deleted_by_api_key: String?, + expires: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::expires?, + key_alias: String?, + key_name: String?, + key_rotation_at: Time?, + last_rotation_at: Time?, + litellm_budget_table: ::Hash[Symbol, top]?, + litellm_changed_by: String?, + max_budget: Float?, + max_parallel_requests: Integer?, + metadata: ::Hash[Symbol, top], + model_max_budget: ::Hash[Symbol, top], + model_spend: ::Hash[Symbol, top], + models: ::Array[top], + object_permission: Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::ObjectPermission?, + object_permission_id: String?, + org_id: String?, + permissions: ::Hash[Symbol, top], + rotation_count: Integer?, + rotation_interval: String?, + router_settings: ::Hash[Symbol, top]?, + rpm_limit: Integer?, + soft_budget_cooldown: bool, + spend: Float, + team_id: String?, + tpm_limit: Integer?, + updated_at: Time?, + updated_by: String?, + user_id: String? + } + + type expires = String | Time + + module Expires + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::KeyListResponse::Key::LiteLlmDeletedVerificationToken::expires] + end - def self?.values: -> ::Array[Hanzoai::Models::KeyListResponse::Key::UserAPIKeyAuth::user_role] + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } end end diff --git a/sig/hanzoai/models/key_regenerate_by_key_params.rbs b/sig/hanzoai/models/key_regenerate_by_key_params.rbs index 8e95ddeb..49b685e0 100644 --- a/sig/hanzoai/models/key_regenerate_by_key_params.rbs +++ b/sig/hanzoai/models/key_regenerate_by_key_params.rbs @@ -1,23 +1,24 @@ module Hanzoai module Models type key_regenerate_by_key_params = - { llm_changed_by: String } & Hanzoai::Internal::Type::request_parameters + { litellm_changed_by: String } + & Hanzoai::Internal::Type::request_parameters class KeyRegenerateByKeyParams < Hanzoai::Models::Key::RegenerateKeyRequest extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def llm_changed_by: -> String? + def litellm_changed_by: -> String? - def llm_changed_by=: (String _) -> String + def litellm_changed_by=: (String _) -> String def initialize: ( - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/key_unblock_params.rbs b/sig/hanzoai/models/key_unblock_params.rbs index 944d368b..ec11b14c 100644 --- a/sig/hanzoai/models/key_unblock_params.rbs +++ b/sig/hanzoai/models/key_unblock_params.rbs @@ -1,23 +1,24 @@ module Hanzoai module Models type key_unblock_params = - { llm_changed_by: String } & Hanzoai::Internal::Type::request_parameters + { litellm_changed_by: String } + & Hanzoai::Internal::Type::request_parameters class KeyUnblockParams < Hanzoai::Models::BlockKeyRequest extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def llm_changed_by: -> String? + def litellm_changed_by: -> String? - def llm_changed_by=: (String _) -> String + def litellm_changed_by=: (String _) -> String def initialize: ( - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/key_update_params.rbs b/sig/hanzoai/models/key_update_params.rbs index 44b4e568..b823f932 100644 --- a/sig/hanzoai/models/key_update_params.rbs +++ b/sig/hanzoai/models/key_update_params.rbs @@ -3,33 +3,43 @@ module Hanzoai type key_update_params = { key: String, - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, enforced_params: ::Array[String]?, guardrails: ::Array[String]?, key_alias: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::KeyUpdateParams::ObjectPermission?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + rotation_interval: String?, + router_settings: Hanzoai::KeyUpdateParams::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::KeyUpdateParams::rpm_limit_type?, spend: Float?, tags: ::Array[String]?, team_id: String?, temp_budget_expiry: Time?, temp_budget_increase: Float?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::KeyUpdateParams::tpm_limit_type?, user_id: String?, - llm_changed_by: String + litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters @@ -39,17 +49,25 @@ module Hanzoai attr_accessor key: String - attr_accessor aliases: top? + attr_accessor aliases: ::Hash[Symbol, top]? attr_accessor allowed_cache_controls: ::Array[top]? + attr_accessor allowed_passthrough_routes: ::Array[top]? + + attr_accessor allowed_routes: ::Array[top]? + + attr_accessor allowed_vector_store_indexes: ::Array[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex]? + + attr_accessor auto_rotate: bool? + attr_accessor blocked: bool? attr_accessor budget_duration: String? attr_accessor budget_id: String? - attr_accessor config: top? + attr_accessor config: ::Hash[Symbol, top]? attr_accessor duration: String? @@ -63,20 +81,30 @@ module Hanzoai attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_rpm_limit: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, top]? - attr_accessor model_tpm_limit: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, top]? attr_accessor models: ::Array[top]? - attr_accessor permissions: top? + attr_accessor object_permission: Hanzoai::KeyUpdateParams::ObjectPermission? + + attr_accessor permissions: ::Hash[Symbol, top]? + + attr_accessor prompts: ::Array[String]? + + attr_accessor rotation_interval: String? + + attr_accessor router_settings: Hanzoai::KeyUpdateParams::RouterSettings? attr_accessor rpm_limit: Integer? + attr_accessor rpm_limit_type: Hanzoai::Models::KeyUpdateParams::rpm_limit_type? + attr_accessor spend: Float? attr_accessor tags: ::Array[String]? @@ -89,75 +117,280 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor tpm_limit_type: Hanzoai::Models::KeyUpdateParams::tpm_limit_type? + attr_accessor user_id: String? - attr_reader llm_changed_by: String? + attr_reader litellm_changed_by: String? - def llm_changed_by=: (String) -> String + def litellm_changed_by=: (String) -> String def initialize: ( key: String, - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex]?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?enforced_params: ::Array[String]?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::KeyUpdateParams::ObjectPermission?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?rotation_interval: String?, + ?router_settings: Hanzoai::KeyUpdateParams::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::KeyUpdateParams::rpm_limit_type?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?temp_budget_expiry: Time?, ?temp_budget_increase: Float?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::KeyUpdateParams::tpm_limit_type?, ?user_id: String?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { key: String, - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex]?, + auto_rotate: bool?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, enforced_params: ::Array[String]?, guardrails: ::Array[String]?, key_alias: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::KeyUpdateParams::ObjectPermission?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + rotation_interval: String?, + router_settings: Hanzoai::KeyUpdateParams::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::KeyUpdateParams::rpm_limit_type?, spend: Float?, tags: ::Array[String]?, team_id: String?, temp_budget_expiry: Time?, temp_budget_increase: Float?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::KeyUpdateParams::tpm_limit_type?, user_id: String?, - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } + + type allowed_vector_store_index = + { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::KeyUpdateParams::AllowedVectorStoreIndex::index_permission] + } + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + attr_accessor index_name: String + + attr_accessor index_permissions: ::Array[Hanzoai::Models::KeyUpdateParams::AllowedVectorStoreIndex::index_permission] + + def initialize: ( + index_name: String, + index_permissions: ::Array[Hanzoai::Models::KeyUpdateParams::AllowedVectorStoreIndex::index_permission] + ) -> void + + def to_hash: -> { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::KeyUpdateParams::AllowedVectorStoreIndex::index_permission] + } + + type index_permission = :read | :write + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ: :read + WRITE: :write + + def self?.values: -> ::Array[Hanzoai::Models::KeyUpdateParams::AllowedVectorStoreIndex::index_permission] + end + end + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type router_settings = + { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyUpdateParams::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + attr_accessor allowed_fails: Integer? + + attr_accessor context_window_fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor cooldown_time: Float? + + attr_accessor fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor max_retries: Integer? + + attr_accessor model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyUpdateParams::RouterSettings::model_group_alias]? + + attr_accessor model_group_retry_policy: ::Hash[Symbol, top]? + + attr_accessor num_retries: Integer? + + attr_accessor retry_after: Float? + + attr_accessor routing_strategy: String? + + attr_accessor routing_strategy_args: ::Hash[Symbol, top]? + + attr_accessor timeout: Float? + + def initialize: ( + ?allowed_fails: Integer?, + ?context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + ?cooldown_time: Float?, + ?fallbacks: ::Array[::Hash[Symbol, top]]?, + ?max_retries: Integer?, + ?model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyUpdateParams::RouterSettings::model_group_alias]?, + ?model_group_retry_policy: ::Hash[Symbol, top]?, + ?num_retries: Integer?, + ?retry_after: Float?, + ?routing_strategy: String?, + ?routing_strategy_args: ::Hash[Symbol, top]?, + ?timeout: Float? + ) -> void + + def to_hash: -> { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::KeyUpdateParams::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + type model_group_alias = String | ::Hash[Symbol, top] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::KeyUpdateParams::RouterSettings::model_group_alias] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + end + + type rpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::KeyUpdateParams::rpm_limit_type] + end + + type tpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::KeyUpdateParams::tpm_limit_type] + end end end end diff --git a/sig/hanzoai/models/lite_llm_end_user_table.rbs b/sig/hanzoai/models/lite_llm_end_user_table.rbs new file mode 100644 index 00000000..9ae47351 --- /dev/null +++ b/sig/hanzoai/models/lite_llm_end_user_table.rbs @@ -0,0 +1,63 @@ +module Hanzoai + module Models + type lite_llm_end_user_table = + { + blocked: bool, + user_id: String, + alias_: String?, + allowed_model_region: Hanzoai::Models::LiteLlmEndUserTable::allowed_model_region?, + default_model: String?, + litellm_budget_table: Hanzoai::BudgetTable?, + spend: Float + } + + class LiteLlmEndUserTable < Hanzoai::Internal::Type::BaseModel + attr_accessor blocked: bool + + attr_accessor user_id: String + + attr_accessor alias_: String? + + attr_accessor allowed_model_region: Hanzoai::Models::LiteLlmEndUserTable::allowed_model_region? + + attr_accessor default_model: String? + + attr_accessor litellm_budget_table: Hanzoai::BudgetTable? + + attr_reader spend: Float? + + def spend=: (Float) -> Float + + def initialize: ( + blocked: bool, + user_id: String, + ?alias_: String?, + ?allowed_model_region: Hanzoai::Models::LiteLlmEndUserTable::allowed_model_region?, + ?default_model: String?, + ?litellm_budget_table: Hanzoai::BudgetTable?, + ?spend: Float + ) -> void + + def to_hash: -> { + blocked: bool, + user_id: String, + alias_: String?, + allowed_model_region: Hanzoai::Models::LiteLlmEndUserTable::allowed_model_region?, + default_model: String?, + litellm_budget_table: Hanzoai::BudgetTable?, + spend: Float + } + + type allowed_model_region = :eu | :us + + module AllowedModelRegion + extend Hanzoai::Internal::Type::Enum + + EU: :eu + US: :us + + def self?.values: -> ::Array[Hanzoai::Models::LiteLlmEndUserTable::allowed_model_region] + end + end + end +end diff --git a/sig/hanzoai/models/model/info_list_params.rbs b/sig/hanzoai/models/model/info_list_params.rbs index bcbb618c..b9db9eca 100644 --- a/sig/hanzoai/models/model/info_list_params.rbs +++ b/sig/hanzoai/models/model/info_list_params.rbs @@ -2,21 +2,22 @@ module Hanzoai module Models module Model type info_list_params = - { llm_model_id: String? } & Hanzoai::Internal::Type::request_parameters + { litellm_model_id: String? } + & Hanzoai::Internal::Type::request_parameters class InfoListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor llm_model_id: String? + attr_accessor litellm_model_id: String? def initialize: ( - ?llm_model_id: String?, + ?litellm_model_id: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - llm_model_id: String?, + litellm_model_id: String?, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/model/update_deployment.rbs b/sig/hanzoai/models/model/update_deployment.rbs index 29800616..5740d12e 100644 --- a/sig/hanzoai/models/model/update_deployment.rbs +++ b/sig/hanzoai/models/model/update_deployment.rbs @@ -3,89 +3,219 @@ module Hanzoai module Model type update_deployment = { - llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + litellm_params: Hanzoai::Model::UpdateDeployment::LitellmParams?, model_info: Hanzoai::ModelInfo?, model_name: String? } class UpdateDeployment < Hanzoai::Internal::Type::BaseModel - attr_accessor llm_params: Hanzoai::Model::UpdateDeployment::LlmParams? + attr_accessor litellm_params: Hanzoai::Model::UpdateDeployment::LitellmParams? attr_accessor model_info: Hanzoai::ModelInfo? attr_accessor model_name: String? def initialize: ( - ?llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + ?litellm_params: Hanzoai::Model::UpdateDeployment::LitellmParams?, ?model_info: Hanzoai::ModelInfo?, ?model_name: String? ) -> void def to_hash: -> { - llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + litellm_params: Hanzoai::Model::UpdateDeployment::LitellmParams?, model_info: Hanzoai::ModelInfo?, model_name: String? } - type llm_params = + type litellm_params = { api_base: String?, api_key: String?, api_version: String?, + auto_router_config: String?, + auto_router_config_path: String?, + auto_router_default_model: String?, + auto_router_embedding_model: String?, aws_access_key_id: String?, + aws_bedrock_runtime_endpoint: String?, aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + cache_creation_input_audio_token_cost: Float?, + cache_creation_input_token_cost: Float?, + :cache_creation_input_token_cost_above_1hr => Float?, + :cache_creation_input_token_cost_above_200k_tokens => Float?, + cache_read_input_audio_token_cost: Float?, + cache_read_input_token_cost: Float?, + :cache_read_input_token_cost_above_200k_tokens => Float?, + cache_read_input_token_cost_flex: Float?, + cache_read_input_token_cost_priority: Float?, + citation_cost_per_token: Float?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, + gcs_bucket_name: String?, + input_cost_per_audio_per_second: Float?, + :input_cost_per_audio_per_second_above_128k_tokens => Float?, + input_cost_per_audio_token: Float?, + input_cost_per_character: Float?, + :input_cost_per_character_above_128k_tokens => Float?, + input_cost_per_image: Float?, + :input_cost_per_image_above_128k_tokens => Float?, + input_cost_per_pixel: Float?, + input_cost_per_query: Float?, input_cost_per_second: Float?, input_cost_per_token: Float?, - llm_trace_id: String?, + :input_cost_per_token_above_128k_tokens => Float?, + :input_cost_per_token_above_200k_tokens => Float?, + input_cost_per_token_batches: Float?, + input_cost_per_token_cache_hit: Float?, + input_cost_per_token_flex: Float?, + input_cost_per_token_priority: Float?, + input_cost_per_video_per_second: Float?, + :input_cost_per_video_per_second_above_128k_tokens => Float?, + :input_cost_per_video_per_second_above_15s_interval => Float?, + :input_cost_per_video_per_second_above_8s_interval => Float?, + litellm_credential_name: String?, + litellm_trace_id: String?, max_budget: Float?, max_file_size_mb: Float?, max_retries: Integer?, merge_reasoning_content_in_choices: bool?, + milvus_text_field: String?, + mock_response: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::mock_response?, model: String?, - model_info: top?, + model_info: ::Hash[Symbol, top]?, organization: String?, + output_cost_per_audio_per_second: Float?, + output_cost_per_audio_token: Float?, + output_cost_per_character: Float?, + :output_cost_per_character_above_128k_tokens => Float?, + output_cost_per_image: Float?, + output_cost_per_image_token: Float?, + output_cost_per_pixel: Float?, + output_cost_per_reasoning_token: Float?, output_cost_per_second: Float?, output_cost_per_token: Float?, + :output_cost_per_token_above_128k_tokens => Float?, + :output_cost_per_token_above_200k_tokens => Float?, + output_cost_per_token_batches: Float?, + output_cost_per_token_flex: Float?, + output_cost_per_token_priority: Float?, + output_cost_per_video_per_second: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, - timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, + :s3_bucket_name => String?, + :s3_encryption_key_id => String?, + search_context_cost_per_query: ::Hash[Symbol, top]?, + stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::stream_timeout?, + tiered_pricing: ::Array[::Hash[Symbol, top]]?, + timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, + use_litellm_proxy: bool?, + vector_store_id: String?, + vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? } - class LlmParams < Hanzoai::Internal::Type::BaseModel + class LitellmParams < Hanzoai::Internal::Type::BaseModel attr_accessor api_base: String? attr_accessor api_key: String? attr_accessor api_version: String? + attr_accessor auto_router_config: String? + + attr_accessor auto_router_config_path: String? + + attr_accessor auto_router_default_model: String? + + attr_accessor auto_router_embedding_model: String? + attr_accessor aws_access_key_id: String? + attr_accessor aws_bedrock_runtime_endpoint: String? + attr_accessor aws_region_name: String? attr_accessor aws_secret_access_key: String? attr_accessor budget_duration: String? - attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]? + attr_accessor cache_creation_input_audio_token_cost: Float? + + attr_accessor cache_creation_input_token_cost: Float? + + attr_accessor cache_creation_input_token_cost_above_1hr: Float? + + attr_accessor cache_creation_input_token_cost_above_200k_tokens: Float? + + attr_accessor cache_read_input_audio_token_cost: Float? + + attr_accessor cache_read_input_token_cost: Float? + + attr_accessor cache_read_input_token_cost_above_200k_tokens: Float? + + attr_accessor cache_read_input_token_cost_flex: Float? + + attr_accessor cache_read_input_token_cost_priority: Float? + + attr_accessor citation_cost_per_token: Float? + + attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::configurable_clientside_auth_param]? attr_accessor custom_llm_provider: String? + attr_accessor gcs_bucket_name: String? + + attr_accessor input_cost_per_audio_per_second: Float? + + attr_accessor input_cost_per_audio_per_second_above_128k_tokens: Float? + + attr_accessor input_cost_per_audio_token: Float? + + attr_accessor input_cost_per_character: Float? + + attr_accessor input_cost_per_character_above_128k_tokens: Float? + + attr_accessor input_cost_per_image: Float? + + attr_accessor input_cost_per_image_above_128k_tokens: Float? + + attr_accessor input_cost_per_pixel: Float? + + attr_accessor input_cost_per_query: Float? + attr_accessor input_cost_per_second: Float? attr_accessor input_cost_per_token: Float? - attr_accessor llm_trace_id: String? + attr_accessor input_cost_per_token_above_128k_tokens: Float? + + attr_accessor input_cost_per_token_above_200k_tokens: Float? + + attr_accessor input_cost_per_token_batches: Float? + + attr_accessor input_cost_per_token_cache_hit: Float? + + attr_accessor input_cost_per_token_flex: Float? + + attr_accessor input_cost_per_token_priority: Float? + + attr_accessor input_cost_per_video_per_second: Float? + + attr_accessor input_cost_per_video_per_second_above_128k_tokens: Float? + + attr_accessor input_cost_per_video_per_second_above_15s_interval: Float? + + attr_accessor input_cost_per_video_per_second_above_8s_interval: Float? + + attr_accessor litellm_credential_name: String? + + attr_accessor litellm_trace_id: String? attr_accessor max_budget: Float? @@ -95,29 +225,73 @@ module Hanzoai attr_accessor merge_reasoning_content_in_choices: bool? + attr_accessor milvus_text_field: String? + + attr_accessor mock_response: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::mock_response? + attr_accessor model: String? - attr_accessor model_info: top? + attr_accessor model_info: ::Hash[Symbol, top]? attr_accessor organization: String? + attr_accessor output_cost_per_audio_per_second: Float? + + attr_accessor output_cost_per_audio_token: Float? + + attr_accessor output_cost_per_character: Float? + + attr_accessor output_cost_per_character_above_128k_tokens: Float? + + attr_accessor output_cost_per_image: Float? + + attr_accessor output_cost_per_image_token: Float? + + attr_accessor output_cost_per_pixel: Float? + + attr_accessor output_cost_per_reasoning_token: Float? + attr_accessor output_cost_per_second: Float? attr_accessor output_cost_per_token: Float? + attr_accessor output_cost_per_token_above_128k_tokens: Float? + + attr_accessor output_cost_per_token_above_200k_tokens: Float? + + attr_accessor output_cost_per_token_batches: Float? + + attr_accessor output_cost_per_token_flex: Float? + + attr_accessor output_cost_per_token_priority: Float? + + attr_accessor output_cost_per_video_per_second: Float? + attr_accessor region_name: String? attr_accessor rpm: Integer? - attr_accessor stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout? + attr_accessor s3_bucket_name: String? - attr_accessor timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout? + attr_accessor s3_encryption_key_id: String? + + attr_accessor search_context_cost_per_query: ::Hash[Symbol, top]? + + attr_accessor stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::stream_timeout? + + attr_accessor tiered_pricing: ::Array[::Hash[Symbol, top]]? + + attr_accessor timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::timeout? attr_accessor tpm: Integer? attr_accessor use_in_pass_through: bool? - attr_accessor vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials? + attr_accessor use_litellm_proxy: bool? + + attr_accessor vector_store_id: String? + + attr_accessor vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::vertex_credentials? attr_accessor vertex_location: String? @@ -129,31 +303,89 @@ module Hanzoai ?api_base: String?, ?api_key: String?, ?api_version: String?, + ?auto_router_config: String?, + ?auto_router_config_path: String?, + ?auto_router_default_model: String?, + ?auto_router_embedding_model: String?, ?aws_access_key_id: String?, + ?aws_bedrock_runtime_endpoint: String?, ?aws_region_name: String?, ?aws_secret_access_key: String?, ?budget_duration: String?, - ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + ?cache_creation_input_audio_token_cost: Float?, + ?cache_creation_input_token_cost: Float?, + ?cache_creation_input_token_cost_above_1hr: Float?, + ?cache_creation_input_token_cost_above_200k_tokens: Float?, + ?cache_read_input_audio_token_cost: Float?, + ?cache_read_input_token_cost: Float?, + ?cache_read_input_token_cost_above_200k_tokens: Float?, + ?cache_read_input_token_cost_flex: Float?, + ?cache_read_input_token_cost_priority: Float?, + ?citation_cost_per_token: Float?, + ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::configurable_clientside_auth_param]?, ?custom_llm_provider: String?, + ?gcs_bucket_name: String?, + ?input_cost_per_audio_per_second: Float?, + ?input_cost_per_audio_per_second_above_128k_tokens: Float?, + ?input_cost_per_audio_token: Float?, + ?input_cost_per_character: Float?, + ?input_cost_per_character_above_128k_tokens: Float?, + ?input_cost_per_image: Float?, + ?input_cost_per_image_above_128k_tokens: Float?, + ?input_cost_per_pixel: Float?, + ?input_cost_per_query: Float?, ?input_cost_per_second: Float?, ?input_cost_per_token: Float?, - ?llm_trace_id: String?, + ?input_cost_per_token_above_128k_tokens: Float?, + ?input_cost_per_token_above_200k_tokens: Float?, + ?input_cost_per_token_batches: Float?, + ?input_cost_per_token_cache_hit: Float?, + ?input_cost_per_token_flex: Float?, + ?input_cost_per_token_priority: Float?, + ?input_cost_per_video_per_second: Float?, + ?input_cost_per_video_per_second_above_128k_tokens: Float?, + ?input_cost_per_video_per_second_above_15s_interval: Float?, + ?input_cost_per_video_per_second_above_8s_interval: Float?, + ?litellm_credential_name: String?, + ?litellm_trace_id: String?, ?max_budget: Float?, ?max_file_size_mb: Float?, ?max_retries: Integer?, ?merge_reasoning_content_in_choices: bool?, + ?milvus_text_field: String?, + ?mock_response: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::mock_response?, ?model: String?, - ?model_info: top?, + ?model_info: ::Hash[Symbol, top]?, ?organization: String?, + ?output_cost_per_audio_per_second: Float?, + ?output_cost_per_audio_token: Float?, + ?output_cost_per_character: Float?, + ?output_cost_per_character_above_128k_tokens: Float?, + ?output_cost_per_image: Float?, + ?output_cost_per_image_token: Float?, + ?output_cost_per_pixel: Float?, + ?output_cost_per_reasoning_token: Float?, ?output_cost_per_second: Float?, ?output_cost_per_token: Float?, + ?output_cost_per_token_above_128k_tokens: Float?, + ?output_cost_per_token_above_200k_tokens: Float?, + ?output_cost_per_token_batches: Float?, + ?output_cost_per_token_flex: Float?, + ?output_cost_per_token_priority: Float?, + ?output_cost_per_video_per_second: Float?, ?region_name: String?, ?rpm: Integer?, - ?stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, - ?timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, + ?s3_bucket_name: String?, + ?s3_encryption_key_id: String?, + ?search_context_cost_per_query: ::Hash[Symbol, top]?, + ?stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::stream_timeout?, + ?tiered_pricing: ::Array[::Hash[Symbol, top]]?, + ?timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::timeout?, ?tpm: Integer?, ?use_in_pass_through: bool?, - ?vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, + ?use_litellm_proxy: bool?, + ?vector_store_id: String?, + ?vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::vertex_credentials?, ?vertex_location: String?, ?vertex_project: String?, ?watsonx_region_name: String? @@ -163,43 +395,664 @@ module Hanzoai api_base: String?, api_key: String?, api_version: String?, + auto_router_config: String?, + auto_router_config_path: String?, + auto_router_default_model: String?, + auto_router_embedding_model: String?, aws_access_key_id: String?, + aws_bedrock_runtime_endpoint: String?, aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param]?, + cache_creation_input_audio_token_cost: Float?, + cache_creation_input_token_cost: Float?, + :cache_creation_input_token_cost_above_1hr => Float?, + :cache_creation_input_token_cost_above_200k_tokens => Float?, + cache_read_input_audio_token_cost: Float?, + cache_read_input_token_cost: Float?, + :cache_read_input_token_cost_above_200k_tokens => Float?, + cache_read_input_token_cost_flex: Float?, + cache_read_input_token_cost_priority: Float?, + citation_cost_per_token: Float?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, + gcs_bucket_name: String?, + input_cost_per_audio_per_second: Float?, + :input_cost_per_audio_per_second_above_128k_tokens => Float?, + input_cost_per_audio_token: Float?, + input_cost_per_character: Float?, + :input_cost_per_character_above_128k_tokens => Float?, + input_cost_per_image: Float?, + :input_cost_per_image_above_128k_tokens => Float?, + input_cost_per_pixel: Float?, + input_cost_per_query: Float?, input_cost_per_second: Float?, input_cost_per_token: Float?, - llm_trace_id: String?, + :input_cost_per_token_above_128k_tokens => Float?, + :input_cost_per_token_above_200k_tokens => Float?, + input_cost_per_token_batches: Float?, + input_cost_per_token_cache_hit: Float?, + input_cost_per_token_flex: Float?, + input_cost_per_token_priority: Float?, + input_cost_per_video_per_second: Float?, + :input_cost_per_video_per_second_above_128k_tokens => Float?, + :input_cost_per_video_per_second_above_15s_interval => Float?, + :input_cost_per_video_per_second_above_8s_interval => Float?, + litellm_credential_name: String?, + litellm_trace_id: String?, max_budget: Float?, max_file_size_mb: Float?, max_retries: Integer?, merge_reasoning_content_in_choices: bool?, + milvus_text_field: String?, + mock_response: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::mock_response?, model: String?, - model_info: top?, + model_info: ::Hash[Symbol, top]?, organization: String?, + output_cost_per_audio_per_second: Float?, + output_cost_per_audio_token: Float?, + output_cost_per_character: Float?, + :output_cost_per_character_above_128k_tokens => Float?, + output_cost_per_image: Float?, + output_cost_per_image_token: Float?, + output_cost_per_pixel: Float?, + output_cost_per_reasoning_token: Float?, output_cost_per_second: Float?, output_cost_per_token: Float?, + :output_cost_per_token_above_128k_tokens => Float?, + :output_cost_per_token_above_200k_tokens => Float?, + output_cost_per_token_batches: Float?, + output_cost_per_token_flex: Float?, + output_cost_per_token_priority: Float?, + output_cost_per_video_per_second: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout?, - timeout: Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout?, + :s3_bucket_name => String?, + :s3_encryption_key_id => String?, + search_context_cost_per_query: ::Hash[Symbol, top]?, + stream_timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::stream_timeout?, + tiered_pricing: ::Array[::Hash[Symbol, top]]?, + timeout: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials?, + use_litellm_proxy: bool?, + vector_store_id: String?, + vertex_credentials: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? } type configurable_clientside_auth_param = - String | Hanzoai::ConfigurableClientsideParamsCustomAuth + String + | Hanzoai::Model::UpdateDeployment::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::configurable_clientside_auth_param] + type configurable_clientside_params_custom_auth_input = + { api_base: String } + + class ConfigurableClientsideParamsCustomAuthInput < Hanzoai::Internal::Type::BaseModel + attr_accessor api_base: String + + def initialize: (api_base: String) -> void + + def to_hash: -> { api_base: String } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::configurable_clientside_auth_param] + end + + type mock_response = + String + | Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse + | top + + module MockResponse + extend Hanzoai::Internal::Type::Union + + type model_response = + { + id: String, + choices: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::choice], + created: Integer, + object: String, + model: String?, + system_fingerprint: String? + } + + class ModelResponse < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor choices: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::choice] + + attr_accessor created: Integer + + attr_accessor object: String + + attr_accessor model: String? + + attr_accessor system_fingerprint: String? + + def initialize: ( + id: String, + choices: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::choice], + created: Integer, + object: String, + ?model: String?, + ?system_fingerprint: String? + ) -> void + + def to_hash: -> { + id: String, + choices: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::choice], + created: Integer, + object: String, + model: String?, + system_fingerprint: String? + } + + type choice = + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices + | ::Hash[Symbol, top] + + module Choice + extend Hanzoai::Internal::Type::Union + + type choices = + { + finish_reason: String, + index: Integer, + message: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + logprobs: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class Choices < Hanzoai::Internal::Type::BaseModel + attr_accessor finish_reason: String + + attr_accessor index: Integer + + attr_accessor message: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message + + attr_accessor logprobs: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + finish_reason: String, + index: Integer, + message: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + ?logprobs: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + finish_reason: String, + index: Integer, + message: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + logprobs: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + type message = + { + content: String?, + function_call: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall?, + role: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role, + tool_calls: ::Array[::Hash[Symbol, top]]?, + annotations: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]?, + audio: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio?, + images: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]?, + provider_specific_fields: ::Hash[Symbol, top]?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + } + + class Message < Hanzoai::Internal::Type::BaseModel + attr_accessor content: String? + + attr_accessor function_call: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall? + + attr_accessor role: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role + + attr_accessor tool_calls: ::Array[::Hash[Symbol, top]]? + + attr_accessor annotations: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]? + + attr_accessor audio: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio? + + attr_accessor images: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + attr_accessor reasoning_content: String? + + attr_accessor thinking_blocks: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + + def initialize: ( + content: String?, + function_call: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall?, + role: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role, + tool_calls: ::Array[::Hash[Symbol, top]]?, + ?annotations: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]?, + ?audio: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio?, + ?images: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]?, + ?provider_specific_fields: ::Hash[Symbol, top]?, + ?reasoning_content: String?, + ?thinking_blocks: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + ) -> void + + def to_hash: -> { + content: String?, + function_call: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall?, + role: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role, + tool_calls: ::Array[::Hash[Symbol, top]]?, + annotations: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]?, + audio: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio?, + images: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]?, + provider_specific_fields: ::Hash[Symbol, top]?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + } + + type function_call = { arguments: String, name: String? } + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + attr_accessor arguments: String + + attr_accessor name: String? + + def initialize: ( + arguments: String, + ?name: String? + ) -> void + + def to_hash: -> { arguments: String, name: String? } + end + + type role = :assistant | :user | :system | :tool | :function + + module Role + extend Hanzoai::Internal::Type::Enum + + ASSISTANT: :assistant + USER: :user + SYSTEM: :system + TOOL: :tool + FUNCTION: :function + + def self?.values: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role] + end + + type annotation = + { + type: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_, + url_citation: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + } + + class Annotation < Hanzoai::Internal::Type::BaseModel + attr_reader type: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_? + + def type=: ( + Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_ + ) -> Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_ + + attr_reader url_citation: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation? + + def url_citation=: ( + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + ) -> Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + + def initialize: ( + ?type: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_, + ?url_citation: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + ) -> void + + def to_hash: -> { + type: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_, + url_citation: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + } + + type type_ = :url_citation + + module Type + extend Hanzoai::Internal::Type::Enum + + URL_CITATION: :url_citation + + def self?.values: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_] + end + + type url_citation = + { + end_index: Integer, + start_index: Integer, + title: String, + url: String + } + + class URLCitation < Hanzoai::Internal::Type::BaseModel + attr_reader end_index: Integer? + + def end_index=: (Integer) -> Integer + + attr_reader start_index: Integer? + + def start_index=: (Integer) -> Integer + + attr_reader title: String? + + def title=: (String) -> String + + attr_reader url: String? + + def url=: (String) -> String + + def initialize: ( + ?end_index: Integer, + ?start_index: Integer, + ?title: String, + ?url: String + ) -> void + + def to_hash: -> { + end_index: Integer, + start_index: Integer, + title: String, + url: String + } + end + end + + type audio = + { + id: String, + data: String, + expires_at: Integer, + transcript: String + } + + class Audio < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor data: String + + attr_accessor expires_at: Integer + + attr_accessor transcript: String + + def initialize: ( + id: String, + data: String, + expires_at: Integer, + transcript: String + ) -> void + + def to_hash: -> { + id: String, + data: String, + expires_at: Integer, + transcript: String + } + end + + type image = + { + image_url: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + type: :image_url + } + + class Image < Hanzoai::Internal::Type::BaseModel + attr_accessor image_url: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL + + attr_accessor index: Integer + + attr_accessor type: :image_url + + def initialize: ( + image_url: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + ?type: :image_url + ) -> void + + def to_hash: -> { + image_url: Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + type: :image_url + } + + type image_url = { url: String, detail: String? } + + class ImageURL < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_accessor detail: String? + + def initialize: (url: String, ?detail: String?) -> void + + def to_hash: -> { url: String, detail: String? } + end + end + + type thinking_block = + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock + | Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = + { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_redacted_thinking_block = + { + type: :redacted_thinking, + cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :redacted_thinking + + attr_accessor cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control? + + attr_reader data: String? + + def data=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + ?data: String, + ?type: :redacted_thinking + ) -> void + + def to_hash: -> { + type: :redacted_thinking, + cache_control: Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = + { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block] + end + end + + type logprobs = + Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs + | top + + module Logprobs + extend Hanzoai::Internal::Type::Union + + type choice_logprobs = + { + content: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + } + + class ChoiceLogprobs < Hanzoai::Internal::Type::BaseModel + attr_accessor content: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + + def initialize: ( + ?content: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + ) -> void + + def to_hash: -> { + content: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + } + + type content = + { + token: String, + logprob: Float, + top_logprobs: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob], + bytes: ::Array[Integer]? + } + + class Content < Hanzoai::Internal::Type::BaseModel + attr_accessor token: String + + attr_accessor logprob: Float + + attr_accessor top_logprobs: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob] + + attr_accessor bytes: ::Array[Integer]? + + def initialize: ( + token: String, + logprob: Float, + top_logprobs: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob], + ?bytes: ::Array[Integer]? + ) -> void + + def to_hash: -> { + token: String, + logprob: Float, + top_logprobs: ::Array[Hanzoai::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob], + bytes: ::Array[Integer]? + } + + type top_logprob = + { + token: String, + logprob: Float, + bytes: ::Array[Integer]? + } + + class TopLogprob < Hanzoai::Internal::Type::BaseModel + attr_accessor token: String + + attr_accessor logprob: Float + + attr_accessor bytes: ::Array[Integer]? + + def initialize: ( + token: String, + logprob: Float, + ?bytes: ::Array[Integer]? + ) -> void + + def to_hash: -> { + token: String, + logprob: Float, + bytes: ::Array[Integer]? + } + end + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs] + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::MockResponse::ModelResponse::choice] + + StreamingChoiceMap: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::mock_response] end type stream_timeout = Float | String @@ -207,7 +1060,7 @@ module Hanzoai module StreamTimeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::stream_timeout] + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::stream_timeout] end type timeout = Float | String @@ -215,15 +1068,17 @@ module Hanzoai module Timeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::timeout] + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::timeout] end - type vertex_credentials = top | String + type vertex_credentials = String | ::Hash[Symbol, top] module VertexCredentials extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LlmParams::vertex_credentials] + def self?.variants: -> ::Array[Hanzoai::Models::Model::UpdateDeployment::LitellmParams::vertex_credentials] + + UnionMember1Map: Hanzoai::Internal::Type::Converter end end end diff --git a/sig/hanzoai/models/model_create_params.rbs b/sig/hanzoai/models/model_create_params.rbs index b7b90010..8777afee 100644 --- a/sig/hanzoai/models/model_create_params.rbs +++ b/sig/hanzoai/models/model_create_params.rbs @@ -2,7 +2,7 @@ module Hanzoai module Models type model_create_params = { - llm_params: Hanzoai::ModelCreateParams::LlmParams, + litellm_params: Hanzoai::ModelCreateParams::LitellmParams, model_info: Hanzoai::ModelInfo, model_name: String } @@ -12,62 +12,120 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor llm_params: Hanzoai::ModelCreateParams::LlmParams + attr_accessor litellm_params: Hanzoai::ModelCreateParams::LitellmParams attr_accessor model_info: Hanzoai::ModelInfo attr_accessor model_name: String def initialize: ( - llm_params: Hanzoai::ModelCreateParams::LlmParams, + litellm_params: Hanzoai::ModelCreateParams::LitellmParams, model_info: Hanzoai::ModelInfo, model_name: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - llm_params: Hanzoai::ModelCreateParams::LlmParams, + litellm_params: Hanzoai::ModelCreateParams::LitellmParams, model_info: Hanzoai::ModelInfo, model_name: String, request_options: Hanzoai::RequestOptions } - type llm_params = + type litellm_params = { model: String, api_base: String?, api_key: String?, api_version: String?, + auto_router_config: String?, + auto_router_config_path: String?, + auto_router_default_model: String?, + auto_router_embedding_model: String?, aws_access_key_id: String?, + aws_bedrock_runtime_endpoint: String?, aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + cache_creation_input_audio_token_cost: Float?, + cache_creation_input_token_cost: Float?, + :cache_creation_input_token_cost_above_1hr => Float?, + :cache_creation_input_token_cost_above_200k_tokens => Float?, + cache_read_input_audio_token_cost: Float?, + cache_read_input_token_cost: Float?, + :cache_read_input_token_cost_above_200k_tokens => Float?, + cache_read_input_token_cost_flex: Float?, + cache_read_input_token_cost_priority: Float?, + citation_cost_per_token: Float?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, + gcs_bucket_name: String?, + input_cost_per_audio_per_second: Float?, + :input_cost_per_audio_per_second_above_128k_tokens => Float?, + input_cost_per_audio_token: Float?, + input_cost_per_character: Float?, + :input_cost_per_character_above_128k_tokens => Float?, + input_cost_per_image: Float?, + :input_cost_per_image_above_128k_tokens => Float?, + input_cost_per_pixel: Float?, + input_cost_per_query: Float?, input_cost_per_second: Float?, input_cost_per_token: Float?, - llm_trace_id: String?, + :input_cost_per_token_above_128k_tokens => Float?, + :input_cost_per_token_above_200k_tokens => Float?, + input_cost_per_token_batches: Float?, + input_cost_per_token_cache_hit: Float?, + input_cost_per_token_flex: Float?, + input_cost_per_token_priority: Float?, + input_cost_per_video_per_second: Float?, + :input_cost_per_video_per_second_above_128k_tokens => Float?, + :input_cost_per_video_per_second_above_15s_interval => Float?, + :input_cost_per_video_per_second_above_8s_interval => Float?, + litellm_credential_name: String?, + litellm_trace_id: String?, max_budget: Float?, max_file_size_mb: Float?, max_retries: Integer?, merge_reasoning_content_in_choices: bool?, - model_info: top?, + milvus_text_field: String?, + mock_response: Hanzoai::Models::ModelCreateParams::LitellmParams::mock_response?, + model_info: ::Hash[Symbol, top]?, organization: String?, + output_cost_per_audio_per_second: Float?, + output_cost_per_audio_token: Float?, + output_cost_per_character: Float?, + :output_cost_per_character_above_128k_tokens => Float?, + output_cost_per_image: Float?, + output_cost_per_image_token: Float?, + output_cost_per_pixel: Float?, + output_cost_per_reasoning_token: Float?, output_cost_per_second: Float?, output_cost_per_token: Float?, + :output_cost_per_token_above_128k_tokens => Float?, + :output_cost_per_token_above_200k_tokens => Float?, + output_cost_per_token_batches: Float?, + output_cost_per_token_flex: Float?, + output_cost_per_token_priority: Float?, + output_cost_per_video_per_second: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, - timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, + :s3_bucket_name => String?, + :s3_encryption_key_id => String?, + search_context_cost_per_query: ::Hash[Symbol, top]?, + stream_timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::stream_timeout?, + tiered_pricing: ::Array[::Hash[Symbol, top]]?, + timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, + use_litellm_proxy: bool?, + vector_store_id: String?, + vertex_credentials: Hanzoai::Models::ModelCreateParams::LitellmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? } - class LlmParams < Hanzoai::Internal::Type::BaseModel + class LitellmParams < Hanzoai::Internal::Type::BaseModel attr_accessor model: String attr_accessor api_base: String? @@ -76,23 +134,95 @@ module Hanzoai attr_accessor api_version: String? + attr_accessor auto_router_config: String? + + attr_accessor auto_router_config_path: String? + + attr_accessor auto_router_default_model: String? + + attr_accessor auto_router_embedding_model: String? + attr_accessor aws_access_key_id: String? + attr_accessor aws_bedrock_runtime_endpoint: String? + attr_accessor aws_region_name: String? attr_accessor aws_secret_access_key: String? attr_accessor budget_duration: String? - attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]? + attr_accessor cache_creation_input_audio_token_cost: Float? + + attr_accessor cache_creation_input_token_cost: Float? + + attr_accessor cache_creation_input_token_cost_above_1hr: Float? + + attr_accessor cache_creation_input_token_cost_above_200k_tokens: Float? + + attr_accessor cache_read_input_audio_token_cost: Float? + + attr_accessor cache_read_input_token_cost: Float? + + attr_accessor cache_read_input_token_cost_above_200k_tokens: Float? + + attr_accessor cache_read_input_token_cost_flex: Float? + + attr_accessor cache_read_input_token_cost_priority: Float? + + attr_accessor citation_cost_per_token: Float? + + attr_accessor configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::configurable_clientside_auth_param]? attr_accessor custom_llm_provider: String? + attr_accessor gcs_bucket_name: String? + + attr_accessor input_cost_per_audio_per_second: Float? + + attr_accessor input_cost_per_audio_per_second_above_128k_tokens: Float? + + attr_accessor input_cost_per_audio_token: Float? + + attr_accessor input_cost_per_character: Float? + + attr_accessor input_cost_per_character_above_128k_tokens: Float? + + attr_accessor input_cost_per_image: Float? + + attr_accessor input_cost_per_image_above_128k_tokens: Float? + + attr_accessor input_cost_per_pixel: Float? + + attr_accessor input_cost_per_query: Float? + attr_accessor input_cost_per_second: Float? attr_accessor input_cost_per_token: Float? - attr_accessor llm_trace_id: String? + attr_accessor input_cost_per_token_above_128k_tokens: Float? + + attr_accessor input_cost_per_token_above_200k_tokens: Float? + + attr_accessor input_cost_per_token_batches: Float? + + attr_accessor input_cost_per_token_cache_hit: Float? + + attr_accessor input_cost_per_token_flex: Float? + + attr_accessor input_cost_per_token_priority: Float? + + attr_accessor input_cost_per_video_per_second: Float? + + attr_accessor input_cost_per_video_per_second_above_128k_tokens: Float? + + attr_accessor input_cost_per_video_per_second_above_15s_interval: Float? + + attr_accessor input_cost_per_video_per_second_above_8s_interval: Float? + + attr_accessor litellm_credential_name: String? + + attr_accessor litellm_trace_id: String? attr_accessor max_budget: Float? @@ -102,27 +232,71 @@ module Hanzoai attr_accessor merge_reasoning_content_in_choices: bool? - attr_accessor model_info: top? + attr_accessor milvus_text_field: String? + + attr_accessor mock_response: Hanzoai::Models::ModelCreateParams::LitellmParams::mock_response? + + attr_accessor model_info: ::Hash[Symbol, top]? attr_accessor organization: String? + attr_accessor output_cost_per_audio_per_second: Float? + + attr_accessor output_cost_per_audio_token: Float? + + attr_accessor output_cost_per_character: Float? + + attr_accessor output_cost_per_character_above_128k_tokens: Float? + + attr_accessor output_cost_per_image: Float? + + attr_accessor output_cost_per_image_token: Float? + + attr_accessor output_cost_per_pixel: Float? + + attr_accessor output_cost_per_reasoning_token: Float? + attr_accessor output_cost_per_second: Float? attr_accessor output_cost_per_token: Float? + attr_accessor output_cost_per_token_above_128k_tokens: Float? + + attr_accessor output_cost_per_token_above_200k_tokens: Float? + + attr_accessor output_cost_per_token_batches: Float? + + attr_accessor output_cost_per_token_flex: Float? + + attr_accessor output_cost_per_token_priority: Float? + + attr_accessor output_cost_per_video_per_second: Float? + attr_accessor region_name: String? attr_accessor rpm: Integer? - attr_accessor stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout? + attr_accessor s3_bucket_name: String? - attr_accessor timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout? + attr_accessor s3_encryption_key_id: String? + + attr_accessor search_context_cost_per_query: ::Hash[Symbol, top]? + + attr_accessor stream_timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::stream_timeout? + + attr_accessor tiered_pricing: ::Array[::Hash[Symbol, top]]? + + attr_accessor timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::timeout? attr_accessor tpm: Integer? attr_accessor use_in_pass_through: bool? - attr_accessor vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials? + attr_accessor use_litellm_proxy: bool? + + attr_accessor vector_store_id: String? + + attr_accessor vertex_credentials: Hanzoai::Models::ModelCreateParams::LitellmParams::vertex_credentials? attr_accessor vertex_location: String? @@ -135,30 +309,88 @@ module Hanzoai ?api_base: String?, ?api_key: String?, ?api_version: String?, + ?auto_router_config: String?, + ?auto_router_config_path: String?, + ?auto_router_default_model: String?, + ?auto_router_embedding_model: String?, ?aws_access_key_id: String?, + ?aws_bedrock_runtime_endpoint: String?, ?aws_region_name: String?, ?aws_secret_access_key: String?, ?budget_duration: String?, - ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + ?cache_creation_input_audio_token_cost: Float?, + ?cache_creation_input_token_cost: Float?, + ?cache_creation_input_token_cost_above_1hr: Float?, + ?cache_creation_input_token_cost_above_200k_tokens: Float?, + ?cache_read_input_audio_token_cost: Float?, + ?cache_read_input_token_cost: Float?, + ?cache_read_input_token_cost_above_200k_tokens: Float?, + ?cache_read_input_token_cost_flex: Float?, + ?cache_read_input_token_cost_priority: Float?, + ?citation_cost_per_token: Float?, + ?configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::configurable_clientside_auth_param]?, ?custom_llm_provider: String?, + ?gcs_bucket_name: String?, + ?input_cost_per_audio_per_second: Float?, + ?input_cost_per_audio_per_second_above_128k_tokens: Float?, + ?input_cost_per_audio_token: Float?, + ?input_cost_per_character: Float?, + ?input_cost_per_character_above_128k_tokens: Float?, + ?input_cost_per_image: Float?, + ?input_cost_per_image_above_128k_tokens: Float?, + ?input_cost_per_pixel: Float?, + ?input_cost_per_query: Float?, ?input_cost_per_second: Float?, ?input_cost_per_token: Float?, - ?llm_trace_id: String?, + ?input_cost_per_token_above_128k_tokens: Float?, + ?input_cost_per_token_above_200k_tokens: Float?, + ?input_cost_per_token_batches: Float?, + ?input_cost_per_token_cache_hit: Float?, + ?input_cost_per_token_flex: Float?, + ?input_cost_per_token_priority: Float?, + ?input_cost_per_video_per_second: Float?, + ?input_cost_per_video_per_second_above_128k_tokens: Float?, + ?input_cost_per_video_per_second_above_15s_interval: Float?, + ?input_cost_per_video_per_second_above_8s_interval: Float?, + ?litellm_credential_name: String?, + ?litellm_trace_id: String?, ?max_budget: Float?, ?max_file_size_mb: Float?, ?max_retries: Integer?, ?merge_reasoning_content_in_choices: bool?, - ?model_info: top?, + ?milvus_text_field: String?, + ?mock_response: Hanzoai::Models::ModelCreateParams::LitellmParams::mock_response?, + ?model_info: ::Hash[Symbol, top]?, ?organization: String?, + ?output_cost_per_audio_per_second: Float?, + ?output_cost_per_audio_token: Float?, + ?output_cost_per_character: Float?, + ?output_cost_per_character_above_128k_tokens: Float?, + ?output_cost_per_image: Float?, + ?output_cost_per_image_token: Float?, + ?output_cost_per_pixel: Float?, + ?output_cost_per_reasoning_token: Float?, ?output_cost_per_second: Float?, ?output_cost_per_token: Float?, + ?output_cost_per_token_above_128k_tokens: Float?, + ?output_cost_per_token_above_200k_tokens: Float?, + ?output_cost_per_token_batches: Float?, + ?output_cost_per_token_flex: Float?, + ?output_cost_per_token_priority: Float?, + ?output_cost_per_video_per_second: Float?, ?region_name: String?, ?rpm: Integer?, - ?stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, - ?timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, + ?s3_bucket_name: String?, + ?s3_encryption_key_id: String?, + ?search_context_cost_per_query: ::Hash[Symbol, top]?, + ?stream_timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::stream_timeout?, + ?tiered_pricing: ::Array[::Hash[Symbol, top]]?, + ?timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::timeout?, ?tpm: Integer?, ?use_in_pass_through: bool?, - ?vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, + ?use_litellm_proxy: bool?, + ?vector_store_id: String?, + ?vertex_credentials: Hanzoai::Models::ModelCreateParams::LitellmParams::vertex_credentials?, ?vertex_location: String?, ?vertex_project: String?, ?watsonx_region_name: String? @@ -169,42 +401,660 @@ module Hanzoai api_base: String?, api_key: String?, api_version: String?, + auto_router_config: String?, + auto_router_config_path: String?, + auto_router_default_model: String?, + auto_router_embedding_model: String?, aws_access_key_id: String?, + aws_bedrock_runtime_endpoint: String?, aws_region_name: String?, aws_secret_access_key: String?, budget_duration: String?, - configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param]?, + cache_creation_input_audio_token_cost: Float?, + cache_creation_input_token_cost: Float?, + :cache_creation_input_token_cost_above_1hr => Float?, + :cache_creation_input_token_cost_above_200k_tokens => Float?, + cache_read_input_audio_token_cost: Float?, + cache_read_input_token_cost: Float?, + :cache_read_input_token_cost_above_200k_tokens => Float?, + cache_read_input_token_cost_flex: Float?, + cache_read_input_token_cost_priority: Float?, + citation_cost_per_token: Float?, + configurable_clientside_auth_params: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::configurable_clientside_auth_param]?, custom_llm_provider: String?, + gcs_bucket_name: String?, + input_cost_per_audio_per_second: Float?, + :input_cost_per_audio_per_second_above_128k_tokens => Float?, + input_cost_per_audio_token: Float?, + input_cost_per_character: Float?, + :input_cost_per_character_above_128k_tokens => Float?, + input_cost_per_image: Float?, + :input_cost_per_image_above_128k_tokens => Float?, + input_cost_per_pixel: Float?, + input_cost_per_query: Float?, input_cost_per_second: Float?, input_cost_per_token: Float?, - llm_trace_id: String?, + :input_cost_per_token_above_128k_tokens => Float?, + :input_cost_per_token_above_200k_tokens => Float?, + input_cost_per_token_batches: Float?, + input_cost_per_token_cache_hit: Float?, + input_cost_per_token_flex: Float?, + input_cost_per_token_priority: Float?, + input_cost_per_video_per_second: Float?, + :input_cost_per_video_per_second_above_128k_tokens => Float?, + :input_cost_per_video_per_second_above_15s_interval => Float?, + :input_cost_per_video_per_second_above_8s_interval => Float?, + litellm_credential_name: String?, + litellm_trace_id: String?, max_budget: Float?, max_file_size_mb: Float?, max_retries: Integer?, merge_reasoning_content_in_choices: bool?, - model_info: top?, + milvus_text_field: String?, + mock_response: Hanzoai::Models::ModelCreateParams::LitellmParams::mock_response?, + model_info: ::Hash[Symbol, top]?, organization: String?, + output_cost_per_audio_per_second: Float?, + output_cost_per_audio_token: Float?, + output_cost_per_character: Float?, + :output_cost_per_character_above_128k_tokens => Float?, + output_cost_per_image: Float?, + output_cost_per_image_token: Float?, + output_cost_per_pixel: Float?, + output_cost_per_reasoning_token: Float?, output_cost_per_second: Float?, output_cost_per_token: Float?, + :output_cost_per_token_above_128k_tokens => Float?, + :output_cost_per_token_above_200k_tokens => Float?, + output_cost_per_token_batches: Float?, + output_cost_per_token_flex: Float?, + output_cost_per_token_priority: Float?, + output_cost_per_video_per_second: Float?, region_name: String?, rpm: Integer?, - stream_timeout: Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout?, - timeout: Hanzoai::Models::ModelCreateParams::LlmParams::timeout?, + :s3_bucket_name => String?, + :s3_encryption_key_id => String?, + search_context_cost_per_query: ::Hash[Symbol, top]?, + stream_timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::stream_timeout?, + tiered_pricing: ::Array[::Hash[Symbol, top]]?, + timeout: Hanzoai::Models::ModelCreateParams::LitellmParams::timeout?, tpm: Integer?, use_in_pass_through: bool?, - vertex_credentials: Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials?, + use_litellm_proxy: bool?, + vector_store_id: String?, + vertex_credentials: Hanzoai::Models::ModelCreateParams::LitellmParams::vertex_credentials?, vertex_location: String?, vertex_project: String?, watsonx_region_name: String? } type configurable_clientside_auth_param = - String | Hanzoai::ConfigurableClientsideParamsCustomAuth + String + | Hanzoai::ModelCreateParams::LitellmParams::ConfigurableClientsideAuthParam::ConfigurableClientsideParamsCustomAuthInput module ConfigurableClientsideAuthParam extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::configurable_clientside_auth_param] + type configurable_clientside_params_custom_auth_input = + { api_base: String } + + class ConfigurableClientsideParamsCustomAuthInput < Hanzoai::Internal::Type::BaseModel + attr_accessor api_base: String + + def initialize: (api_base: String) -> void + + def to_hash: -> { api_base: String } + end + + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::configurable_clientside_auth_param] + end + + type mock_response = + String + | Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse + | top + + module MockResponse + extend Hanzoai::Internal::Type::Union + + type model_response = + { + id: String, + choices: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::choice], + created: Integer, + object: String, + model: String?, + system_fingerprint: String? + } + + class ModelResponse < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor choices: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::choice] + + attr_accessor created: Integer + + attr_accessor object: String + + attr_accessor model: String? + + attr_accessor system_fingerprint: String? + + def initialize: ( + id: String, + choices: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::choice], + created: Integer, + object: String, + ?model: String?, + ?system_fingerprint: String? + ) -> void + + def to_hash: -> { + id: String, + choices: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::choice], + created: Integer, + object: String, + model: String?, + system_fingerprint: String? + } + + type choice = + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices + | ::Hash[Symbol, top] + + module Choice + extend Hanzoai::Internal::Type::Union + + type choices = + { + finish_reason: String, + index: Integer, + message: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + logprobs: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class Choices < Hanzoai::Internal::Type::BaseModel + attr_accessor finish_reason: String + + attr_accessor index: Integer + + attr_accessor message: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message + + attr_accessor logprobs: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + finish_reason: String, + index: Integer, + message: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + ?logprobs: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + finish_reason: String, + index: Integer, + message: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message, + logprobs: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + type message = + { + content: String?, + function_call: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall?, + role: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role, + tool_calls: ::Array[::Hash[Symbol, top]]?, + annotations: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]?, + audio: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio?, + images: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]?, + provider_specific_fields: ::Hash[Symbol, top]?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + } + + class Message < Hanzoai::Internal::Type::BaseModel + attr_accessor content: String? + + attr_accessor function_call: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall? + + attr_accessor role: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role + + attr_accessor tool_calls: ::Array[::Hash[Symbol, top]]? + + attr_accessor annotations: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]? + + attr_accessor audio: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio? + + attr_accessor images: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + attr_accessor reasoning_content: String? + + attr_accessor thinking_blocks: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + + def initialize: ( + content: String?, + function_call: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall?, + role: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role, + tool_calls: ::Array[::Hash[Symbol, top]]?, + ?annotations: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]?, + ?audio: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio?, + ?images: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]?, + ?provider_specific_fields: ::Hash[Symbol, top]?, + ?reasoning_content: String?, + ?thinking_blocks: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + ) -> void + + def to_hash: -> { + content: String?, + function_call: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::FunctionCall?, + role: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role, + tool_calls: ::Array[::Hash[Symbol, top]]?, + annotations: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation]?, + audio: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Audio?, + images: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image]?, + provider_specific_fields: ::Hash[Symbol, top]?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block]? + } + + type function_call = { arguments: String, name: String? } + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + attr_accessor arguments: String + + attr_accessor name: String? + + def initialize: (arguments: String, ?name: String?) -> void + + def to_hash: -> { arguments: String, name: String? } + end + + type role = :assistant | :user | :system | :tool | :function + + module Role + extend Hanzoai::Internal::Type::Enum + + ASSISTANT: :assistant + USER: :user + SYSTEM: :system + TOOL: :tool + FUNCTION: :function + + def self?.values: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::role] + end + + type annotation = + { + type: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_, + url_citation: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + } + + class Annotation < Hanzoai::Internal::Type::BaseModel + attr_reader type: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_? + + def type=: ( + Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_ + ) -> Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_ + + attr_reader url_citation: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation? + + def url_citation=: ( + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + ) -> Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + + def initialize: ( + ?type: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_, + ?url_citation: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + ) -> void + + def to_hash: -> { + type: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_, + url_citation: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::URLCitation + } + + type type_ = :url_citation + + module Type + extend Hanzoai::Internal::Type::Enum + + URL_CITATION: :url_citation + + def self?.values: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Annotation::type_] + end + + type url_citation = + { + end_index: Integer, + start_index: Integer, + title: String, + url: String + } + + class URLCitation < Hanzoai::Internal::Type::BaseModel + attr_reader end_index: Integer? + + def end_index=: (Integer) -> Integer + + attr_reader start_index: Integer? + + def start_index=: (Integer) -> Integer + + attr_reader title: String? + + def title=: (String) -> String + + attr_reader url: String? + + def url=: (String) -> String + + def initialize: ( + ?end_index: Integer, + ?start_index: Integer, + ?title: String, + ?url: String + ) -> void + + def to_hash: -> { + end_index: Integer, + start_index: Integer, + title: String, + url: String + } + end + end + + type audio = + { + id: String, + data: String, + expires_at: Integer, + transcript: String + } + + class Audio < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor data: String + + attr_accessor expires_at: Integer + + attr_accessor transcript: String + + def initialize: ( + id: String, + data: String, + expires_at: Integer, + transcript: String + ) -> void + + def to_hash: -> { + id: String, + data: String, + expires_at: Integer, + transcript: String + } + end + + type image = + { + image_url: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + type: :image_url + } + + class Image < Hanzoai::Internal::Type::BaseModel + attr_accessor image_url: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL + + attr_accessor index: Integer + + attr_accessor type: :image_url + + def initialize: ( + image_url: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + ?type: :image_url + ) -> void + + def to_hash: -> { + image_url: Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::Image::ImageURL, + index: Integer, + type: :image_url + } + + type image_url = { url: String, detail: String? } + + class ImageURL < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_accessor detail: String? + + def initialize: (url: String, ?detail: String?) -> void + + def to_hash: -> { url: String, detail: String? } + end + end + + type thinking_block = + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock + | Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = + { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_redacted_thinking_block = + { + type: :redacted_thinking, + cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :redacted_thinking + + attr_accessor cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control? + + attr_reader data: String? + + def data=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + ?data: String, + ?type: :redacted_thinking + ) -> void + + def to_hash: -> { + type: :redacted_thinking, + cache_control: Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = + { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Message::thinking_block] + end + end + + type logprobs = + Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs + | top + + module Logprobs + extend Hanzoai::Internal::Type::Union + + type choice_logprobs = + { + content: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + } + + class ChoiceLogprobs < Hanzoai::Internal::Type::BaseModel + attr_accessor content: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + + def initialize: ( + ?content: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + ) -> void + + def to_hash: -> { + content: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content]? + } + + type content = + { + token: String, + logprob: Float, + top_logprobs: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob], + bytes: ::Array[Integer]? + } + + class Content < Hanzoai::Internal::Type::BaseModel + attr_accessor token: String + + attr_accessor logprob: Float + + attr_accessor top_logprobs: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob] + + attr_accessor bytes: ::Array[Integer]? + + def initialize: ( + token: String, + logprob: Float, + top_logprobs: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob], + ?bytes: ::Array[Integer]? + ) -> void + + def to_hash: -> { + token: String, + logprob: Float, + top_logprobs: ::Array[Hanzoai::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::Logprobs::ChoiceLogprobs::Content::TopLogprob], + bytes: ::Array[Integer]? + } + + type top_logprob = + { + token: String, + logprob: Float, + bytes: ::Array[Integer]? + } + + class TopLogprob < Hanzoai::Internal::Type::BaseModel + attr_accessor token: String + + attr_accessor logprob: Float + + attr_accessor bytes: ::Array[Integer]? + + def initialize: ( + token: String, + logprob: Float, + ?bytes: ::Array[Integer]? + ) -> void + + def to_hash: -> { + token: String, + logprob: Float, + bytes: ::Array[Integer]? + } + end + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::Choice::Choices::logprobs] + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::MockResponse::ModelResponse::choice] + + StreamingChoiceMap: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::mock_response] end type stream_timeout = Float | String @@ -212,7 +1062,7 @@ module Hanzoai module StreamTimeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::stream_timeout] + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::stream_timeout] end type timeout = Float | String @@ -220,15 +1070,17 @@ module Hanzoai module Timeout extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::timeout] + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::timeout] end - type vertex_credentials = top | String + type vertex_credentials = String | ::Hash[Symbol, top] module VertexCredentials extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LlmParams::vertex_credentials] + def self?.variants: -> ::Array[Hanzoai::Models::ModelCreateParams::LitellmParams::vertex_credentials] + + UnionMember1Map: Hanzoai::Internal::Type::Converter end end end diff --git a/sig/hanzoai/models/model_list_params.rbs b/sig/hanzoai/models/model_list_params.rbs index f55b6251..ecde424b 100644 --- a/sig/hanzoai/models/model_list_params.rbs +++ b/sig/hanzoai/models/model_list_params.rbs @@ -1,24 +1,47 @@ module Hanzoai module Models type model_list_params = - { return_wildcard_routes: bool?, team_id: String? } + { + fallback_type: String?, + include_metadata: bool?, + include_model_access_groups: bool?, + only_model_access_groups: bool?, + return_wildcard_routes: bool?, + team_id: String? + } & Hanzoai::Internal::Type::request_parameters class ModelListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters + attr_accessor fallback_type: String? + + attr_accessor include_metadata: bool? + + attr_accessor include_model_access_groups: bool? + + attr_accessor only_model_access_groups: bool? + attr_accessor return_wildcard_routes: bool? attr_accessor team_id: String? def initialize: ( + ?fallback_type: String?, + ?include_metadata: bool?, + ?include_model_access_groups: bool?, + ?only_model_access_groups: bool?, ?return_wildcard_routes: bool?, ?team_id: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { + fallback_type: String?, + include_metadata: bool?, + include_model_access_groups: bool?, + only_model_access_groups: bool?, return_wildcard_routes: bool?, team_id: String?, request_options: Hanzoai::RequestOptions diff --git a/sig/hanzoai/models/openai/deployment_embed_params.rbs b/sig/hanzoai/models/openai/deployment_embed_params.rbs index 4e73c3a1..fa50c05a 100644 --- a/sig/hanzoai/models/openai/deployment_embed_params.rbs +++ b/sig/hanzoai/models/openai/deployment_embed_params.rbs @@ -2,15 +2,102 @@ module Hanzoai module Models module OpenAI type deployment_embed_params = - { } & Hanzoai::Internal::Type::request_parameters + { + body_model: String, + api_base: String?, + api_key: String?, + api_type: String?, + api_version: String?, + caching: bool, + custom_llm_provider: Hanzoai::Models::OpenAI::DeploymentEmbedParams::custom_llm_provider?, + input: ::Array[String], + litellm_call_id: String?, + litellm_logging_obj: ::Hash[Symbol, top]?, + logger_fn: String?, + timeout: Integer, + user: String? + } + & Hanzoai::Internal::Type::request_parameters class DeploymentEmbedParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def initialize: (?request_options: Hanzoai::request_opts) -> void + attr_accessor body_model: String - def to_hash: -> { request_options: Hanzoai::RequestOptions } + attr_accessor api_base: String? + + attr_accessor api_key: String? + + attr_accessor api_type: String? + + attr_accessor api_version: String? + + attr_reader caching: bool? + + def caching=: (bool) -> bool + + attr_accessor custom_llm_provider: Hanzoai::Models::OpenAI::DeploymentEmbedParams::custom_llm_provider? + + attr_reader input: ::Array[String]? + + def input=: (::Array[String]) -> ::Array[String] + + attr_accessor litellm_call_id: String? + + attr_accessor litellm_logging_obj: ::Hash[Symbol, top]? + + attr_accessor logger_fn: String? + + attr_reader timeout: Integer? + + def timeout=: (Integer) -> Integer + + attr_accessor user: String? + + def initialize: ( + body_model: String, + ?api_base: String?, + ?api_key: String?, + ?api_type: String?, + ?api_version: String?, + ?caching: bool, + ?custom_llm_provider: Hanzoai::Models::OpenAI::DeploymentEmbedParams::custom_llm_provider?, + ?input: ::Array[String], + ?litellm_call_id: String?, + ?litellm_logging_obj: ::Hash[Symbol, top]?, + ?logger_fn: String?, + ?timeout: Integer, + ?user: String?, + ?request_options: Hanzoai::request_opts + ) -> void + + def to_hash: -> { + body_model: String, + api_base: String?, + api_key: String?, + api_type: String?, + api_version: String?, + caching: bool, + custom_llm_provider: Hanzoai::Models::OpenAI::DeploymentEmbedParams::custom_llm_provider?, + input: ::Array[String], + litellm_call_id: String?, + litellm_logging_obj: ::Hash[Symbol, top]?, + logger_fn: String?, + timeout: Integer, + user: String?, + request_options: Hanzoai::RequestOptions + } + + type custom_llm_provider = String | ::Hash[Symbol, top] + + module CustomLlmProvider + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::DeploymentEmbedParams::custom_llm_provider] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end end end end diff --git a/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs b/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs index 92705fdd..8e22650c 100644 --- a/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs +++ b/sig/hanzoai/models/openai/deployments/chat_complete_params.rbs @@ -3,15 +3,1283 @@ module Hanzoai module OpenAI module Deployments type chat_complete_params = - { } & Hanzoai::Internal::Type::request_parameters + { + messages: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::message], + body_model: String, + caching: bool?, + context_window_fallback_dict: ::Hash[Symbol, String]?, + fallbacks: ::Array[String]?, + frequency_penalty: Float?, + function_call: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::function_call?, + functions: ::Array[::Hash[Symbol, top]]?, + guardrails: ::Array[String]?, + logit_bias: ::Hash[Symbol, Float]?, + logprobs: bool?, + max_tokens: Integer?, + metadata: ::Hash[Symbol, top]?, + n: Integer?, + num_retries: Integer?, + parallel_tool_calls: bool?, + presence_penalty: Float?, + response_format: ::Hash[Symbol, top]?, + seed: Integer?, + service_tier: String?, + stop: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::stop?, + stream: bool?, + stream_options: ::Hash[Symbol, top]?, + temperature: Float?, + tool_choice: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::tool_choice?, + tools: ::Array[::Hash[Symbol, top]]?, + top_logprobs: Integer?, + top_p: Float?, + user: String? + } + & Hanzoai::Internal::Type::request_parameters class ChatCompleteParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def initialize: (?request_options: Hanzoai::request_opts) -> void + attr_accessor messages: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::message] - def to_hash: -> { request_options: Hanzoai::RequestOptions } + attr_accessor body_model: String + + attr_accessor caching: bool? + + attr_accessor context_window_fallback_dict: ::Hash[Symbol, String]? + + attr_accessor fallbacks: ::Array[String]? + + attr_accessor frequency_penalty: Float? + + attr_accessor function_call: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::function_call? + + attr_accessor functions: ::Array[::Hash[Symbol, top]]? + + attr_accessor guardrails: ::Array[String]? + + attr_accessor logit_bias: ::Hash[Symbol, Float]? + + attr_accessor logprobs: bool? + + attr_accessor max_tokens: Integer? + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor n: Integer? + + attr_accessor num_retries: Integer? + + attr_accessor parallel_tool_calls: bool? + + attr_accessor presence_penalty: Float? + + attr_accessor response_format: ::Hash[Symbol, top]? + + attr_accessor seed: Integer? + + attr_accessor service_tier: String? + + attr_accessor stop: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::stop? + + attr_accessor stream: bool? + + attr_accessor stream_options: ::Hash[Symbol, top]? + + attr_accessor temperature: Float? + + attr_accessor tool_choice: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::tool_choice? + + attr_accessor tools: ::Array[::Hash[Symbol, top]]? + + attr_accessor top_logprobs: Integer? + + attr_accessor top_p: Float? + + attr_accessor user: String? + + def initialize: ( + messages: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::message], + body_model: String, + ?caching: bool?, + ?context_window_fallback_dict: ::Hash[Symbol, String]?, + ?fallbacks: ::Array[String]?, + ?frequency_penalty: Float?, + ?function_call: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::function_call?, + ?functions: ::Array[::Hash[Symbol, top]]?, + ?guardrails: ::Array[String]?, + ?logit_bias: ::Hash[Symbol, Float]?, + ?logprobs: bool?, + ?max_tokens: Integer?, + ?metadata: ::Hash[Symbol, top]?, + ?n: Integer?, + ?num_retries: Integer?, + ?parallel_tool_calls: bool?, + ?presence_penalty: Float?, + ?response_format: ::Hash[Symbol, top]?, + ?seed: Integer?, + ?service_tier: String?, + ?stop: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::stop?, + ?stream: bool?, + ?stream_options: ::Hash[Symbol, top]?, + ?temperature: Float?, + ?tool_choice: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::tool_choice?, + ?tools: ::Array[::Hash[Symbol, top]]?, + ?top_logprobs: Integer?, + ?top_p: Float?, + ?user: String?, + ?request_options: Hanzoai::request_opts + ) -> void + + def to_hash: -> { + messages: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::message], + body_model: String, + caching: bool?, + context_window_fallback_dict: ::Hash[Symbol, String]?, + fallbacks: ::Array[String]?, + frequency_penalty: Float?, + function_call: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::function_call?, + functions: ::Array[::Hash[Symbol, top]]?, + guardrails: ::Array[String]?, + logit_bias: ::Hash[Symbol, Float]?, + logprobs: bool?, + max_tokens: Integer?, + metadata: ::Hash[Symbol, top]?, + n: Integer?, + num_retries: Integer?, + parallel_tool_calls: bool?, + presence_penalty: Float?, + response_format: ::Hash[Symbol, top]?, + seed: Integer?, + service_tier: String?, + stop: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::stop?, + stream: bool?, + stream_options: ::Hash[Symbol, top]?, + temperature: Float?, + tool_choice: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::tool_choice?, + tools: ::Array[::Hash[Symbol, top]]?, + top_logprobs: Integer?, + top_p: Float?, + user: String?, + request_options: Hanzoai::RequestOptions + } + + type message = + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage + + module Message + extend Hanzoai::Internal::Type::Union + + type chat_completion_user_message = + { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::content, + role: :user, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + } + + class ChatCompletionUserMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::content + + attr_accessor role: :user + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + + def initialize: ( + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::content, + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl, + ?role: :user + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::content, + role: :user, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::CacheControl + } + + type content = + String + | ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::union_member1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + type chat_completion_text_object = + { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_image_object = + { + image_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + type: :image_url + } + + class ChatCompletionImageObject < Hanzoai::Internal::Type::BaseModel + attr_accessor image_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url + + attr_accessor type: :image_url + + def initialize: ( + image_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + ?type: :image_url + ) -> void + + def to_hash: -> { + image_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url, + type: :image_url + } + + type image_url = + String + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::ImageURL::ChatCompletionImageURLObject + + module ImageURL + extend Hanzoai::Internal::Type::Union + + type chat_completion_image_url_object = + { url: String, detail: String, format_: String } + + class ChatCompletionImageURLObject < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_reader detail: String? + + def detail=: (String) -> String + + attr_reader format_: String? + + def format_=: (String) -> String + + def initialize: ( + url: String, + ?detail: String, + ?format_: String + ) -> void + + def to_hash: -> { + url: String, + detail: String, + format_: String + } + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionImageObject::image_url] + end + end + + type chat_completion_audio_object = + { + input_audio: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: :input_audio + } + + class ChatCompletionAudioObject < Hanzoai::Internal::Type::BaseModel + attr_accessor input_audio: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio + + attr_accessor type: :input_audio + + def initialize: ( + input_audio: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + ?type: :input_audio + ) -> void + + def to_hash: -> { + input_audio: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio, + type: :input_audio + } + + type input_audio = + { + data: String, + format_: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + } + + class InputAudio < Hanzoai::Internal::Type::BaseModel + attr_accessor data: String + + attr_accessor format_: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + + def initialize: ( + data: String, + format_: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + ) -> void + + def to_hash: -> { + data: String, + format_: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_ + } + + type format_ = :wav | :mp3 + + module Format + extend Hanzoai::Internal::Type::Enum + + WAV: :wav + MP3: :mp3 + + def self?.values: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionAudioObject::InputAudio::format_] + end + end + end + + type chat_completion_document_object = + { + citations: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: :document + } + + class ChatCompletionDocumentObject < Hanzoai::Internal::Type::BaseModel + attr_accessor citations: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations? + + attr_accessor context: String + + attr_accessor source: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source + + attr_accessor title: String + + attr_accessor type: :document + + def initialize: ( + citations: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + ?type: :document + ) -> void + + def to_hash: -> { + citations: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Citations?, + context: String, + source: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionDocumentObject::Source, + title: String, + type: :document + } + + type citations = { enabled: bool } + + class Citations < Hanzoai::Internal::Type::BaseModel + attr_accessor enabled: bool + + def initialize: (enabled: bool) -> void + + def to_hash: -> { enabled: bool } + end + + type source = + { data: String, media_type: String, type: :text } + + class Source < Hanzoai::Internal::Type::BaseModel + attr_accessor data: String + + attr_accessor media_type: String + + attr_accessor type: :text + + def initialize: ( + data: String, + media_type: String, + ?type: :text + ) -> void + + def to_hash: -> { + data: String, + media_type: String, + type: :text + } + end + end + + type chat_completion_video_object = + { + type: :video_url, + video_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + } + + class ChatCompletionVideoObject < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :video_url + + attr_accessor video_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + + def initialize: ( + video_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url, + ?type: :video_url + ) -> void + + def to_hash: -> { + type: :video_url, + video_url: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url + } + + type video_url = + String + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::VideoURL::ChatCompletionVideoURLObject + + module VideoURL + extend Hanzoai::Internal::Type::Union + + type chat_completion_video_url_object = + { url: String, detail: String } + + class ChatCompletionVideoURLObject < Hanzoai::Internal::Type::BaseModel + attr_accessor url: String + + attr_reader detail: String? + + def detail=: (String) -> String + + def initialize: (url: String, ?detail: String) -> void + + def to_hash: -> { url: String, detail: String } + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionVideoObject::video_url] + end + end + + type chat_completion_file_object = + { + file: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: :file + } + + class ChatCompletionFileObject < Hanzoai::Internal::Type::BaseModel + attr_accessor file: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File + + attr_accessor type: :file + + def initialize: ( + file: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + ?type: :file + ) -> void + + def to_hash: -> { + file: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::UnionMember1::ChatCompletionFileObject::File, + type: :file + } + + type file = + { + file_data: String, + file_id: String, + filename: String, + format_: String + } + + class File < Hanzoai::Internal::Type::BaseModel + attr_reader file_data: String? + + def file_data=: (String) -> String + + attr_reader file_id: String? + + def file_id=: (String) -> String + + attr_reader filename: String? + + def filename=: (String) -> String + + attr_reader format_: String? + + def format_=: (String) -> String + + def initialize: ( + ?file_data: String, + ?file_id: String, + ?filename: String, + ?format_: String + ) -> void + + def to_hash: -> { + file_data: String, + file_id: String, + filename: String, + format_: String + } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::Content::union_member1] + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionUserMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_assistant_message = + { + role: :assistant, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content?, + function_call: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + name: String?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + tool_calls: ::Array[Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]? + } + + class ChatCompletionAssistantMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor role: :assistant + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl + + attr_accessor content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content? + + attr_accessor function_call: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall? + + attr_accessor name: String? + + attr_accessor reasoning_content: String? + + attr_accessor thinking_blocks: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]? + + attr_accessor tool_calls: ::Array[Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]? + + def initialize: ( + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + ?content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content?, + ?function_call: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + ?name: String?, + ?reasoning_content: String?, + ?thinking_blocks: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + ?tool_calls: ::Array[Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]?, + ?role: :assistant + ) -> void + + def to_hash: -> { + role: :assistant, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::CacheControl, + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content?, + function_call: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::FunctionCall?, + name: String?, + reasoning_content: String?, + thinking_blocks: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block]?, + tool_calls: ::Array[Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall]? + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + type content = + String + | ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::union_member1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock + + module UnionMember1 + extend Hanzoai::Internal::Type::Union + + type chat_completion_text_object = + { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + class ChatCompletionTextObject < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionTextObject::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::UnionMember1::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::Content::union_member1] + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type function_call = + { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class FunctionCall < Hanzoai::Internal::Type::BaseModel + attr_reader arguments: String? + + def arguments=: (String) -> String + + attr_accessor name: String? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + ?arguments: String, + ?name: String?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + end + + type thinking_block = + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock + + module ThinkingBlock + extend Hanzoai::Internal::Type::Union + + type chat_completion_thinking_block = + { + type: :thinking, + cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + class ChatCompletionThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :thinking + + attr_accessor cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control? + + attr_reader signature: String? + + def signature=: (String) -> String + + attr_reader thinking: String? + + def thinking=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + ?signature: String, + ?thinking: String, + ?type: :thinking + ) -> void + + def to_hash: -> { + type: :thinking, + cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control?, + signature: String, + thinking: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_redacted_thinking_block = + { + type: :redacted_thinking, + cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + class ChatCompletionRedactedThinkingBlock < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :redacted_thinking + + attr_accessor cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control? + + attr_reader data: String? + + def data=: (String) -> String + + def initialize: ( + ?cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + ?data: String, + ?type: :redacted_thinking + ) -> void + + def to_hash: -> { + type: :redacted_thinking, + cache_control: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control?, + data: String + } + + type cache_control = + ::Hash[Symbol, top] + | Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::CacheControl::ChatCompletionCachedContent + + module CacheControl + extend Hanzoai::Internal::Type::Union + + type chat_completion_cached_content = { type: :ephemeral } + + class ChatCompletionCachedContent < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ThinkingBlock::ChatCompletionRedactedThinkingBlock::cache_control] + + UnionMember0Map: Hanzoai::Internal::Type::Converter + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::thinking_block] + end + + type tool_call = + { + id: String?, + function: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: :function + } + + class ToolCall < Hanzoai::Internal::Type::BaseModel + attr_accessor id: String? + + attr_accessor function: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function + + attr_accessor type: :function + + def initialize: ( + id: String?, + function: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + ?type: :function + ) -> void + + def to_hash: -> { + id: String?, + function: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionAssistantMessage::ToolCall::Function, + type: :function + } + + type function = + { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + + class Function < Hanzoai::Internal::Type::BaseModel + attr_reader arguments: String? + + def arguments=: (String) -> String + + attr_accessor name: String? + + attr_accessor provider_specific_fields: ::Hash[Symbol, top]? + + def initialize: ( + ?arguments: String, + ?name: String?, + ?provider_specific_fields: ::Hash[Symbol, top]? + ) -> void + + def to_hash: -> { + arguments: String, + name: String?, + provider_specific_fields: ::Hash[Symbol, top]? + } + end + end + end + + type chat_completion_tool_message = + { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::content, + role: :tool, + tool_call_id: String + } + + class ChatCompletionToolMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::content + + attr_accessor role: :tool + + attr_accessor tool_call_id: String + + def initialize: ( + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::content, + tool_call_id: String, + ?role: :tool + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::content, + role: :tool, + tool_call_id: String + } + + type content = + String + | ::Array[Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::Content::UnionMember1::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionToolMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_system_message = + { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::content, + role: :system, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + + class ChatCompletionSystemMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::content + + attr_accessor role: :system + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl + + attr_reader name: String? + + def name=: (String) -> String + + def initialize: ( + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::content, + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + ?name: String, + ?role: :system + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::content, + role: :system, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::CacheControl, + name: String + } + + type content = String | ::Array[top] + + module Content + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionSystemMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + type chat_completion_function_message = + { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + role: :function, + tool_call_id: String? + } + + class ChatCompletionFunctionMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content? + + attr_accessor name: String + + attr_accessor role: :function + + attr_accessor tool_call_id: String? + + def initialize: ( + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + tool_call_id: String?, + ?role: :function + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content?, + name: String, + role: :function, + tool_call_id: String? + } + + type content = + String + | ::Array[Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1] + + module Content + extend Hanzoai::Internal::Type::Union + + type union_member1 = + { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :text + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + + def initialize: ( + text: String, + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl, + ?type: :text + ) -> void + + def to_hash: -> { + text: String, + type: :text, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::Content::UnionMember1::CacheControl + } + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionFunctionMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + end + + type chat_completion_developer_message = + { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content, + role: :developer, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + + class ChatCompletionDeveloperMessage < Hanzoai::Internal::Type::BaseModel + attr_accessor content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content + + attr_accessor role: :developer + + attr_reader cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl? + + def cache_control=: ( + Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl + ) -> Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl + + attr_reader name: String? + + def name=: (String) -> String + + def initialize: ( + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content, + ?cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + ?name: String, + ?role: :developer + ) -> void + + def to_hash: -> { + content: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content, + role: :developer, + cache_control: Hanzoai::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::CacheControl, + name: String + } + + type content = String | ::Array[top] + + module Content + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::Message::ChatCompletionDeveloperMessage::content] + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + + type cache_control = { type: :ephemeral } + + class CacheControl < Hanzoai::Internal::Type::BaseModel + attr_accessor type: :ephemeral + + def initialize: (?type: :ephemeral) -> void + + def to_hash: -> { type: :ephemeral } + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::message] + end + + type function_call = String | ::Hash[Symbol, top] + + module FunctionCall + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::function_call] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + + type stop = String | ::Array[String] + + module Stop + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::stop] + + StringArray: Hanzoai::Internal::Type::Converter + end + + type tool_choice = String | ::Hash[Symbol, top] + + module ToolChoice + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::tool_choice] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end end end end diff --git a/sig/hanzoai/models/organization/info_retrieve_response.rbs b/sig/hanzoai/models/organization/info_retrieve_response.rbs deleted file mode 100644 index 48b7d219..00000000 --- a/sig/hanzoai/models/organization/info_retrieve_response.rbs +++ /dev/null @@ -1,401 +0,0 @@ -module Hanzoai - module Models - module Organization - type info_retrieve_response = - { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] - } - - class InfoRetrieveResponse < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_id: String - - attr_accessor created_at: Time - - attr_accessor created_by: String - - attr_accessor models: ::Array[String] - - attr_accessor updated_at: Time - - attr_accessor updated_by: String - - attr_accessor llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable? - - attr_reader members: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member]? - - def members=: ( - ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member] - ) -> ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member] - - attr_accessor metadata: top? - - attr_accessor organization_alias: String? - - attr_accessor organization_id: String? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader teams: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team]? - - def teams=: ( - ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] - ) -> ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] - - def initialize: ( - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - ?llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable?, - ?members: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member], - ?metadata: top?, - ?organization_alias: String?, - ?organization_id: String?, - ?spend: Float, - ?teams: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] - ) -> void - - def to_hash: -> { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team] - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - - type member = - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - class Member < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String - - attr_accessor updated_at: Time - - attr_accessor user_id: String - - attr_accessor budget_id: String? - - attr_accessor llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? - - def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? - ) -> void - - def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - - type team = - { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - class Team < Hanzoai::Internal::Type::BaseModel - attr_accessor team_id: String - - attr_reader admins: ::Array[top]? - - def admins=: (::Array[top]) -> ::Array[top] - - attr_reader blocked: bool? - - def blocked=: (bool) -> bool - - attr_accessor budget_duration: String? - - attr_accessor budget_reset_at: Time? - - attr_accessor created_at: Time? - - attr_accessor llm_model_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_reader members: ::Array[top]? - - def members=: (::Array[top]) -> ::Array[top] - - attr_reader members_with_roles: ::Array[Hanzoai::Member]? - - def members_with_roles=: ( - ::Array[Hanzoai::Member] - ) -> ::Array[Hanzoai::Member] - - attr_accessor metadata: top? - - attr_accessor model_id: Integer? - - attr_reader models: ::Array[top]? - - def models=: (::Array[top]) -> ::Array[top] - - attr_accessor organization_id: String? - - attr_accessor rpm_limit: Integer? - - attr_accessor spend: Float? - - attr_accessor team_alias: String? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - team_id: String, - ?admins: ::Array[top], - ?blocked: bool, - ?budget_duration: String?, - ?budget_reset_at: Time?, - ?created_at: Time?, - ?llm_model_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, - ?model_id: Integer?, - ?models: ::Array[top], - ?organization_id: String?, - ?rpm_limit: Integer?, - ?spend: Float?, - ?team_alias: String?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - type llm_model_table = - { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases? - } - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - attr_accessor created_by: String - - attr_accessor updated_by: String - - attr_accessor model_aliases: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases? - - def initialize: ( - created_by: String, - updated_by: String, - ?model_aliases: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases? - ) -> void - - def to_hash: -> { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases? - } - - type model_aliases = top | String - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::Organization::InfoRetrieveResponse::Team::LlmModelTable::model_aliases] - end - end - end - end - end - end -end diff --git a/sig/hanzoai/models/organization_add_member_response.rbs b/sig/hanzoai/models/organization_add_member_response.rbs index 8245d562..2ec8e1f4 100644 --- a/sig/hanzoai/models/organization_add_member_response.rbs +++ b/sig/hanzoai/models/organization_add_member_response.rbs @@ -3,153 +3,49 @@ module Hanzoai type organization_add_member_response = { organization_id: String, - updated_organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership], + updated_organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable], updated_users: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] } class OrganizationAddMemberResponse < Hanzoai::Internal::Type::BaseModel attr_accessor organization_id: String - attr_accessor updated_organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership] + attr_accessor updated_organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable] attr_accessor updated_users: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] def initialize: ( organization_id: String, - updated_organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership], + updated_organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable], updated_users: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] ) -> void def to_hash: -> { organization_id: String, - updated_organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership], + updated_organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable], updated_users: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser] } - type updated_organization_membership = - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - class UpdatedOrganizationMembership < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String - - attr_accessor updated_at: Time - - attr_accessor user_id: String - - attr_accessor budget_id: String? - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? - - def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? - ) -> void - - def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - type updated_user = { user_id: String, budget_duration: String?, budget_reset_at: Time?, + created_at: Time?, max_budget: Float?, - metadata: top?, - model_max_budget: top?, - model_spend: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, models: ::Array[top], - organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership]?, + object_permission: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, rpm_limit: Integer?, spend: Float, sso_user_id: String?, teams: ::Array[String], tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, user_email: String?, user_role: String? } @@ -161,19 +57,23 @@ module Hanzoai attr_accessor budget_reset_at: Time? + attr_accessor created_at: Time? + attr_accessor max_budget: Float? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_spend: top? + attr_accessor model_spend: ::Hash[Symbol, top]? attr_reader models: ::Array[top]? def models=: (::Array[top]) -> ::Array[top] - attr_accessor organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership]? + attr_accessor object_permission: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission? + + attr_accessor organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]? attr_accessor rpm_limit: Integer? @@ -189,6 +89,10 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor updated_at: Time? + + attr_accessor user_alias: String? + attr_accessor user_email: String? attr_accessor user_role: String? @@ -197,17 +101,21 @@ module Hanzoai user_id: String, ?budget_duration: String?, ?budget_reset_at: Time?, + ?created_at: Time?, ?max_budget: Float?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_spend: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_spend: ::Hash[Symbol, top]?, ?models: ::Array[top], - ?organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership]?, + ?object_permission: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission?, + ?organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, ?rpm_limit: Integer?, ?spend: Float, ?sso_user_id: String?, ?teams: ::Array[String], ?tpm_limit: Integer?, + ?updated_at: Time?, + ?user_alias: String?, ?user_email: String?, ?user_role: String? ) -> void @@ -216,127 +124,70 @@ module Hanzoai user_id: String, budget_duration: String?, budget_reset_at: Time?, + created_at: Time?, max_budget: Float?, - metadata: top?, - model_max_budget: top?, - model_spend: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, models: ::Array[top], - organization_memberships: ::Array[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership]?, + object_permission: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, rpm_limit: Integer?, spend: Float, sso_user_id: String?, teams: ::Array[String], tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, user_email: String?, user_role: String? } - type organization_membership = + type object_permission = { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? } - class OrganizationMembership < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String - - attr_accessor updated_at: Time + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String - attr_accessor user_id: String + attr_accessor agent_access_groups: ::Array[String]? - attr_accessor budget_id: String? + attr_accessor agents: ::Array[String]? - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable? + attr_accessor mcp_access_groups: ::Array[String]? - attr_reader spend: Float? + attr_accessor mcp_servers: ::Array[String]? - def spend=: (Float) -> Float + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? + attr_accessor vector_stores: ::Array[String]? def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? ) -> void def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end end end end diff --git a/sig/hanzoai/models/organization_create_params.rbs b/sig/hanzoai/models/organization_create_params.rbs index 19a3b33c..119eddfb 100644 --- a/sig/hanzoai/models/organization_create_params.rbs +++ b/sig/hanzoai/models/organization_create_params.rbs @@ -7,9 +7,12 @@ module Hanzoai budget_id: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, Integer]?, + model_tpm_limit: ::Hash[Symbol, Integer]?, models: ::Array[top], + object_permission: Hanzoai::OrganizationCreateParams::ObjectPermission?, organization_id: String?, rpm_limit: Integer?, soft_budget: Float?, @@ -31,14 +34,20 @@ module Hanzoai attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? + + attr_accessor model_rpm_limit: ::Hash[Symbol, Integer]? + + attr_accessor model_tpm_limit: ::Hash[Symbol, Integer]? attr_reader models: ::Array[top]? def models=: (::Array[top]) -> ::Array[top] + attr_accessor object_permission: Hanzoai::OrganizationCreateParams::ObjectPermission? + attr_accessor organization_id: String? attr_accessor rpm_limit: Integer? @@ -53,9 +62,12 @@ module Hanzoai ?budget_id: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, Integer]?, + ?model_tpm_limit: ::Hash[Symbol, Integer]?, ?models: ::Array[top], + ?object_permission: Hanzoai::OrganizationCreateParams::ObjectPermission?, ?organization_id: String?, ?rpm_limit: Integer?, ?soft_budget: Float?, @@ -69,15 +81,60 @@ module Hanzoai budget_id: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, Integer]?, + model_tpm_limit: ::Hash[Symbol, Integer]?, models: ::Array[top], + object_permission: Hanzoai::OrganizationCreateParams::ObjectPermission?, organization_id: String?, rpm_limit: Integer?, soft_budget: Float?, tpm_limit: Integer?, request_options: Hanzoai::RequestOptions } + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end end end end diff --git a/sig/hanzoai/models/organization_create_response.rbs b/sig/hanzoai/models/organization_create_response.rbs index 1334c29d..4f5b2b02 100644 --- a/sig/hanzoai/models/organization_create_response.rbs +++ b/sig/hanzoai/models/organization_create_response.rbs @@ -9,9 +9,13 @@ module Hanzoai organization_id: String, updated_at: Time, updated_by: String, - metadata: top?, + litellm_budget_table: Hanzoai::BudgetTable?, + metadata: ::Hash[Symbol, top]?, + object_permission: Hanzoai::Models::OrganizationCreateResponse::ObjectPermission?, + object_permission_id: String?, organization_alias: String?, - spend: Float + spend: Float, + users: ::Array[Hanzoai::Models::OrganizationCreateResponse::User]? } class OrganizationCreateResponse < Hanzoai::Internal::Type::BaseModel @@ -29,7 +33,13 @@ module Hanzoai attr_accessor updated_by: String - attr_accessor metadata: top? + attr_accessor litellm_budget_table: Hanzoai::BudgetTable? + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor object_permission: Hanzoai::Models::OrganizationCreateResponse::ObjectPermission? + + attr_accessor object_permission_id: String? attr_accessor organization_alias: String? @@ -37,6 +47,8 @@ module Hanzoai def spend=: (Float) -> Float + attr_accessor users: ::Array[Hanzoai::Models::OrganizationCreateResponse::User]? + def initialize: ( budget_id: String, created_at: Time, @@ -45,9 +57,13 @@ module Hanzoai organization_id: String, updated_at: Time, updated_by: String, - ?metadata: top?, + ?litellm_budget_table: Hanzoai::BudgetTable?, + ?metadata: ::Hash[Symbol, top]?, + ?object_permission: Hanzoai::Models::OrganizationCreateResponse::ObjectPermission?, + ?object_permission_id: String?, ?organization_alias: String?, - ?spend: Float + ?spend: Float, + ?users: ::Array[Hanzoai::Models::OrganizationCreateResponse::User]? ) -> void def to_hash: -> { @@ -58,10 +74,226 @@ module Hanzoai organization_id: String, updated_at: Time, updated_by: String, - metadata: top?, + litellm_budget_table: Hanzoai::BudgetTable?, + metadata: ::Hash[Symbol, top]?, + object_permission: Hanzoai::Models::OrganizationCreateResponse::ObjectPermission?, + object_permission_id: String?, organization_alias: String?, - spend: Float + spend: Float, + users: ::Array[Hanzoai::Models::OrganizationCreateResponse::User]? } + + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type user = + { + user_id: String, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + max_budget: Float?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, + models: ::Array[top], + object_permission: Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, + rpm_limit: Integer?, + spend: Float, + sso_user_id: String?, + teams: ::Array[String], + tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, + user_email: String?, + user_role: String? + } + + class User < Hanzoai::Internal::Type::BaseModel + attr_accessor user_id: String + + attr_accessor budget_duration: String? + + attr_accessor budget_reset_at: Time? + + attr_accessor created_at: Time? + + attr_accessor max_budget: Float? + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor model_max_budget: ::Hash[Symbol, top]? + + attr_accessor model_spend: ::Hash[Symbol, top]? + + attr_reader models: ::Array[top]? + + def models=: (::Array[top]) -> ::Array[top] + + attr_accessor object_permission: Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission? + + attr_accessor organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]? + + attr_accessor rpm_limit: Integer? + + attr_reader spend: Float? + + def spend=: (Float) -> Float + + attr_accessor sso_user_id: String? + + attr_reader teams: ::Array[String]? + + def teams=: (::Array[String]) -> ::Array[String] + + attr_accessor tpm_limit: Integer? + + attr_accessor updated_at: Time? + + attr_accessor user_alias: String? + + attr_accessor user_email: String? + + attr_accessor user_role: String? + + def initialize: ( + user_id: String, + ?budget_duration: String?, + ?budget_reset_at: Time?, + ?created_at: Time?, + ?max_budget: Float?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_spend: ::Hash[Symbol, top]?, + ?models: ::Array[top], + ?object_permission: Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission?, + ?organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, + ?rpm_limit: Integer?, + ?spend: Float, + ?sso_user_id: String?, + ?teams: ::Array[String], + ?tpm_limit: Integer?, + ?updated_at: Time?, + ?user_alias: String?, + ?user_email: String?, + ?user_role: String? + ) -> void + + def to_hash: -> { + user_id: String, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + max_budget: Float?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, + models: ::Array[top], + object_permission: Hanzoai::Models::OrganizationCreateResponse::User::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, + rpm_limit: Integer?, + spend: Float, + sso_user_id: String?, + teams: ::Array[String], + tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, + user_email: String?, + user_role: String? + } + + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + end end end end diff --git a/sig/hanzoai/models/organization_delete_response.rbs b/sig/hanzoai/models/organization_delete_response.rbs index 1ae4170f..c303f43c 100644 --- a/sig/hanzoai/models/organization_delete_response.rbs +++ b/sig/hanzoai/models/organization_delete_response.rbs @@ -1,403 +1,7 @@ module Hanzoai module Models - type organization_delete_response_item = - { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - } - - class OrganizationDeleteResponseItem < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_id: String - - attr_accessor created_at: Time - - attr_accessor created_by: String - - attr_accessor models: ::Array[String] - - attr_accessor updated_at: Time - - attr_accessor updated_by: String - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable? - - attr_reader members: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member]? - - def members=: ( - ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member] - ) -> ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member] - - attr_accessor metadata: top? - - attr_accessor organization_alias: String? - - attr_accessor organization_id: String? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader teams: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team]? - - def teams=: ( - ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - ) -> ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - - def initialize: ( - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - ?llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable?, - ?members: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member], - ?metadata: top?, - ?organization_alias: String?, - ?organization_id: String?, - ?spend: Float, - ?teams: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - ) -> void - - def to_hash: -> { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team] - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - - type member = - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - class Member < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String - - attr_accessor updated_at: Time - - attr_accessor user_id: String - - attr_accessor budget_id: String? - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? - - def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? - ) -> void - - def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationDeleteResponseItem::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - - type team = - { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - class Team < Hanzoai::Internal::Type::BaseModel - attr_accessor team_id: String - - attr_reader admins: ::Array[top]? - - def admins=: (::Array[top]) -> ::Array[top] - - attr_reader blocked: bool? - - def blocked=: (bool) -> bool - - attr_accessor budget_duration: String? - - attr_accessor budget_reset_at: Time? - - attr_accessor created_at: Time? - - attr_accessor llm_model_table: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_reader members: ::Array[top]? - - def members=: (::Array[top]) -> ::Array[top] - - attr_reader members_with_roles: ::Array[Hanzoai::Member]? - - def members_with_roles=: ( - ::Array[Hanzoai::Member] - ) -> ::Array[Hanzoai::Member] - - attr_accessor metadata: top? - - attr_accessor model_id: Integer? - - attr_reader models: ::Array[top]? - - def models=: (::Array[top]) -> ::Array[top] - - attr_accessor organization_id: String? - - attr_accessor rpm_limit: Integer? - - attr_accessor spend: Float? - - attr_accessor team_alias: String? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - team_id: String, - ?admins: ::Array[top], - ?blocked: bool, - ?budget_duration: String?, - ?budget_reset_at: Time?, - ?created_at: Time?, - ?llm_model_table: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, - ?model_id: Integer?, - ?models: ::Array[top], - ?organization_id: String?, - ?rpm_limit: Integer?, - ?spend: Float?, - ?team_alias: String?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - type llm_model_table = - { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases? - } - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - attr_accessor created_by: String - - attr_accessor updated_by: String - - attr_accessor model_aliases: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases? - - def initialize: ( - created_by: String, - updated_by: String, - ?model_aliases: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases? - ) -> void - - def to_hash: -> { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases? - } - - type model_aliases = top | String - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::OrganizationDeleteResponseItem::Team::LlmModelTable::model_aliases] - end - end - end - end - type organization_delete_response = - ::Array[Hanzoai::Models::OrganizationDeleteResponseItem] + ::Array[Hanzoai::OrganizationTableWithMembers] OrganizationDeleteResponse: Hanzoai::Internal::Type::Converter end diff --git a/sig/hanzoai/models/organization_list_params.rbs b/sig/hanzoai/models/organization_list_params.rbs index d6a5e4fa..14c2c450 100644 --- a/sig/hanzoai/models/organization_list_params.rbs +++ b/sig/hanzoai/models/organization_list_params.rbs @@ -1,15 +1,28 @@ module Hanzoai module Models type organization_list_params = - { } & Hanzoai::Internal::Type::request_parameters + { org_alias: String?, org_id: String? } + & Hanzoai::Internal::Type::request_parameters class OrganizationListParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - def initialize: (?request_options: Hanzoai::request_opts) -> void + attr_accessor org_alias: String? - def to_hash: -> { request_options: Hanzoai::RequestOptions } + attr_accessor org_id: String? + + def initialize: ( + ?org_alias: String?, + ?org_id: String?, + ?request_options: Hanzoai::request_opts + ) -> void + + def to_hash: -> { + org_alias: String?, + org_id: String?, + request_options: Hanzoai::RequestOptions + } end end end diff --git a/sig/hanzoai/models/organization_list_response.rbs b/sig/hanzoai/models/organization_list_response.rbs index 35dddab7..34aba6c2 100644 --- a/sig/hanzoai/models/organization_list_response.rbs +++ b/sig/hanzoai/models/organization_list_response.rbs @@ -1,403 +1,7 @@ module Hanzoai module Models - type organization_list_response_item = - { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::OrganizationListResponseItem::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - } - - class OrganizationListResponseItem < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_id: String - - attr_accessor created_at: Time - - attr_accessor created_by: String - - attr_accessor models: ::Array[String] - - attr_accessor updated_at: Time - - attr_accessor updated_by: String - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable? - - attr_reader members: ::Array[Hanzoai::Models::OrganizationListResponseItem::Member]? - - def members=: ( - ::Array[Hanzoai::Models::OrganizationListResponseItem::Member] - ) -> ::Array[Hanzoai::Models::OrganizationListResponseItem::Member] - - attr_accessor metadata: top? - - attr_accessor organization_alias: String? - - attr_accessor organization_id: String? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader teams: ::Array[Hanzoai::Models::OrganizationListResponseItem::Team]? - - def teams=: ( - ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - ) -> ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - - def initialize: ( - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - ?llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable?, - ?members: ::Array[Hanzoai::Models::OrganizationListResponseItem::Member], - ?metadata: top?, - ?organization_alias: String?, - ?organization_id: String?, - ?spend: Float, - ?teams: ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - ) -> void - - def to_hash: -> { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::OrganizationListResponseItem::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::OrganizationListResponseItem::Team] - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - - type member = - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - class Member < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String - - attr_accessor updated_at: Time - - attr_accessor user_id: String - - attr_accessor budget_id: String? - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? - - def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? - ) -> void - - def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationListResponseItem::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - - type team = - { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - class Team < Hanzoai::Internal::Type::BaseModel - attr_accessor team_id: String - - attr_reader admins: ::Array[top]? - - def admins=: (::Array[top]) -> ::Array[top] - - attr_reader blocked: bool? - - def blocked=: (bool) -> bool - - attr_accessor budget_duration: String? - - attr_accessor budget_reset_at: Time? - - attr_accessor created_at: Time? - - attr_accessor llm_model_table: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_reader members: ::Array[top]? - - def members=: (::Array[top]) -> ::Array[top] - - attr_reader members_with_roles: ::Array[Hanzoai::Member]? - - def members_with_roles=: ( - ::Array[Hanzoai::Member] - ) -> ::Array[Hanzoai::Member] - - attr_accessor metadata: top? - - attr_accessor model_id: Integer? - - attr_reader models: ::Array[top]? - - def models=: (::Array[top]) -> ::Array[top] - - attr_accessor organization_id: String? - - attr_accessor rpm_limit: Integer? - - attr_accessor spend: Float? - - attr_accessor team_alias: String? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - team_id: String, - ?admins: ::Array[top], - ?blocked: bool, - ?budget_duration: String?, - ?budget_reset_at: Time?, - ?created_at: Time?, - ?llm_model_table: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, - ?model_id: Integer?, - ?models: ::Array[top], - ?organization_id: String?, - ?rpm_limit: Integer?, - ?spend: Float?, - ?team_alias: String?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - type llm_model_table = - { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases? - } - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - attr_accessor created_by: String - - attr_accessor updated_by: String - - attr_accessor model_aliases: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases? - - def initialize: ( - created_by: String, - updated_by: String, - ?model_aliases: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases? - ) -> void - - def to_hash: -> { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases? - } - - type model_aliases = top | String - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::OrganizationListResponseItem::Team::LlmModelTable::model_aliases] - end - end - end - end - type organization_list_response = - ::Array[Hanzoai::Models::OrganizationListResponseItem] + ::Array[Hanzoai::OrganizationTableWithMembers] OrganizationListResponse: Hanzoai::Internal::Type::Converter end diff --git a/sig/hanzoai/models/organization_membership_table.rbs b/sig/hanzoai/models/organization_membership_table.rbs new file mode 100644 index 00000000..fbfc3a5d --- /dev/null +++ b/sig/hanzoai/models/organization_membership_table.rbs @@ -0,0 +1,64 @@ +module Hanzoai + module Models + type organization_membership_table = + { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + litellm_budget_table: Hanzoai::BudgetTable?, + spend: Float, + user: top, + user_role: String? + } + + class OrganizationMembershipTable < Hanzoai::Internal::Type::BaseModel + attr_accessor created_at: Time + + attr_accessor organization_id: String + + attr_accessor updated_at: Time + + attr_accessor user_id: String + + attr_accessor budget_id: String? + + attr_accessor litellm_budget_table: Hanzoai::BudgetTable? + + attr_reader spend: Float? + + def spend=: (Float) -> Float + + attr_reader user: top? + + def user=: (top) -> top + + attr_accessor user_role: String? + + def initialize: ( + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + ?budget_id: String?, + ?litellm_budget_table: Hanzoai::BudgetTable?, + ?spend: Float, + ?user: top, + ?user_role: String? + ) -> void + + def to_hash: -> { + created_at: Time, + organization_id: String, + updated_at: Time, + user_id: String, + budget_id: String?, + litellm_budget_table: Hanzoai::BudgetTable?, + spend: Float, + user: top, + user_role: String? + } + end + end +end diff --git a/sig/hanzoai/models/organization_table_with_members.rbs b/sig/hanzoai/models/organization_table_with_members.rbs new file mode 100644 index 00000000..4aae0a52 --- /dev/null +++ b/sig/hanzoai/models/organization_table_with_members.rbs @@ -0,0 +1,510 @@ +module Hanzoai + module Models + type organization_table_with_members = + { + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + updated_at: Time, + updated_by: String, + litellm_budget_table: Hanzoai::BudgetTable?, + members: ::Array[Hanzoai::OrganizationMembershipTable], + metadata: ::Hash[Symbol, top]?, + object_permission: Hanzoai::OrganizationTableWithMembers::ObjectPermission?, + object_permission_id: String?, + organization_alias: String?, + organization_id: String?, + spend: Float, + teams: ::Array[Hanzoai::OrganizationTableWithMembers::Team], + users: ::Array[Hanzoai::OrganizationTableWithMembers::User]? + } + + class OrganizationTableWithMembers < Hanzoai::Internal::Type::BaseModel + attr_accessor budget_id: String + + attr_accessor created_at: Time + + attr_accessor created_by: String + + attr_accessor models: ::Array[String] + + attr_accessor updated_at: Time + + attr_accessor updated_by: String + + attr_accessor litellm_budget_table: Hanzoai::BudgetTable? + + attr_reader members: ::Array[Hanzoai::OrganizationMembershipTable]? + + def members=: ( + ::Array[Hanzoai::OrganizationMembershipTable] + ) -> ::Array[Hanzoai::OrganizationMembershipTable] + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor object_permission: Hanzoai::OrganizationTableWithMembers::ObjectPermission? + + attr_accessor object_permission_id: String? + + attr_accessor organization_alias: String? + + attr_accessor organization_id: String? + + attr_reader spend: Float? + + def spend=: (Float) -> Float + + attr_reader teams: ::Array[Hanzoai::OrganizationTableWithMembers::Team]? + + def teams=: ( + ::Array[Hanzoai::OrganizationTableWithMembers::Team] + ) -> ::Array[Hanzoai::OrganizationTableWithMembers::Team] + + attr_accessor users: ::Array[Hanzoai::OrganizationTableWithMembers::User]? + + def initialize: ( + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + updated_at: Time, + updated_by: String, + ?litellm_budget_table: Hanzoai::BudgetTable?, + ?members: ::Array[Hanzoai::OrganizationMembershipTable], + ?metadata: ::Hash[Symbol, top]?, + ?object_permission: Hanzoai::OrganizationTableWithMembers::ObjectPermission?, + ?object_permission_id: String?, + ?organization_alias: String?, + ?organization_id: String?, + ?spend: Float, + ?teams: ::Array[Hanzoai::OrganizationTableWithMembers::Team], + ?users: ::Array[Hanzoai::OrganizationTableWithMembers::User]? + ) -> void + + def to_hash: -> { + budget_id: String, + created_at: Time, + created_by: String, + models: ::Array[String], + updated_at: Time, + updated_by: String, + litellm_budget_table: Hanzoai::BudgetTable?, + members: ::Array[Hanzoai::OrganizationMembershipTable], + metadata: ::Hash[Symbol, top]?, + object_permission: Hanzoai::OrganizationTableWithMembers::ObjectPermission?, + object_permission_id: String?, + organization_alias: String?, + organization_id: String?, + spend: Float, + teams: ::Array[Hanzoai::OrganizationTableWithMembers::Team], + users: ::Array[Hanzoai::OrganizationTableWithMembers::User]? + } + + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type team = + { + team_id: String, + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + litellm_model_table: top, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: ::Hash[Symbol, top]?, + model_id: Integer?, + models: ::Array[top], + object_permission: Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission?, + object_permission_id: String?, + organization_id: String?, + router_settings: ::Hash[Symbol, top]?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + team_member_permissions: ::Array[String]?, + tpm_limit: Integer?, + updated_at: Time? + } + + class Team < Hanzoai::Internal::Type::BaseModel + attr_accessor team_id: String + + attr_reader admins: ::Array[top]? + + def admins=: (::Array[top]) -> ::Array[top] + + attr_reader blocked: bool? + + def blocked=: (bool) -> bool + + attr_accessor budget_duration: String? + + attr_accessor budget_reset_at: Time? + + attr_accessor created_at: Time? + + attr_reader litellm_model_table: top? + + def litellm_model_table=: (top) -> top + + attr_accessor max_budget: Float? + + attr_accessor max_parallel_requests: Integer? + + attr_reader members: ::Array[top]? + + def members=: (::Array[top]) -> ::Array[top] + + attr_reader members_with_roles: ::Array[Hanzoai::Member]? + + def members_with_roles=: ( + ::Array[Hanzoai::Member] + ) -> ::Array[Hanzoai::Member] + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor model_id: Integer? + + attr_reader models: ::Array[top]? + + def models=: (::Array[top]) -> ::Array[top] + + attr_accessor object_permission: Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission? + + attr_accessor object_permission_id: String? + + attr_accessor organization_id: String? + + attr_accessor router_settings: ::Hash[Symbol, top]? + + attr_accessor rpm_limit: Integer? + + attr_accessor spend: Float? + + attr_accessor team_alias: String? + + attr_accessor team_member_permissions: ::Array[String]? + + attr_accessor tpm_limit: Integer? + + attr_accessor updated_at: Time? + + def initialize: ( + team_id: String, + ?admins: ::Array[top], + ?blocked: bool, + ?budget_duration: String?, + ?budget_reset_at: Time?, + ?created_at: Time?, + ?litellm_model_table: top, + ?max_budget: Float?, + ?max_parallel_requests: Integer?, + ?members: ::Array[top], + ?members_with_roles: ::Array[Hanzoai::Member], + ?metadata: ::Hash[Symbol, top]?, + ?model_id: Integer?, + ?models: ::Array[top], + ?object_permission: Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission?, + ?object_permission_id: String?, + ?organization_id: String?, + ?router_settings: ::Hash[Symbol, top]?, + ?rpm_limit: Integer?, + ?spend: Float?, + ?team_alias: String?, + ?team_member_permissions: ::Array[String]?, + ?tpm_limit: Integer?, + ?updated_at: Time? + ) -> void + + def to_hash: -> { + team_id: String, + admins: ::Array[top], + blocked: bool, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + litellm_model_table: top, + max_budget: Float?, + max_parallel_requests: Integer?, + members: ::Array[top], + members_with_roles: ::Array[Hanzoai::Member], + metadata: ::Hash[Symbol, top]?, + model_id: Integer?, + models: ::Array[top], + object_permission: Hanzoai::OrganizationTableWithMembers::Team::ObjectPermission?, + object_permission_id: String?, + organization_id: String?, + router_settings: ::Hash[Symbol, top]?, + rpm_limit: Integer?, + spend: Float?, + team_alias: String?, + team_member_permissions: ::Array[String]?, + tpm_limit: Integer?, + updated_at: Time? + } + + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + end + + type user = + { + user_id: String, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + max_budget: Float?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, + models: ::Array[top], + object_permission: Hanzoai::OrganizationTableWithMembers::User::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, + rpm_limit: Integer?, + spend: Float, + sso_user_id: String?, + teams: ::Array[String], + tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, + user_email: String?, + user_role: String? + } + + class User < Hanzoai::Internal::Type::BaseModel + attr_accessor user_id: String + + attr_accessor budget_duration: String? + + attr_accessor budget_reset_at: Time? + + attr_accessor created_at: Time? + + attr_accessor max_budget: Float? + + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor model_max_budget: ::Hash[Symbol, top]? + + attr_accessor model_spend: ::Hash[Symbol, top]? + + attr_reader models: ::Array[top]? + + def models=: (::Array[top]) -> ::Array[top] + + attr_accessor object_permission: Hanzoai::OrganizationTableWithMembers::User::ObjectPermission? + + attr_accessor organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]? + + attr_accessor rpm_limit: Integer? + + attr_reader spend: Float? + + def spend=: (Float) -> Float + + attr_accessor sso_user_id: String? + + attr_reader teams: ::Array[String]? + + def teams=: (::Array[String]) -> ::Array[String] + + attr_accessor tpm_limit: Integer? + + attr_accessor updated_at: Time? + + attr_accessor user_alias: String? + + attr_accessor user_email: String? + + attr_accessor user_role: String? + + def initialize: ( + user_id: String, + ?budget_duration: String?, + ?budget_reset_at: Time?, + ?created_at: Time?, + ?max_budget: Float?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_spend: ::Hash[Symbol, top]?, + ?models: ::Array[top], + ?object_permission: Hanzoai::OrganizationTableWithMembers::User::ObjectPermission?, + ?organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, + ?rpm_limit: Integer?, + ?spend: Float, + ?sso_user_id: String?, + ?teams: ::Array[String], + ?tpm_limit: Integer?, + ?updated_at: Time?, + ?user_alias: String?, + ?user_email: String?, + ?user_role: String? + ) -> void + + def to_hash: -> { + user_id: String, + budget_duration: String?, + budget_reset_at: Time?, + created_at: Time?, + max_budget: Float?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, + models: ::Array[top], + object_permission: Hanzoai::OrganizationTableWithMembers::User::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, + rpm_limit: Integer?, + spend: Float, + sso_user_id: String?, + teams: ::Array[String], + tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, + user_email: String?, + user_role: String? + } + + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + end + end + end +end diff --git a/sig/hanzoai/models/organization_update_member_params.rbs b/sig/hanzoai/models/organization_update_member_params.rbs index 2db083bf..0713f2da 100644 --- a/sig/hanzoai/models/organization_update_member_params.rbs +++ b/sig/hanzoai/models/organization_update_member_params.rbs @@ -4,7 +4,7 @@ module Hanzoai { organization_id: String, max_budget_in_organization: Float?, - role: Hanzoai::Models::OrganizationUpdateMemberParams::role?, + role: Hanzoai::Models::user_roles?, user_email: String?, user_id: String? } @@ -18,7 +18,7 @@ module Hanzoai attr_accessor max_budget_in_organization: Float? - attr_accessor role: Hanzoai::Models::OrganizationUpdateMemberParams::role? + attr_accessor role: Hanzoai::Models::user_roles? attr_accessor user_email: String? @@ -27,7 +27,7 @@ module Hanzoai def initialize: ( organization_id: String, ?max_budget_in_organization: Float?, - ?role: Hanzoai::Models::OrganizationUpdateMemberParams::role?, + ?role: Hanzoai::Models::user_roles?, ?user_email: String?, ?user_id: String?, ?request_options: Hanzoai::request_opts @@ -36,34 +36,11 @@ module Hanzoai def to_hash: -> { organization_id: String, max_budget_in_organization: Float?, - role: Hanzoai::Models::OrganizationUpdateMemberParams::role?, + role: Hanzoai::Models::user_roles?, user_email: String?, user_id: String?, request_options: Hanzoai::RequestOptions } - - type role = - :proxy_admin - | :proxy_admin_viewer - | :org_admin - | :internal_user - | :internal_user_viewer - | :team - | :customer - - module Role - extend Hanzoai::Internal::Type::Enum - - PROXY_ADMIN: :proxy_admin - PROXY_ADMIN_VIEWER: :proxy_admin_viewer - ORG_ADMIN: :org_admin - INTERNAL_USER: :internal_user - INTERNAL_USER_VIEWER: :internal_user_viewer - TEAM: :team - CUSTOMER: :customer - - def self?.values: -> ::Array[Hanzoai::Models::OrganizationUpdateMemberParams::role] - end end end end diff --git a/sig/hanzoai/models/organization_update_member_response.rbs b/sig/hanzoai/models/organization_update_member_response.rbs deleted file mode 100644 index aba98045..00000000 --- a/sig/hanzoai/models/organization_update_member_response.rbs +++ /dev/null @@ -1,111 +0,0 @@ -module Hanzoai - module Models - type organization_update_member_response = - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - class OrganizationUpdateMemberResponse < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String - - attr_accessor updated_at: Time - - attr_accessor user_id: String - - attr_accessor budget_id: String? - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? - - def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? - ) -> void - - def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - end -end diff --git a/sig/hanzoai/models/organization_update_params.rbs b/sig/hanzoai/models/organization_update_params.rbs index 594de842..0a720eb0 100644 --- a/sig/hanzoai/models/organization_update_params.rbs +++ b/sig/hanzoai/models/organization_update_params.rbs @@ -1,56 +1,15 @@ module Hanzoai module Models type organization_update_params = - { - budget_id: String?, - metadata: top?, - models: ::Array[String]?, - organization_alias: String?, - organization_id: String?, - spend: Float?, - updated_by: String? - } - & Hanzoai::Internal::Type::request_parameters + { } & Hanzoai::Internal::Type::request_parameters class OrganizationUpdateParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor budget_id: String? + def initialize: (?request_options: Hanzoai::request_opts) -> void - attr_accessor metadata: top? - - attr_accessor models: ::Array[String]? - - attr_accessor organization_alias: String? - - attr_accessor organization_id: String? - - attr_accessor spend: Float? - - attr_accessor updated_by: String? - - def initialize: ( - ?budget_id: String?, - ?metadata: top?, - ?models: ::Array[String]?, - ?organization_alias: String?, - ?organization_id: String?, - ?spend: Float?, - ?updated_by: String?, - ?request_options: Hanzoai::request_opts - ) -> void - - def to_hash: -> { - budget_id: String?, - metadata: top?, - models: ::Array[String]?, - organization_alias: String?, - organization_id: String?, - spend: Float?, - updated_by: String?, - request_options: Hanzoai::RequestOptions - } + def to_hash: -> { request_options: Hanzoai::RequestOptions } end end end diff --git a/sig/hanzoai/models/organization_update_response.rbs b/sig/hanzoai/models/organization_update_response.rbs deleted file mode 100644 index c4c16a02..00000000 --- a/sig/hanzoai/models/organization_update_response.rbs +++ /dev/null @@ -1,399 +0,0 @@ -module Hanzoai - module Models - type organization_update_response = - { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] - } - - class OrganizationUpdateResponse < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_id: String - - attr_accessor created_at: Time - - attr_accessor created_by: String - - attr_accessor models: ::Array[String] - - attr_accessor updated_at: Time - - attr_accessor updated_by: String - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable? - - attr_reader members: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Member]? - - def members=: ( - ::Array[Hanzoai::Models::OrganizationUpdateResponse::Member] - ) -> ::Array[Hanzoai::Models::OrganizationUpdateResponse::Member] - - attr_accessor metadata: top? - - attr_accessor organization_alias: String? - - attr_accessor organization_id: String? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader teams: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team]? - - def teams=: ( - ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] - ) -> ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] - - def initialize: ( - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - ?llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable?, - ?members: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Member], - ?metadata: top?, - ?organization_alias: String?, - ?organization_id: String?, - ?spend: Float, - ?teams: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] - ) -> void - - def to_hash: -> { - budget_id: String, - created_at: Time, - created_by: String, - models: ::Array[String], - updated_at: Time, - updated_by: String, - llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable?, - members: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Member], - metadata: top?, - organization_alias: String?, - organization_id: String?, - spend: Float, - teams: ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team] - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - - type member = - { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - class Member < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String - - attr_accessor updated_at: Time - - attr_accessor user_id: String - - attr_accessor budget_id: String? - - attr_accessor llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable? - - attr_reader spend: Float? - - def spend=: (Float) -> Float - - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? - - def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? - ) -> void - - def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::Member::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? - } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end - end - - type team = - { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - class Team < Hanzoai::Internal::Type::BaseModel - attr_accessor team_id: String - - attr_reader admins: ::Array[top]? - - def admins=: (::Array[top]) -> ::Array[top] - - attr_reader blocked: bool? - - def blocked=: (bool) -> bool - - attr_accessor budget_duration: String? - - attr_accessor budget_reset_at: Time? - - attr_accessor created_at: Time? - - attr_accessor llm_model_table: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_reader members: ::Array[top]? - - def members=: (::Array[top]) -> ::Array[top] - - attr_reader members_with_roles: ::Array[Hanzoai::Member]? - - def members_with_roles=: ( - ::Array[Hanzoai::Member] - ) -> ::Array[Hanzoai::Member] - - attr_accessor metadata: top? - - attr_accessor model_id: Integer? - - attr_reader models: ::Array[top]? - - def models=: (::Array[top]) -> ::Array[top] - - attr_accessor organization_id: String? - - attr_accessor rpm_limit: Integer? - - attr_accessor spend: Float? - - attr_accessor team_alias: String? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - team_id: String, - ?admins: ::Array[top], - ?blocked: bool, - ?budget_duration: String?, - ?budget_reset_at: Time?, - ?created_at: Time?, - ?llm_model_table: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?members: ::Array[top], - ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, - ?model_id: Integer?, - ?models: ::Array[top], - ?organization_id: String?, - ?rpm_limit: Integer?, - ?spend: Float?, - ?team_alias: String?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - team_id: String, - admins: ::Array[top], - blocked: bool, - budget_duration: String?, - budget_reset_at: Time?, - created_at: Time?, - llm_model_table: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable?, - max_budget: Float?, - max_parallel_requests: Integer?, - members: ::Array[top], - members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_id: Integer?, - models: ::Array[top], - organization_id: String?, - rpm_limit: Integer?, - spend: Float?, - team_alias: String?, - tpm_limit: Integer? - } - - type llm_model_table = - { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases? - } - - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - attr_accessor created_by: String - - attr_accessor updated_by: String - - attr_accessor model_aliases: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases? - - def initialize: ( - created_by: String, - updated_by: String, - ?model_aliases: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases? - ) -> void - - def to_hash: -> { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases? - } - - type model_aliases = top | String - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::OrganizationUpdateResponse::Team::LlmModelTable::model_aliases] - end - end - end - end - end -end diff --git a/sig/hanzoai/models/spend_calculate_spend_params.rbs b/sig/hanzoai/models/spend_calculate_spend_params.rbs index 624328be..ffb2a0e0 100644 --- a/sig/hanzoai/models/spend_calculate_spend_params.rbs +++ b/sig/hanzoai/models/spend_calculate_spend_params.rbs @@ -1,28 +1,32 @@ module Hanzoai module Models type spend_calculate_spend_params = - { completion_response: top?, messages: ::Array[top]?, model: String? } + { + completion_response: ::Hash[Symbol, top]?, + messages: ::Array[top]?, + model: String? + } & Hanzoai::Internal::Type::request_parameters class SpendCalculateSpendParams < Hanzoai::Internal::Type::BaseModel extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor completion_response: top? + attr_accessor completion_response: ::Hash[Symbol, top]? attr_accessor messages: ::Array[top]? attr_accessor model: String? def initialize: ( - ?completion_response: top?, + ?completion_response: ::Hash[Symbol, top]?, ?messages: ::Array[top]?, ?model: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { - completion_response: top?, + completion_response: ::Hash[Symbol, top]?, messages: ::Array[top]?, model: String?, request_options: Hanzoai::RequestOptions diff --git a/sig/hanzoai/models/spend_list_logs_params.rbs b/sig/hanzoai/models/spend_list_logs_params.rbs index ca1af048..8b7b7eff 100644 --- a/sig/hanzoai/models/spend_list_logs_params.rbs +++ b/sig/hanzoai/models/spend_list_logs_params.rbs @@ -6,6 +6,7 @@ module Hanzoai end_date: String?, request_id: String?, start_date: String?, + summarize: bool, user_id: String? } & Hanzoai::Internal::Type::request_parameters @@ -22,6 +23,10 @@ module Hanzoai attr_accessor start_date: String? + attr_reader summarize: bool? + + def summarize=: (bool) -> bool + attr_accessor user_id: String? def initialize: ( @@ -29,6 +34,7 @@ module Hanzoai ?end_date: String?, ?request_id: String?, ?start_date: String?, + ?summarize: bool, ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> void @@ -38,6 +44,7 @@ module Hanzoai end_date: String?, request_id: String?, start_date: String?, + summarize: bool, user_id: String?, request_options: Hanzoai::RequestOptions } diff --git a/sig/hanzoai/models/spend_list_logs_response.rbs b/sig/hanzoai/models/spend_list_logs_response.rbs index a5623dd7..908fe5aa 100644 --- a/sig/hanzoai/models/spend_list_logs_response.rbs +++ b/sig/hanzoai/models/spend_list_logs_response.rbs @@ -118,7 +118,7 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::SpendListLogsResponseItem::end_time] end - type messages = String | ::Array[top] | top + type messages = String | ::Array[top] | ::Hash[Symbol, top] module Messages extend Hanzoai::Internal::Type::Union @@ -126,9 +126,11 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::SpendListLogsResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end - type response = String | ::Array[top] | top + type response = String | ::Array[top] | ::Hash[Symbol, top] module Response extend Hanzoai::Internal::Type::Union @@ -136,6 +138,8 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::SpendListLogsResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/spend_list_tags_response.rbs b/sig/hanzoai/models/spend_list_tags_response.rbs index 0c9997a9..e77f1e1d 100644 --- a/sig/hanzoai/models/spend_list_tags_response.rbs +++ b/sig/hanzoai/models/spend_list_tags_response.rbs @@ -118,7 +118,7 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::SpendListTagsResponseItem::end_time] end - type messages = String | ::Array[top] | top + type messages = String | ::Array[top] | ::Hash[Symbol, top] module Messages extend Hanzoai::Internal::Type::Union @@ -126,9 +126,11 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::SpendListTagsResponseItem::messages] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end - type response = String | ::Array[top] | top + type response = String | ::Array[top] | ::Hash[Symbol, top] module Response extend Hanzoai::Internal::Type::Union @@ -136,6 +138,8 @@ module Hanzoai def self?.variants: -> ::Array[Hanzoai::Models::SpendListTagsResponseItem::response] UnionMember1Array: Hanzoai::Internal::Type::Converter + + UnionMember2Map: Hanzoai::Internal::Type::Converter end type start_time = String | Time diff --git a/sig/hanzoai/models/team/callback_add_params.rbs b/sig/hanzoai/models/team/callback_add_params.rbs index b144f772..7162c060 100644 --- a/sig/hanzoai/models/team/callback_add_params.rbs +++ b/sig/hanzoai/models/team/callback_add_params.rbs @@ -6,7 +6,7 @@ module Hanzoai callback_name: String, callback_vars: ::Hash[Symbol, String], callback_type: Hanzoai::Models::Team::CallbackAddParams::callback_type?, - llm_changed_by: String + litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters @@ -20,15 +20,15 @@ module Hanzoai attr_accessor callback_type: Hanzoai::Models::Team::CallbackAddParams::callback_type? - attr_reader llm_changed_by: String? + attr_reader litellm_changed_by: String? - def llm_changed_by=: (String) -> String + def litellm_changed_by=: (String) -> String def initialize: ( callback_name: String, callback_vars: ::Hash[Symbol, String], ?callback_type: Hanzoai::Models::Team::CallbackAddParams::callback_type?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void @@ -36,7 +36,7 @@ module Hanzoai callback_name: String, callback_vars: ::Hash[Symbol, String], callback_type: Hanzoai::Models::Team::CallbackAddParams::callback_type?, - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } diff --git a/sig/hanzoai/models/team_add_member_response.rbs b/sig/hanzoai/models/team_add_member_response.rbs index 9edfad44..3aadc879 100644 --- a/sig/hanzoai/models/team_add_member_response.rbs +++ b/sig/hanzoai/models/team_add_member_response.rbs @@ -10,19 +10,24 @@ module Hanzoai budget_duration: String?, budget_reset_at: Time?, created_at: Time?, - llm_model_table: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable?, + litellm_model_table: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable?, max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, + metadata: ::Hash[Symbol, top]?, model_id: Integer?, models: ::Array[top], + object_permission: Hanzoai::Models::TeamAddMemberResponse::ObjectPermission?, + object_permission_id: String?, organization_id: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, spend: Float?, team_alias: String?, - tpm_limit: Integer? + team_member_permissions: ::Array[String]?, + tpm_limit: Integer?, + updated_at: Time? } class TeamAddMemberResponse < Hanzoai::Internal::Type::BaseModel @@ -46,7 +51,7 @@ module Hanzoai attr_accessor created_at: Time? - attr_accessor llm_model_table: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable? + attr_accessor litellm_model_table: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable? attr_accessor max_budget: Float? @@ -62,7 +67,7 @@ module Hanzoai ::Array[Hanzoai::Member] ) -> ::Array[Hanzoai::Member] - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? attr_accessor model_id: Integer? @@ -70,16 +75,26 @@ module Hanzoai def models=: (::Array[top]) -> ::Array[top] + attr_accessor object_permission: Hanzoai::Models::TeamAddMemberResponse::ObjectPermission? + + attr_accessor object_permission_id: String? + attr_accessor organization_id: String? + attr_accessor router_settings: ::Hash[Symbol, top]? + attr_accessor rpm_limit: Integer? attr_accessor spend: Float? attr_accessor team_alias: String? + attr_accessor team_member_permissions: ::Array[String]? + attr_accessor tpm_limit: Integer? + attr_accessor updated_at: Time? + def initialize: ( team_id: String, updated_team_memberships: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership], @@ -89,19 +104,24 @@ module Hanzoai ?budget_duration: String?, ?budget_reset_at: Time?, ?created_at: Time?, - ?llm_model_table: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable?, + ?litellm_model_table: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable?, ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, + ?metadata: ::Hash[Symbol, top]?, ?model_id: Integer?, ?models: ::Array[top], + ?object_permission: Hanzoai::Models::TeamAddMemberResponse::ObjectPermission?, + ?object_permission_id: String?, ?organization_id: String?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, ?spend: Float?, ?team_alias: String?, - ?tpm_limit: Integer? + ?team_member_permissions: ::Array[String]?, + ?tpm_limit: Integer?, + ?updated_at: Time? ) -> void def to_hash: -> { @@ -113,98 +133,61 @@ module Hanzoai budget_duration: String?, budget_reset_at: Time?, created_at: Time?, - llm_model_table: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable?, + litellm_model_table: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable?, max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, + metadata: ::Hash[Symbol, top]?, model_id: Integer?, models: ::Array[top], + object_permission: Hanzoai::Models::TeamAddMemberResponse::ObjectPermission?, + object_permission_id: String?, organization_id: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, spend: Float?, team_alias: String?, - tpm_limit: Integer? + team_member_permissions: ::Array[String]?, + tpm_limit: Integer?, + updated_at: Time? } type updated_team_membership = { - budget_id: String, - llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable?, + litellm_budget_table: Hanzoai::BudgetTable?, team_id: String, - user_id: String + user_id: String, + budget_id: String?, + spend: Float? } class UpdatedTeamMembership < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_id: String - - attr_accessor llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable? + attr_accessor litellm_budget_table: Hanzoai::BudgetTable? attr_accessor team_id: String attr_accessor user_id: String + attr_accessor budget_id: String? + + attr_accessor spend: Float? + def initialize: ( - budget_id: String, - llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable?, + litellm_budget_table: Hanzoai::BudgetTable?, team_id: String, - user_id: String + user_id: String, + ?budget_id: String?, + ?spend: Float? ) -> void def to_hash: -> { - budget_id: String, - llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedTeamMembership::LlmBudgetTable?, + litellm_budget_table: Hanzoai::BudgetTable?, team_id: String, - user_id: String + user_id: String, + budget_id: String?, + spend: Float? } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end end type updated_user = @@ -212,17 +195,21 @@ module Hanzoai user_id: String, budget_duration: String?, budget_reset_at: Time?, + created_at: Time?, max_budget: Float?, - metadata: top?, - model_max_budget: top?, - model_spend: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, models: ::Array[top], - organization_memberships: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership]?, + object_permission: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, rpm_limit: Integer?, spend: Float, sso_user_id: String?, teams: ::Array[String], tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, user_email: String?, user_role: String? } @@ -234,19 +221,23 @@ module Hanzoai attr_accessor budget_reset_at: Time? + attr_accessor created_at: Time? + attr_accessor max_budget: Float? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_spend: top? + attr_accessor model_spend: ::Hash[Symbol, top]? attr_reader models: ::Array[top]? def models=: (::Array[top]) -> ::Array[top] - attr_accessor organization_memberships: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership]? + attr_accessor object_permission: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission? + + attr_accessor organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]? attr_accessor rpm_limit: Integer? @@ -262,6 +253,10 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor updated_at: Time? + + attr_accessor user_alias: String? + attr_accessor user_email: String? attr_accessor user_role: String? @@ -270,17 +265,21 @@ module Hanzoai user_id: String, ?budget_duration: String?, ?budget_reset_at: Time?, + ?created_at: Time?, ?max_budget: Float?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_spend: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_spend: ::Hash[Symbol, top]?, ?models: ::Array[top], - ?organization_memberships: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership]?, + ?object_permission: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission?, + ?organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, ?rpm_limit: Integer?, ?spend: Float, ?sso_user_id: String?, ?teams: ::Array[String], ?tpm_limit: Integer?, + ?updated_at: Time?, + ?user_alias: String?, ?user_email: String?, ?user_role: String? ) -> void @@ -289,164 +288,168 @@ module Hanzoai user_id: String, budget_duration: String?, budget_reset_at: Time?, + created_at: Time?, max_budget: Float?, - metadata: top?, - model_max_budget: top?, - model_spend: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_spend: ::Hash[Symbol, top]?, models: ::Array[top], - organization_memberships: ::Array[Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership]?, + object_permission: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::ObjectPermission?, + organization_memberships: ::Array[Hanzoai::OrganizationMembershipTable]?, rpm_limit: Integer?, spend: Float, sso_user_id: String?, teams: ::Array[String], tpm_limit: Integer?, + updated_at: Time?, + user_alias: String?, user_email: String?, user_role: String? } - type organization_membership = + type object_permission = { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? } - class OrganizationMembership < Hanzoai::Internal::Type::BaseModel - attr_accessor created_at: Time - - attr_accessor organization_id: String + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String - attr_accessor updated_at: Time + attr_accessor agent_access_groups: ::Array[String]? - attr_accessor user_id: String + attr_accessor agents: ::Array[String]? - attr_accessor budget_id: String? + attr_accessor mcp_access_groups: ::Array[String]? - attr_accessor llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable? + attr_accessor mcp_servers: ::Array[String]? - attr_reader spend: Float? + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? - def spend=: (Float) -> Float - - attr_reader user: top? - - def user=: (top) -> top - - attr_accessor user_role: String? + attr_accessor vector_stores: ::Array[String]? def initialize: ( - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - ?budget_id: String?, - ?llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, - ?spend: Float, - ?user: top, - ?user_role: String? + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? ) -> void def to_hash: -> { - created_at: Time, - organization_id: String, - updated_at: Time, - user_id: String, - budget_id: String?, - llm_budget_table: Hanzoai::Models::TeamAddMemberResponse::UpdatedUser::OrganizationMembership::LlmBudgetTable?, - spend: Float, - user: top, - user_role: String? + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? } - - type llm_budget_table = - { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - - class LlmBudgetTable < Hanzoai::Internal::Type::BaseModel - attr_accessor budget_duration: String? - - attr_accessor max_budget: Float? - - attr_accessor max_parallel_requests: Integer? - - attr_accessor model_max_budget: top? - - attr_accessor rpm_limit: Integer? - - attr_accessor soft_budget: Float? - - attr_accessor tpm_limit: Integer? - - def initialize: ( - ?budget_duration: String?, - ?max_budget: Float?, - ?max_parallel_requests: Integer?, - ?model_max_budget: top?, - ?rpm_limit: Integer?, - ?soft_budget: Float?, - ?tpm_limit: Integer? - ) -> void - - def to_hash: -> { - budget_duration: String?, - max_budget: Float?, - max_parallel_requests: Integer?, - model_max_budget: top?, - rpm_limit: Integer?, - soft_budget: Float?, - tpm_limit: Integer? - } - end end end - type llm_model_table = + type litellm_model_table = { created_by: String, updated_by: String, - model_aliases: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases? + id: Integer?, + model_aliases: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::model_aliases?, + team: top } - class LlmModelTable < Hanzoai::Internal::Type::BaseModel + class LitellmModelTable < Hanzoai::Internal::Type::BaseModel attr_accessor created_by: String attr_accessor updated_by: String - attr_accessor model_aliases: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases? + attr_accessor id: Integer? + + attr_accessor model_aliases: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::model_aliases? + + attr_reader team: top? + + def team=: (top) -> top def initialize: ( created_by: String, updated_by: String, - ?model_aliases: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases? + ?id: Integer?, + ?model_aliases: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::model_aliases?, + ?team: top ) -> void def to_hash: -> { created_by: String, updated_by: String, - model_aliases: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases? + id: Integer?, + model_aliases: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::model_aliases?, + team: top } - type model_aliases = top | String + type model_aliases = ::Hash[Symbol, top] | String module ModelAliases extend Hanzoai::Internal::Type::Union - def self?.variants: -> ::Array[Hanzoai::Models::TeamAddMemberResponse::LlmModelTable::model_aliases] + def self?.variants: -> ::Array[Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable::model_aliases] + + UnionMember0Map: Hanzoai::Internal::Type::Converter end end + + type object_permission = + { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end end end end diff --git a/sig/hanzoai/models/team_create_params.rbs b/sig/hanzoai/models/team_create_params.rbs index 1e1ccd10..114a2ad3 100644 --- a/sig/hanzoai/models/team_create_params.rbs +++ b/sig/hanzoai/models/team_create_params.rbs @@ -3,22 +3,37 @@ module Hanzoai type team_create_params = { admins: ::Array[top], + allowed_passthrough_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex]?, blocked: bool, budget_duration: String?, guardrails: ::Array[String]?, max_budget: Float?, members: ::Array[top], members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_aliases: top?, + metadata: ::Hash[Symbol, top]?, + model_aliases: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, Integer]?, + model_tpm_limit: ::Hash[Symbol, Integer]?, models: ::Array[top], + object_permission: Hanzoai::TeamCreateParams::ObjectPermission?, organization_id: String?, + prompts: ::Array[String]?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::TeamCreateParams::rpm_limit_type?, + secret_manager_settings: ::Hash[Symbol, top]?, tags: ::Array[top]?, team_alias: String?, team_id: String?, + team_member_budget: Float?, + team_member_key_duration: String?, + team_member_permissions: ::Array[String]?, + team_member_rpm_limit: Integer?, + team_member_tpm_limit: Integer?, tpm_limit: Integer?, - llm_changed_by: String + tpm_limit_type: Hanzoai::Models::TeamCreateParams::tpm_limit_type?, + litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters @@ -30,6 +45,10 @@ module Hanzoai def admins=: (::Array[top]) -> ::Array[top] + attr_accessor allowed_passthrough_routes: ::Array[top]? + + attr_accessor allowed_vector_store_indexes: ::Array[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex]? + attr_reader blocked: bool? def blocked=: (bool) -> bool @@ -50,71 +69,224 @@ module Hanzoai ::Array[Hanzoai::Member] ) -> ::Array[Hanzoai::Member] - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor model_aliases: ::Hash[Symbol, top]? - attr_accessor model_aliases: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, Integer]? + + attr_accessor model_tpm_limit: ::Hash[Symbol, Integer]? attr_reader models: ::Array[top]? def models=: (::Array[top]) -> ::Array[top] + attr_accessor object_permission: Hanzoai::TeamCreateParams::ObjectPermission? + attr_accessor organization_id: String? + attr_accessor prompts: ::Array[String]? + + attr_accessor router_settings: ::Hash[Symbol, top]? + attr_accessor rpm_limit: Integer? + attr_accessor rpm_limit_type: Hanzoai::Models::TeamCreateParams::rpm_limit_type? + + attr_accessor secret_manager_settings: ::Hash[Symbol, top]? + attr_accessor tags: ::Array[top]? attr_accessor team_alias: String? attr_accessor team_id: String? + attr_accessor team_member_budget: Float? + + attr_accessor team_member_key_duration: String? + + attr_accessor team_member_permissions: ::Array[String]? + + attr_accessor team_member_rpm_limit: Integer? + + attr_accessor team_member_tpm_limit: Integer? + attr_accessor tpm_limit: Integer? - attr_reader llm_changed_by: String? + attr_accessor tpm_limit_type: Hanzoai::Models::TeamCreateParams::tpm_limit_type? - def llm_changed_by=: (String) -> String + attr_reader litellm_changed_by: String? + + def litellm_changed_by=: (String) -> String def initialize: ( ?admins: ::Array[top], + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex]?, ?blocked: bool, ?budget_duration: String?, ?guardrails: ::Array[String]?, ?max_budget: Float?, ?members: ::Array[top], ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, - ?model_aliases: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_aliases: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, Integer]?, + ?model_tpm_limit: ::Hash[Symbol, Integer]?, ?models: ::Array[top], + ?object_permission: Hanzoai::TeamCreateParams::ObjectPermission?, ?organization_id: String?, + ?prompts: ::Array[String]?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::TeamCreateParams::rpm_limit_type?, + ?secret_manager_settings: ::Hash[Symbol, top]?, ?tags: ::Array[top]?, ?team_alias: String?, ?team_id: String?, + ?team_member_budget: Float?, + ?team_member_key_duration: String?, + ?team_member_permissions: ::Array[String]?, + ?team_member_rpm_limit: Integer?, + ?team_member_tpm_limit: Integer?, ?tpm_limit: Integer?, - ?llm_changed_by: String, + ?tpm_limit_type: Hanzoai::Models::TeamCreateParams::tpm_limit_type?, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { admins: ::Array[top], + allowed_passthrough_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex]?, blocked: bool, budget_duration: String?, guardrails: ::Array[String]?, max_budget: Float?, members: ::Array[top], members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, - model_aliases: top?, + metadata: ::Hash[Symbol, top]?, + model_aliases: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, Integer]?, + model_tpm_limit: ::Hash[Symbol, Integer]?, models: ::Array[top], + object_permission: Hanzoai::TeamCreateParams::ObjectPermission?, organization_id: String?, + prompts: ::Array[String]?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::TeamCreateParams::rpm_limit_type?, + secret_manager_settings: ::Hash[Symbol, top]?, tags: ::Array[top]?, team_alias: String?, team_id: String?, + team_member_budget: Float?, + team_member_key_duration: String?, + team_member_permissions: ::Array[String]?, + team_member_rpm_limit: Integer?, + team_member_tpm_limit: Integer?, tpm_limit: Integer?, - llm_changed_by: String, + tpm_limit_type: Hanzoai::Models::TeamCreateParams::tpm_limit_type?, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } + + type allowed_vector_store_index = + { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::TeamCreateParams::AllowedVectorStoreIndex::index_permission] + } + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + attr_accessor index_name: String + + attr_accessor index_permissions: ::Array[Hanzoai::Models::TeamCreateParams::AllowedVectorStoreIndex::index_permission] + + def initialize: ( + index_name: String, + index_permissions: ::Array[Hanzoai::Models::TeamCreateParams::AllowedVectorStoreIndex::index_permission] + ) -> void + + def to_hash: -> { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::TeamCreateParams::AllowedVectorStoreIndex::index_permission] + } + + type index_permission = :read | :write + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ: :read + WRITE: :write + + def self?.values: -> ::Array[Hanzoai::Models::TeamCreateParams::AllowedVectorStoreIndex::index_permission] + end + end + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type rpm_limit_type = :guaranteed_throughput | :best_effort_throughput + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + + def self?.values: -> ::Array[Hanzoai::Models::TeamCreateParams::rpm_limit_type] + end + + type tpm_limit_type = :guaranteed_throughput | :best_effort_throughput + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + + def self?.values: -> ::Array[Hanzoai::Models::TeamCreateParams::tpm_limit_type] + end end end end diff --git a/sig/hanzoai/models/team_create_response.rbs b/sig/hanzoai/models/team_create_response.rbs index 576dfcfd..fc2e1708 100644 --- a/sig/hanzoai/models/team_create_response.rbs +++ b/sig/hanzoai/models/team_create_response.rbs @@ -8,19 +8,24 @@ module Hanzoai budget_duration: String?, budget_reset_at: Time?, created_at: Time?, - llm_model_table: Hanzoai::Models::TeamCreateResponse::LlmModelTable?, + litellm_model_table: top, max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, + metadata: ::Hash[Symbol, top]?, model_id: Integer?, models: ::Array[top], + object_permission: Hanzoai::Models::TeamCreateResponse::ObjectPermission?, + object_permission_id: String?, organization_id: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, spend: Float?, team_alias: String?, - tpm_limit: Integer? + team_member_permissions: ::Array[String]?, + tpm_limit: Integer?, + updated_at: Time? } class TeamCreateResponse < Hanzoai::Internal::Type::BaseModel @@ -40,7 +45,9 @@ module Hanzoai attr_accessor created_at: Time? - attr_accessor llm_model_table: Hanzoai::Models::TeamCreateResponse::LlmModelTable? + attr_reader litellm_model_table: top? + + def litellm_model_table=: (top) -> top attr_accessor max_budget: Float? @@ -56,7 +63,7 @@ module Hanzoai ::Array[Hanzoai::Member] ) -> ::Array[Hanzoai::Member] - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? attr_accessor model_id: Integer? @@ -64,16 +71,26 @@ module Hanzoai def models=: (::Array[top]) -> ::Array[top] + attr_accessor object_permission: Hanzoai::Models::TeamCreateResponse::ObjectPermission? + + attr_accessor object_permission_id: String? + attr_accessor organization_id: String? + attr_accessor router_settings: ::Hash[Symbol, top]? + attr_accessor rpm_limit: Integer? attr_accessor spend: Float? attr_accessor team_alias: String? + attr_accessor team_member_permissions: ::Array[String]? + attr_accessor tpm_limit: Integer? + attr_accessor updated_at: Time? + def initialize: ( team_id: String, ?admins: ::Array[top], @@ -81,19 +98,24 @@ module Hanzoai ?budget_duration: String?, ?budget_reset_at: Time?, ?created_at: Time?, - ?llm_model_table: Hanzoai::Models::TeamCreateResponse::LlmModelTable?, + ?litellm_model_table: top, ?max_budget: Float?, ?max_parallel_requests: Integer?, ?members: ::Array[top], ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, + ?metadata: ::Hash[Symbol, top]?, ?model_id: Integer?, ?models: ::Array[top], + ?object_permission: Hanzoai::Models::TeamCreateResponse::ObjectPermission?, + ?object_permission_id: String?, ?organization_id: String?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, ?spend: Float?, ?team_alias: String?, - ?tpm_limit: Integer? + ?team_member_permissions: ::Array[String]?, + ?tpm_limit: Integer?, + ?updated_at: Time? ) -> void def to_hash: -> { @@ -103,54 +125,71 @@ module Hanzoai budget_duration: String?, budget_reset_at: Time?, created_at: Time?, - llm_model_table: Hanzoai::Models::TeamCreateResponse::LlmModelTable?, + litellm_model_table: top, max_budget: Float?, max_parallel_requests: Integer?, members: ::Array[top], members_with_roles: ::Array[Hanzoai::Member], - metadata: top?, + metadata: ::Hash[Symbol, top]?, model_id: Integer?, models: ::Array[top], + object_permission: Hanzoai::Models::TeamCreateResponse::ObjectPermission?, + object_permission_id: String?, organization_id: String?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, spend: Float?, team_alias: String?, - tpm_limit: Integer? + team_member_permissions: ::Array[String]?, + tpm_limit: Integer?, + updated_at: Time? } - type llm_model_table = + type object_permission = { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases? + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? } - class LlmModelTable < Hanzoai::Internal::Type::BaseModel - attr_accessor created_by: String + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor object_permission_id: String + + attr_accessor agent_access_groups: ::Array[String]? - attr_accessor updated_by: String + attr_accessor agents: ::Array[String]? - attr_accessor model_aliases: Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases? + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? def initialize: ( - created_by: String, - updated_by: String, - ?model_aliases: Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases? + object_permission_id: String, + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? ) -> void def to_hash: -> { - created_by: String, - updated_by: String, - model_aliases: Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases? + object_permission_id: String, + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? } - - type model_aliases = top | String - - module ModelAliases - extend Hanzoai::Internal::Type::Union - - def self?.variants: -> ::Array[Hanzoai::Models::TeamCreateResponse::LlmModelTable::model_aliases] - end end end end diff --git a/sig/hanzoai/models/team_delete_params.rbs b/sig/hanzoai/models/team_delete_params.rbs index 33c84eb3..8ad054ab 100644 --- a/sig/hanzoai/models/team_delete_params.rbs +++ b/sig/hanzoai/models/team_delete_params.rbs @@ -1,7 +1,7 @@ module Hanzoai module Models type team_delete_params = - { team_ids: ::Array[String], llm_changed_by: String } + { team_ids: ::Array[String], litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters class TeamDeleteParams < Hanzoai::Internal::Type::BaseModel @@ -10,19 +10,19 @@ module Hanzoai attr_accessor team_ids: ::Array[String] - attr_reader llm_changed_by: String? + attr_reader litellm_changed_by: String? - def llm_changed_by=: (String) -> String + def litellm_changed_by=: (String) -> String def initialize: ( team_ids: ::Array[String], - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { team_ids: ::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/team_update_member_params.rbs b/sig/hanzoai/models/team_update_member_params.rbs index 5ee87f7d..2248d79e 100644 --- a/sig/hanzoai/models/team_update_member_params.rbs +++ b/sig/hanzoai/models/team_update_member_params.rbs @@ -5,6 +5,8 @@ module Hanzoai team_id: String, max_budget_in_team: Float?, role: Hanzoai::Models::TeamUpdateMemberParams::role?, + rpm_limit: Integer?, + tpm_limit: Integer?, user_email: String?, user_id: String? } @@ -20,6 +22,10 @@ module Hanzoai attr_accessor role: Hanzoai::Models::TeamUpdateMemberParams::role? + attr_accessor rpm_limit: Integer? + + attr_accessor tpm_limit: Integer? + attr_accessor user_email: String? attr_accessor user_id: String? @@ -28,6 +34,8 @@ module Hanzoai team_id: String, ?max_budget_in_team: Float?, ?role: Hanzoai::Models::TeamUpdateMemberParams::role?, + ?rpm_limit: Integer?, + ?tpm_limit: Integer?, ?user_email: String?, ?user_id: String?, ?request_options: Hanzoai::request_opts @@ -37,6 +45,8 @@ module Hanzoai team_id: String, max_budget_in_team: Float?, role: Hanzoai::Models::TeamUpdateMemberParams::role?, + rpm_limit: Integer?, + tpm_limit: Integer?, user_email: String?, user_id: String?, request_options: Hanzoai::RequestOptions diff --git a/sig/hanzoai/models/team_update_member_response.rbs b/sig/hanzoai/models/team_update_member_response.rbs index ab3649e0..d24a9f83 100644 --- a/sig/hanzoai/models/team_update_member_response.rbs +++ b/sig/hanzoai/models/team_update_member_response.rbs @@ -5,6 +5,8 @@ module Hanzoai team_id: String, user_id: String, max_budget_in_team: Float?, + rpm_limit: Integer?, + tpm_limit: Integer?, user_email: String? } @@ -15,12 +17,18 @@ module Hanzoai attr_accessor max_budget_in_team: Float? + attr_accessor rpm_limit: Integer? + + attr_accessor tpm_limit: Integer? + attr_accessor user_email: String? def initialize: ( team_id: String, user_id: String, ?max_budget_in_team: Float?, + ?rpm_limit: Integer?, + ?tpm_limit: Integer?, ?user_email: String? ) -> void @@ -28,6 +36,8 @@ module Hanzoai team_id: String, user_id: String, max_budget_in_team: Float?, + rpm_limit: Integer?, + tpm_limit: Integer?, user_email: String? } end diff --git a/sig/hanzoai/models/team_update_params.rbs b/sig/hanzoai/models/team_update_params.rbs index 30c7f114..5e29e67b 100644 --- a/sig/hanzoai/models/team_update_params.rbs +++ b/sig/hanzoai/models/team_update_params.rbs @@ -3,19 +3,32 @@ module Hanzoai type team_update_params = { team_id: String, + allowed_passthrough_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex]?, blocked: bool?, budget_duration: String?, guardrails: ::Array[String]?, max_budget: Float?, - metadata: top?, - model_aliases: top?, + metadata: ::Hash[Symbol, top]?, + model_aliases: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, Integer]?, + model_tpm_limit: ::Hash[Symbol, Integer]?, models: ::Array[top]?, + object_permission: Hanzoai::TeamUpdateParams::ObjectPermission?, organization_id: String?, + prompts: ::Array[String]?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, + secret_manager_settings: ::Hash[Symbol, top]?, tags: ::Array[top]?, team_alias: String?, + team_member_budget: Float?, + team_member_budget_duration: String?, + team_member_key_duration: String?, + team_member_rpm_limit: Integer?, + team_member_tpm_limit: Integer?, tpm_limit: Integer?, - llm_changed_by: String + litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters @@ -25,6 +38,10 @@ module Hanzoai attr_accessor team_id: String + attr_accessor allowed_passthrough_routes: ::Array[top]? + + attr_accessor allowed_vector_store_indexes: ::Array[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex]? + attr_accessor blocked: bool? attr_accessor budget_duration: String? @@ -33,61 +50,184 @@ module Hanzoai attr_accessor max_budget: Float? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? + + attr_accessor model_aliases: ::Hash[Symbol, top]? + + attr_accessor model_rpm_limit: ::Hash[Symbol, Integer]? - attr_accessor model_aliases: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, Integer]? attr_accessor models: ::Array[top]? + attr_accessor object_permission: Hanzoai::TeamUpdateParams::ObjectPermission? + attr_accessor organization_id: String? + attr_accessor prompts: ::Array[String]? + + attr_accessor router_settings: ::Hash[Symbol, top]? + attr_accessor rpm_limit: Integer? + attr_accessor secret_manager_settings: ::Hash[Symbol, top]? + attr_accessor tags: ::Array[top]? attr_accessor team_alias: String? + attr_accessor team_member_budget: Float? + + attr_accessor team_member_budget_duration: String? + + attr_accessor team_member_key_duration: String? + + attr_accessor team_member_rpm_limit: Integer? + + attr_accessor team_member_tpm_limit: Integer? + attr_accessor tpm_limit: Integer? - attr_reader llm_changed_by: String? + attr_reader litellm_changed_by: String? - def llm_changed_by=: (String) -> String + def litellm_changed_by=: (String) -> String def initialize: ( team_id: String, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex]?, ?blocked: bool?, ?budget_duration: String?, ?guardrails: ::Array[String]?, ?max_budget: Float?, - ?metadata: top?, - ?model_aliases: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_aliases: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, Integer]?, + ?model_tpm_limit: ::Hash[Symbol, Integer]?, ?models: ::Array[top]?, + ?object_permission: Hanzoai::TeamUpdateParams::ObjectPermission?, ?organization_id: String?, + ?prompts: ::Array[String]?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, + ?secret_manager_settings: ::Hash[Symbol, top]?, ?tags: ::Array[top]?, ?team_alias: String?, + ?team_member_budget: Float?, + ?team_member_budget_duration: String?, + ?team_member_key_duration: String?, + ?team_member_rpm_limit: Integer?, + ?team_member_tpm_limit: Integer?, ?tpm_limit: Integer?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { team_id: String, + allowed_passthrough_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex]?, blocked: bool?, budget_duration: String?, guardrails: ::Array[String]?, max_budget: Float?, - metadata: top?, - model_aliases: top?, + metadata: ::Hash[Symbol, top]?, + model_aliases: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, Integer]?, + model_tpm_limit: ::Hash[Symbol, Integer]?, models: ::Array[top]?, + object_permission: Hanzoai::TeamUpdateParams::ObjectPermission?, organization_id: String?, + prompts: ::Array[String]?, + router_settings: ::Hash[Symbol, top]?, rpm_limit: Integer?, + secret_manager_settings: ::Hash[Symbol, top]?, tags: ::Array[top]?, team_alias: String?, + team_member_budget: Float?, + team_member_budget_duration: String?, + team_member_key_duration: String?, + team_member_rpm_limit: Integer?, + team_member_tpm_limit: Integer?, tpm_limit: Integer?, - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } + + type allowed_vector_store_index = + { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::TeamUpdateParams::AllowedVectorStoreIndex::index_permission] + } + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + attr_accessor index_name: String + + attr_accessor index_permissions: ::Array[Hanzoai::Models::TeamUpdateParams::AllowedVectorStoreIndex::index_permission] + + def initialize: ( + index_name: String, + index_permissions: ::Array[Hanzoai::Models::TeamUpdateParams::AllowedVectorStoreIndex::index_permission] + ) -> void + + def to_hash: -> { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::TeamUpdateParams::AllowedVectorStoreIndex::index_permission] + } + + type index_permission = :read | :write + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ: :read + WRITE: :write + + def self?.values: -> ::Array[Hanzoai::Models::TeamUpdateParams::AllowedVectorStoreIndex::index_permission] + end + end + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end end end end diff --git a/sig/hanzoai/models/user_create_params.rbs b/sig/hanzoai/models/user_create_params.rbs index e4b22904..1bd2969b 100644 --- a/sig/hanzoai/models/user_create_params.rbs +++ b/sig/hanzoai/models/user_create_params.rbs @@ -2,28 +2,32 @@ module Hanzoai module Models type user_create_params = { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, auto_create_key: bool, blocked: bool?, budget_duration: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, guardrails: ::Array[String]?, key_alias: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::UserCreateParams::ObjectPermission?, + organizations: ::Array[String]?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, rpm_limit: Integer?, send_invite_email: bool?, spend: Float?, + sso_user_id: String?, team_id: String?, - teams: ::Array[top]?, + teams: Hanzoai::Models::UserCreateParams::teams?, tpm_limit: Integer?, user_alias: String?, user_email: String?, @@ -36,7 +40,7 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor aliases: top? + attr_accessor aliases: ::Hash[Symbol, top]? attr_accessor allowed_cache_controls: ::Array[top]? @@ -48,7 +52,7 @@ module Hanzoai attr_accessor budget_duration: String? - attr_accessor config: top? + attr_accessor config: ::Hash[Symbol, top]? attr_accessor duration: String? @@ -60,17 +64,23 @@ module Hanzoai attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_rpm_limit: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, top]? - attr_accessor model_tpm_limit: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, top]? attr_accessor models: ::Array[top]? - attr_accessor permissions: top? + attr_accessor object_permission: Hanzoai::UserCreateParams::ObjectPermission? + + attr_accessor organizations: ::Array[String]? + + attr_accessor permissions: ::Hash[Symbol, top]? + + attr_accessor prompts: ::Array[String]? attr_accessor rpm_limit: Integer? @@ -78,9 +88,11 @@ module Hanzoai attr_accessor spend: Float? + attr_accessor sso_user_id: String? + attr_accessor team_id: String? - attr_accessor teams: ::Array[top]? + attr_accessor teams: Hanzoai::Models::UserCreateParams::teams? attr_accessor tpm_limit: Integer? @@ -93,28 +105,32 @@ module Hanzoai attr_accessor user_role: Hanzoai::Models::UserCreateParams::user_role? def initialize: ( - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, ?auto_create_key: bool, ?blocked: bool?, ?budget_duration: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::UserCreateParams::ObjectPermission?, + ?organizations: ::Array[String]?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, ?rpm_limit: Integer?, ?send_invite_email: bool?, ?spend: Float?, + ?sso_user_id: String?, ?team_id: String?, - ?teams: ::Array[top]?, + ?teams: Hanzoai::Models::UserCreateParams::teams?, ?tpm_limit: Integer?, ?user_alias: String?, ?user_email: String?, @@ -124,28 +140,32 @@ module Hanzoai ) -> void def to_hash: -> { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, auto_create_key: bool, blocked: bool?, budget_duration: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, guardrails: ::Array[String]?, key_alias: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::UserCreateParams::ObjectPermission?, + organizations: ::Array[String]?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, rpm_limit: Integer?, send_invite_email: bool?, spend: Float?, + sso_user_id: String?, team_id: String?, - teams: ::Array[top]?, + teams: Hanzoai::Models::UserCreateParams::teams?, tpm_limit: Integer?, user_alias: String?, user_email: String?, @@ -154,6 +174,104 @@ module Hanzoai request_options: Hanzoai::RequestOptions } + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type teams = + ::Array[String] + | ::Array[Hanzoai::UserCreateParams::Teams::UnionMember1] + + module Teams + extend Hanzoai::Internal::Type::Union + + type union_member1 = + { + team_id: String, + max_budget_in_team: Float?, + user_role: Hanzoai::Models::UserCreateParams::Teams::UnionMember1::user_role + } + + class UnionMember1 < Hanzoai::Internal::Type::BaseModel + attr_accessor team_id: String + + attr_accessor max_budget_in_team: Float? + + attr_reader user_role: Hanzoai::Models::UserCreateParams::Teams::UnionMember1::user_role? + + def user_role=: ( + Hanzoai::Models::UserCreateParams::Teams::UnionMember1::user_role + ) -> Hanzoai::Models::UserCreateParams::Teams::UnionMember1::user_role + + def initialize: ( + team_id: String, + ?max_budget_in_team: Float?, + ?user_role: Hanzoai::Models::UserCreateParams::Teams::UnionMember1::user_role + ) -> void + + def to_hash: -> { + team_id: String, + max_budget_in_team: Float?, + user_role: Hanzoai::Models::UserCreateParams::Teams::UnionMember1::user_role + } + + type user_role = :user | :admin + + module UserRole + extend Hanzoai::Internal::Type::Enum + + USER: :user + ADMIN: :admin + + def self?.values: -> ::Array[Hanzoai::Models::UserCreateParams::Teams::UnionMember1::user_role] + end + end + + def self?.variants: -> ::Array[Hanzoai::Models::UserCreateParams::teams] + + StringArray: Hanzoai::Internal::Type::Converter + + UnionMember1Array: Hanzoai::Internal::Type::Converter + end + type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/user_create_response.rbs b/sig/hanzoai/models/user_create_response.rbs index 73d7f17e..5ad113ed 100644 --- a/sig/hanzoai/models/user_create_response.rbs +++ b/sig/hanzoai/models/user_create_response.rbs @@ -2,37 +2,48 @@ module Hanzoai module Models type user_create_response = { - expires: Time?, key: String, token: String?, - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex]?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, + created_at: Time?, created_by: String?, duration: String?, enforced_params: ::Array[String]?, + expires: Time?, guardrails: ::Array[String]?, key_alias: String?, key_name: String?, - llm_budget_table: top, + litellm_budget_table: top, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::Models::UserCreateResponse::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + router_settings: Hanzoai::Models::UserCreateResponse::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::UserCreateResponse::rpm_limit_type?, spend: Float?, tags: ::Array[String]?, team_id: String?, teams: ::Array[top]?, token_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::UserCreateResponse::tpm_limit_type?, + updated_at: Time?, updated_by: String?, user_alias: String?, user_email: String?, @@ -41,23 +52,29 @@ module Hanzoai } class UserCreateResponse < Hanzoai::Internal::Type::BaseModel - attr_accessor expires: Time? - attr_accessor key: String attr_accessor token: String? - attr_accessor aliases: top? + attr_accessor aliases: ::Hash[Symbol, top]? attr_accessor allowed_cache_controls: ::Array[top]? + attr_accessor allowed_passthrough_routes: ::Array[top]? + + attr_accessor allowed_routes: ::Array[top]? + + attr_accessor allowed_vector_store_indexes: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex]? + attr_accessor blocked: bool? attr_accessor budget_duration: String? attr_accessor budget_id: String? - attr_accessor config: top? + attr_accessor config: ::Hash[Symbol, top]? + + attr_accessor created_at: Time? attr_accessor created_by: String? @@ -65,34 +82,46 @@ module Hanzoai attr_accessor enforced_params: ::Array[String]? + attr_accessor expires: Time? + attr_accessor guardrails: ::Array[String]? attr_accessor key_alias: String? attr_accessor key_name: String? - attr_reader llm_budget_table: top? + attr_reader litellm_budget_table: top? - def llm_budget_table=: (top) -> top + def litellm_budget_table=: (top) -> top attr_accessor max_budget: Float? attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_rpm_limit: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, top]? - attr_accessor model_tpm_limit: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, top]? attr_accessor models: ::Array[top]? - attr_accessor permissions: top? + attr_accessor object_permission: Hanzoai::Models::UserCreateResponse::ObjectPermission? + + attr_accessor organization_id: String? + + attr_accessor permissions: ::Hash[Symbol, top]? + + attr_accessor prompts: ::Array[String]? + + attr_accessor router_settings: Hanzoai::Models::UserCreateResponse::RouterSettings? attr_accessor rpm_limit: Integer? + attr_accessor rpm_limit_type: Hanzoai::Models::UserCreateResponse::rpm_limit_type? + attr_accessor spend: Float? attr_accessor tags: ::Array[String]? @@ -105,6 +134,10 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor tpm_limit_type: Hanzoai::Models::UserCreateResponse::tpm_limit_type? + + attr_accessor updated_at: Time? + attr_accessor updated_by: String? attr_accessor user_alias: String? @@ -116,37 +149,48 @@ module Hanzoai attr_accessor user_role: Hanzoai::Models::UserCreateResponse::user_role? def initialize: ( - expires: Time?, key: String, ?token: String?, - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex]?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, + ?created_at: Time?, ?created_by: String?, ?duration: String?, ?enforced_params: ::Array[String]?, + ?expires: Time?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?key_name: String?, - ?llm_budget_table: top, + ?litellm_budget_table: top, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::Models::UserCreateResponse::ObjectPermission?, + ?organization_id: String?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?router_settings: Hanzoai::Models::UserCreateResponse::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::UserCreateResponse::rpm_limit_type?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?teams: ::Array[top]?, ?token_id: String?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::UserCreateResponse::tpm_limit_type?, + ?updated_at: Time?, ?updated_by: String?, ?user_alias: String?, ?user_email: String?, @@ -155,37 +199,48 @@ module Hanzoai ) -> void def to_hash: -> { - expires: Time?, key: String, token: String?, - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, + allowed_passthrough_routes: ::Array[top]?, + allowed_routes: ::Array[top]?, + allowed_vector_store_indexes: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex]?, blocked: bool?, budget_duration: String?, budget_id: String?, - config: top?, + config: ::Hash[Symbol, top]?, + created_at: Time?, created_by: String?, duration: String?, enforced_params: ::Array[String]?, + expires: Time?, guardrails: ::Array[String]?, key_alias: String?, key_name: String?, - llm_budget_table: top, + litellm_budget_table: top, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, - permissions: top?, + object_permission: Hanzoai::Models::UserCreateResponse::ObjectPermission?, + organization_id: String?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, + router_settings: Hanzoai::Models::UserCreateResponse::RouterSettings?, rpm_limit: Integer?, + rpm_limit_type: Hanzoai::Models::UserCreateResponse::rpm_limit_type?, spend: Float?, tags: ::Array[String]?, team_id: String?, teams: ::Array[top]?, token_id: String?, tpm_limit: Integer?, + tpm_limit_type: Hanzoai::Models::UserCreateResponse::tpm_limit_type?, + updated_at: Time?, updated_by: String?, user_alias: String?, user_email: String?, @@ -193,6 +248,189 @@ module Hanzoai user_role: Hanzoai::Models::UserCreateResponse::user_role? } + type allowed_vector_store_index = + { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::index_permission] + } + + class AllowedVectorStoreIndex < Hanzoai::Internal::Type::BaseModel + attr_accessor index_name: String + + attr_accessor index_permissions: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::index_permission] + + def initialize: ( + index_name: String, + index_permissions: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::index_permission] + ) -> void + + def to_hash: -> { + index_name: String, + index_permissions: ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::index_permission] + } + + type index_permission = :read | :write + + module IndexPermission + extend Hanzoai::Internal::Type::Enum + + READ: :read + WRITE: :write + + def self?.values: -> ::Array[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex::index_permission] + end + end + + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + + type router_settings = + { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::UserCreateResponse::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + class RouterSettings < Hanzoai::Internal::Type::BaseModel + attr_accessor allowed_fails: Integer? + + attr_accessor context_window_fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor cooldown_time: Float? + + attr_accessor fallbacks: ::Array[::Hash[Symbol, top]]? + + attr_accessor max_retries: Integer? + + attr_accessor model_group_alias: ::Hash[Symbol, Hanzoai::Models::UserCreateResponse::RouterSettings::model_group_alias]? + + attr_accessor model_group_retry_policy: ::Hash[Symbol, top]? + + attr_accessor num_retries: Integer? + + attr_accessor retry_after: Float? + + attr_accessor routing_strategy: String? + + attr_accessor routing_strategy_args: ::Hash[Symbol, top]? + + attr_accessor timeout: Float? + + def initialize: ( + ?allowed_fails: Integer?, + ?context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + ?cooldown_time: Float?, + ?fallbacks: ::Array[::Hash[Symbol, top]]?, + ?max_retries: Integer?, + ?model_group_alias: ::Hash[Symbol, Hanzoai::Models::UserCreateResponse::RouterSettings::model_group_alias]?, + ?model_group_retry_policy: ::Hash[Symbol, top]?, + ?num_retries: Integer?, + ?retry_after: Float?, + ?routing_strategy: String?, + ?routing_strategy_args: ::Hash[Symbol, top]?, + ?timeout: Float? + ) -> void + + def to_hash: -> { + allowed_fails: Integer?, + context_window_fallbacks: ::Array[::Hash[Symbol, top]]?, + cooldown_time: Float?, + fallbacks: ::Array[::Hash[Symbol, top]]?, + max_retries: Integer?, + model_group_alias: ::Hash[Symbol, Hanzoai::Models::UserCreateResponse::RouterSettings::model_group_alias]?, + model_group_retry_policy: ::Hash[Symbol, top]?, + num_retries: Integer?, + retry_after: Float?, + routing_strategy: String?, + routing_strategy_args: ::Hash[Symbol, top]?, + timeout: Float? + } + + type model_group_alias = String | ::Hash[Symbol, top] + + module ModelGroupAlias + extend Hanzoai::Internal::Type::Union + + def self?.variants: -> ::Array[Hanzoai::Models::UserCreateResponse::RouterSettings::model_group_alias] + + UnionMember1Map: Hanzoai::Internal::Type::Converter + end + end + + type rpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module RpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::UserCreateResponse::rpm_limit_type] + end + + type tpm_limit_type = + :guaranteed_throughput | :best_effort_throughput | :dynamic + + module TpmLimitType + extend Hanzoai::Internal::Type::Enum + + GUARANTEED_THROUGHPUT: :guaranteed_throughput + BEST_EFFORT_THROUGHPUT: :best_effort_throughput + DYNAMIC: :dynamic + + def self?.values: -> ::Array[Hanzoai::Models::UserCreateResponse::tpm_limit_type] + end + type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/user_delete_params.rbs b/sig/hanzoai/models/user_delete_params.rbs index 77f39387..717e3158 100644 --- a/sig/hanzoai/models/user_delete_params.rbs +++ b/sig/hanzoai/models/user_delete_params.rbs @@ -1,7 +1,7 @@ module Hanzoai module Models type user_delete_params = - { user_ids: ::Array[String], llm_changed_by: String } + { user_ids: ::Array[String], litellm_changed_by: String } & Hanzoai::Internal::Type::request_parameters class UserDeleteParams < Hanzoai::Internal::Type::BaseModel @@ -10,19 +10,19 @@ module Hanzoai attr_accessor user_ids: ::Array[String] - attr_reader llm_changed_by: String? + attr_reader litellm_changed_by: String? - def llm_changed_by=: (String) -> String + def litellm_changed_by=: (String) -> String def initialize: ( user_ids: ::Array[String], - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { user_ids: ::Array[String], - llm_changed_by: String, + litellm_changed_by: String, request_options: Hanzoai::RequestOptions } end diff --git a/sig/hanzoai/models/user_list_params.rbs b/sig/hanzoai/models/user_list_params.rbs deleted file mode 100644 index 28559cc5..00000000 --- a/sig/hanzoai/models/user_list_params.rbs +++ /dev/null @@ -1,40 +0,0 @@ -module Hanzoai - module Models - type user_list_params = - { page: Integer, page_size: Integer, role: String?, user_ids: String? } - & Hanzoai::Internal::Type::request_parameters - - class UserListParams < Hanzoai::Internal::Type::BaseModel - extend Hanzoai::Internal::Type::RequestParameters::Converter - include Hanzoai::Internal::Type::RequestParameters - - attr_reader page: Integer? - - def page=: (Integer) -> Integer - - attr_reader page_size: Integer? - - def page_size=: (Integer) -> Integer - - attr_accessor role: String? - - attr_accessor user_ids: String? - - def initialize: ( - ?page: Integer, - ?page_size: Integer, - ?role: String?, - ?user_ids: String?, - ?request_options: Hanzoai::request_opts - ) -> void - - def to_hash: -> { - page: Integer, - page_size: Integer, - role: String?, - user_ids: String?, - request_options: Hanzoai::RequestOptions - } - end - end -end diff --git a/sig/hanzoai/models/user_list_response.rbs b/sig/hanzoai/models/user_list_response.rbs deleted file mode 100644 index 5c177738..00000000 --- a/sig/hanzoai/models/user_list_response.rbs +++ /dev/null @@ -1,5 +0,0 @@ -module Hanzoai - module Models - UserListResponse: Hanzoai::Internal::Type::Converter - end -end diff --git a/sig/hanzoai/models/user_roles.rbs b/sig/hanzoai/models/user_roles.rbs new file mode 100644 index 00000000..36926d9e --- /dev/null +++ b/sig/hanzoai/models/user_roles.rbs @@ -0,0 +1,26 @@ +module Hanzoai + module Models + type user_roles = + :proxy_admin + | :proxy_admin_viewer + | :org_admin + | :internal_user + | :internal_user_viewer + | :team + | :customer + + module UserRoles + extend Hanzoai::Internal::Type::Enum + + PROXY_ADMIN: :proxy_admin + PROXY_ADMIN_VIEWER: :proxy_admin_viewer + ORG_ADMIN: :org_admin + INTERNAL_USER: :internal_user + INTERNAL_USER_VIEWER: :internal_user_viewer + TEAM: :team + CUSTOMER: :customer + + def self?.values: -> ::Array[Hanzoai::Models::user_roles] + end + end +end diff --git a/sig/hanzoai/models/user_update_params.rbs b/sig/hanzoai/models/user_update_params.rbs index d5e41a5f..a3ee081f 100644 --- a/sig/hanzoai/models/user_update_params.rbs +++ b/sig/hanzoai/models/user_update_params.rbs @@ -2,27 +2,30 @@ module Hanzoai module Models type user_update_params = { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, blocked: bool?, budget_duration: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, guardrails: ::Array[String]?, key_alias: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, + object_permission: Hanzoai::UserUpdateParams::ObjectPermission?, password: String?, - permissions: top?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, rpm_limit: Integer?, spend: Float?, team_id: String?, tpm_limit: Integer?, + user_alias: String?, user_email: String?, user_id: String?, user_role: Hanzoai::Models::UserUpdateParams::user_role? @@ -33,7 +36,7 @@ module Hanzoai extend Hanzoai::Internal::Type::RequestParameters::Converter include Hanzoai::Internal::Type::RequestParameters - attr_accessor aliases: top? + attr_accessor aliases: ::Hash[Symbol, top]? attr_accessor allowed_cache_controls: ::Array[top]? @@ -41,7 +44,7 @@ module Hanzoai attr_accessor budget_duration: String? - attr_accessor config: top? + attr_accessor config: ::Hash[Symbol, top]? attr_accessor duration: String? @@ -53,19 +56,23 @@ module Hanzoai attr_accessor max_parallel_requests: Integer? - attr_accessor metadata: top? + attr_accessor metadata: ::Hash[Symbol, top]? - attr_accessor model_max_budget: top? + attr_accessor model_max_budget: ::Hash[Symbol, top]? - attr_accessor model_rpm_limit: top? + attr_accessor model_rpm_limit: ::Hash[Symbol, top]? - attr_accessor model_tpm_limit: top? + attr_accessor model_tpm_limit: ::Hash[Symbol, top]? attr_accessor models: ::Array[top]? + attr_accessor object_permission: Hanzoai::UserUpdateParams::ObjectPermission? + attr_accessor password: String? - attr_accessor permissions: top? + attr_accessor permissions: ::Hash[Symbol, top]? + + attr_accessor prompts: ::Array[String]? attr_accessor rpm_limit: Integer? @@ -75,6 +82,8 @@ module Hanzoai attr_accessor tpm_limit: Integer? + attr_accessor user_alias: String? + attr_accessor user_email: String? attr_accessor user_id: String? @@ -82,27 +91,30 @@ module Hanzoai attr_accessor user_role: Hanzoai::Models::UserUpdateParams::user_role? def initialize: ( - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, ?blocked: bool?, ?budget_duration: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, + ?object_permission: Hanzoai::UserUpdateParams::ObjectPermission?, ?password: String?, - ?permissions: top?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, ?rpm_limit: Integer?, ?spend: Float?, ?team_id: String?, ?tpm_limit: Integer?, + ?user_alias: String?, ?user_email: String?, ?user_id: String?, ?user_role: Hanzoai::Models::UserUpdateParams::user_role?, @@ -110,33 +122,78 @@ module Hanzoai ) -> void def to_hash: -> { - aliases: top?, + aliases: ::Hash[Symbol, top]?, allowed_cache_controls: ::Array[top]?, blocked: bool?, budget_duration: String?, - config: top?, + config: ::Hash[Symbol, top]?, duration: String?, guardrails: ::Array[String]?, key_alias: String?, max_budget: Float?, max_parallel_requests: Integer?, - metadata: top?, - model_max_budget: top?, - model_rpm_limit: top?, - model_tpm_limit: top?, + metadata: ::Hash[Symbol, top]?, + model_max_budget: ::Hash[Symbol, top]?, + model_rpm_limit: ::Hash[Symbol, top]?, + model_tpm_limit: ::Hash[Symbol, top]?, models: ::Array[top]?, + object_permission: Hanzoai::UserUpdateParams::ObjectPermission?, password: String?, - permissions: top?, + permissions: ::Hash[Symbol, top]?, + prompts: ::Array[String]?, rpm_limit: Integer?, spend: Float?, team_id: String?, tpm_limit: Integer?, + user_alias: String?, user_email: String?, user_id: String?, user_role: Hanzoai::Models::UserUpdateParams::user_role?, request_options: Hanzoai::RequestOptions } + type object_permission = + { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + + class ObjectPermission < Hanzoai::Internal::Type::BaseModel + attr_accessor agent_access_groups: ::Array[String]? + + attr_accessor agents: ::Array[String]? + + attr_accessor mcp_access_groups: ::Array[String]? + + attr_accessor mcp_servers: ::Array[String]? + + attr_accessor mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]? + + attr_accessor vector_stores: ::Array[String]? + + def initialize: ( + ?agent_access_groups: ::Array[String]?, + ?agents: ::Array[String]?, + ?mcp_access_groups: ::Array[String]?, + ?mcp_servers: ::Array[String]?, + ?mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + ?vector_stores: ::Array[String]? + ) -> void + + def to_hash: -> { + agent_access_groups: ::Array[String]?, + agents: ::Array[String]?, + mcp_access_groups: ::Array[String]?, + mcp_servers: ::Array[String]?, + mcp_tool_permissions: ::Hash[Symbol, ::Array[String]]?, + vector_stores: ::Array[String]? + } + end + type user_role = :proxy_admin | :proxy_admin_viewer diff --git a/sig/hanzoai/models/util_token_counter_params.rbs b/sig/hanzoai/models/util_token_counter_params.rbs index 442cdeaf..b6908a5c 100644 --- a/sig/hanzoai/models/util_token_counter_params.rbs +++ b/sig/hanzoai/models/util_token_counter_params.rbs @@ -1,7 +1,13 @@ module Hanzoai module Models type util_token_counter_params = - { model: String, messages: ::Array[top]?, prompt: String? } + { + model: String, + call_endpoint: bool, + contents: ::Array[::Hash[Symbol, top]]?, + messages: ::Array[::Hash[Symbol, top]]?, + prompt: String? + } & Hanzoai::Internal::Type::request_parameters class UtilTokenCounterParams < Hanzoai::Internal::Type::BaseModel @@ -10,20 +16,30 @@ module Hanzoai attr_accessor model: String - attr_accessor messages: ::Array[top]? + attr_reader call_endpoint: bool? + + def call_endpoint=: (bool) -> bool + + attr_accessor contents: ::Array[::Hash[Symbol, top]]? + + attr_accessor messages: ::Array[::Hash[Symbol, top]]? attr_accessor prompt: String? def initialize: ( model: String, - ?messages: ::Array[top]?, + ?call_endpoint: bool, + ?contents: ::Array[::Hash[Symbol, top]]?, + ?messages: ::Array[::Hash[Symbol, top]]?, ?prompt: String?, ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { model: String, - messages: ::Array[top]?, + call_endpoint: bool, + contents: ::Array[::Hash[Symbol, top]]?, + messages: ::Array[::Hash[Symbol, top]]?, prompt: String?, request_options: Hanzoai::RequestOptions } diff --git a/sig/hanzoai/models/util_token_counter_response.rbs b/sig/hanzoai/models/util_token_counter_response.rbs index ddbaf940..2eb61978 100644 --- a/sig/hanzoai/models/util_token_counter_response.rbs +++ b/sig/hanzoai/models/util_token_counter_response.rbs @@ -5,7 +5,11 @@ module Hanzoai model_used: String, request_model: String, tokenizer_type: String, - total_tokens: Integer + total_tokens: Integer, + error: bool, + error_message: String?, + original_response: ::Hash[Symbol, top]?, + status_code: Integer? } class UtilTokenCounterResponse < Hanzoai::Internal::Type::BaseModel @@ -17,18 +21,36 @@ module Hanzoai attr_accessor total_tokens: Integer + attr_reader error: bool? + + def error=: (bool) -> bool + + attr_accessor error_message: String? + + attr_accessor original_response: ::Hash[Symbol, top]? + + attr_accessor status_code: Integer? + def initialize: ( model_used: String, request_model: String, tokenizer_type: String, - total_tokens: Integer + total_tokens: Integer, + ?error: bool, + ?error_message: String?, + ?original_response: ::Hash[Symbol, top]?, + ?status_code: Integer? ) -> void def to_hash: -> { model_used: String, request_model: String, tokenizer_type: String, - total_tokens: Integer + total_tokens: Integer, + error: bool, + error_message: String?, + original_response: ::Hash[Symbol, top]?, + status_code: Integer? } end end diff --git a/sig/hanzoai/models/util_transform_request_params.rbs b/sig/hanzoai/models/util_transform_request_params.rbs index 4afe0a31..cac4c627 100644 --- a/sig/hanzoai/models/util_transform_request_params.rbs +++ b/sig/hanzoai/models/util_transform_request_params.rbs @@ -3,7 +3,7 @@ module Hanzoai type util_transform_request_params = { call_type: Hanzoai::Models::UtilTransformRequestParams::call_type, - request_body: top + request_body: ::Hash[Symbol, top] } & Hanzoai::Internal::Type::request_parameters @@ -13,17 +13,17 @@ module Hanzoai attr_accessor call_type: Hanzoai::Models::UtilTransformRequestParams::call_type - attr_accessor request_body: top + attr_accessor request_body: ::Hash[Symbol, top] def initialize: ( call_type: Hanzoai::Models::UtilTransformRequestParams::call_type, - request_body: top, + request_body: ::Hash[Symbol, top], ?request_options: Hanzoai::request_opts ) -> void def to_hash: -> { call_type: Hanzoai::Models::UtilTransformRequestParams::call_type, - request_body: top, + request_body: ::Hash[Symbol, top], request_options: Hanzoai::RequestOptions } @@ -36,6 +36,8 @@ module Hanzoai | :text_completion | :image_generation | :aimage_generation + | :image_edit + | :aimage_edit | :moderation | :amoderation | :atranscription @@ -44,6 +46,8 @@ module Hanzoai | :speech | :rerank | :arerank + | :search + | :asearch | :_arealtime | :create_batch | :acreate_batch @@ -81,6 +85,48 @@ module Hanzoai | :file_content | :create_fine_tuning_job | :acreate_fine_tuning_job + | :create_video + | :acreate_video + | :avideo_retrieve + | :video_retrieve + | :avideo_content + | :video_content + | :video_remix + | :avideo_remix + | :video_list + | :avideo_list + | :video_retrieve_job + | :avideo_retrieve_job + | :video_delete + | :avideo_delete + | :vector_store_file_create + | :avector_store_file_create + | :vector_store_file_list + | :avector_store_file_list + | :vector_store_file_retrieve + | :avector_store_file_retrieve + | :vector_store_file_content + | :avector_store_file_content + | :vector_store_file_update + | :avector_store_file_update + | :vector_store_file_delete + | :avector_store_file_delete + | :vector_store_create + | :avector_store_create + | :vector_store_search + | :avector_store_search + | :create_container + | :acreate_container + | :list_containers + | :alist_containers + | :retrieve_container + | :aretrieve_container + | :delete_container + | :adelete_container + | :list_container_files + | :alist_container_files + | :upload_container_file + | :aupload_container_file | :acancel_fine_tuning_job | :cancel_fine_tuning_job | :alist_fine_tuning_jobs @@ -89,6 +135,19 @@ module Hanzoai | :retrieve_fine_tuning_job | :responses | :aresponses + | :alist_input_items + | :llm_passthrough_route + | :allm_passthrough_route + | :generate_content + | :agenerate_content + | :generate_content_stream + | :agenerate_content_stream + | :ocr + | :aocr + | :call_mcp_tool + | :asend_message + | :send_message + | :acreate_skill module CallType extend Hanzoai::Internal::Type::Enum @@ -101,6 +160,8 @@ module Hanzoai TEXT_COMPLETION: :text_completion IMAGE_GENERATION: :image_generation AIMAGE_GENERATION: :aimage_generation + IMAGE_EDIT: :image_edit + AIMAGE_EDIT: :aimage_edit MODERATION: :moderation AMODERATION: :amoderation ATRANSCRIPTION: :atranscription @@ -109,6 +170,8 @@ module Hanzoai SPEECH: :speech RERANK: :rerank ARERANK: :arerank + SEARCH: :search + ASEARCH: :asearch AREALTIME: :_arealtime CREATE_BATCH: :create_batch ACREATE_BATCH: :acreate_batch @@ -146,6 +209,48 @@ module Hanzoai FILE_CONTENT: :file_content CREATE_FINE_TUNING_JOB: :create_fine_tuning_job ACREATE_FINE_TUNING_JOB: :acreate_fine_tuning_job + CREATE_VIDEO: :create_video + ACREATE_VIDEO: :acreate_video + AVIDEO_RETRIEVE: :avideo_retrieve + VIDEO_RETRIEVE: :video_retrieve + AVIDEO_CONTENT: :avideo_content + VIDEO_CONTENT: :video_content + VIDEO_REMIX: :video_remix + AVIDEO_REMIX: :avideo_remix + VIDEO_LIST: :video_list + AVIDEO_LIST: :avideo_list + VIDEO_RETRIEVE_JOB: :video_retrieve_job + AVIDEO_RETRIEVE_JOB: :avideo_retrieve_job + VIDEO_DELETE: :video_delete + AVIDEO_DELETE: :avideo_delete + VECTOR_STORE_FILE_CREATE: :vector_store_file_create + AVECTOR_STORE_FILE_CREATE: :avector_store_file_create + VECTOR_STORE_FILE_LIST: :vector_store_file_list + AVECTOR_STORE_FILE_LIST: :avector_store_file_list + VECTOR_STORE_FILE_RETRIEVE: :vector_store_file_retrieve + AVECTOR_STORE_FILE_RETRIEVE: :avector_store_file_retrieve + VECTOR_STORE_FILE_CONTENT: :vector_store_file_content + AVECTOR_STORE_FILE_CONTENT: :avector_store_file_content + VECTOR_STORE_FILE_UPDATE: :vector_store_file_update + AVECTOR_STORE_FILE_UPDATE: :avector_store_file_update + VECTOR_STORE_FILE_DELETE: :vector_store_file_delete + AVECTOR_STORE_FILE_DELETE: :avector_store_file_delete + VECTOR_STORE_CREATE: :vector_store_create + AVECTOR_STORE_CREATE: :avector_store_create + VECTOR_STORE_SEARCH: :vector_store_search + AVECTOR_STORE_SEARCH: :avector_store_search + CREATE_CONTAINER: :create_container + ACREATE_CONTAINER: :acreate_container + LIST_CONTAINERS: :list_containers + ALIST_CONTAINERS: :alist_containers + RETRIEVE_CONTAINER: :retrieve_container + ARETRIEVE_CONTAINER: :aretrieve_container + DELETE_CONTAINER: :delete_container + ADELETE_CONTAINER: :adelete_container + LIST_CONTAINER_FILES: :list_container_files + ALIST_CONTAINER_FILES: :alist_container_files + UPLOAD_CONTAINER_FILE: :upload_container_file + AUPLOAD_CONTAINER_FILE: :aupload_container_file ACANCEL_FINE_TUNING_JOB: :acancel_fine_tuning_job CANCEL_FINE_TUNING_JOB: :cancel_fine_tuning_job ALIST_FINE_TUNING_JOBS: :alist_fine_tuning_jobs @@ -154,6 +259,19 @@ module Hanzoai RETRIEVE_FINE_TUNING_JOB: :retrieve_fine_tuning_job RESPONSES: :responses ARESPONSES: :aresponses + ALIST_INPUT_ITEMS: :alist_input_items + LLM_PASSTHROUGH_ROUTE: :llm_passthrough_route + ALLM_PASSTHROUGH_ROUTE: :allm_passthrough_route + GENERATE_CONTENT: :generate_content + AGENERATE_CONTENT: :agenerate_content + GENERATE_CONTENT_STREAM: :generate_content_stream + AGENERATE_CONTENT_STREAM: :agenerate_content_stream + OCR: :ocr + AOCR: :aocr + CALL_MCP_TOOL: :call_mcp_tool + ASEND_MESSAGE: :asend_message + SEND_MESSAGE: :send_message + ACREATE_SKILL: :acreate_skill def self?.values: -> ::Array[Hanzoai::Models::UtilTransformRequestParams::call_type] end diff --git a/sig/hanzoai/models/util_transform_request_response.rbs b/sig/hanzoai/models/util_transform_request_response.rbs index 62bc11f7..7487de2e 100644 --- a/sig/hanzoai/models/util_transform_request_response.rbs +++ b/sig/hanzoai/models/util_transform_request_response.rbs @@ -4,8 +4,8 @@ module Hanzoai { error: String?, raw_request_api_base: String?, - raw_request_body: top?, - raw_request_headers: top? + raw_request_body: ::Hash[Symbol, top]?, + raw_request_headers: ::Hash[Symbol, top]? } class UtilTransformRequestResponse < Hanzoai::Internal::Type::BaseModel @@ -13,22 +13,22 @@ module Hanzoai attr_accessor raw_request_api_base: String? - attr_accessor raw_request_body: top? + attr_accessor raw_request_body: ::Hash[Symbol, top]? - attr_accessor raw_request_headers: top? + attr_accessor raw_request_headers: ::Hash[Symbol, top]? def initialize: ( ?error: String?, ?raw_request_api_base: String?, - ?raw_request_body: top?, - ?raw_request_headers: top? + ?raw_request_body: ::Hash[Symbol, top]?, + ?raw_request_headers: ::Hash[Symbol, top]? ) -> void def to_hash: -> { error: String?, raw_request_api_base: String?, - raw_request_body: top?, - raw_request_headers: top? + raw_request_body: ::Hash[Symbol, top]?, + raw_request_headers: ::Hash[Symbol, top]? } end end diff --git a/sig/hanzoai/resources/batches.rbs b/sig/hanzoai/resources/batches.rbs index 9fbc01a3..f2b6ad4f 100644 --- a/sig/hanzoai/resources/batches.rbs +++ b/sig/hanzoai/resources/batches.rbs @@ -18,6 +18,7 @@ module Hanzoai ?after: String?, ?limit: Integer?, ?provider: String?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> top @@ -36,6 +37,7 @@ module Hanzoai String provider, ?after: String?, ?limit: Integer?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/budget.rbs b/sig/hanzoai/resources/budget.rbs index a29b4faf..4e1503b5 100644 --- a/sig/hanzoai/resources/budget.rbs +++ b/sig/hanzoai/resources/budget.rbs @@ -4,6 +4,7 @@ module Hanzoai def create: ( ?budget_duration: String?, ?budget_id: String?, + ?budget_reset_at: Time?, ?max_budget: Float?, ?max_parallel_requests: Integer?, ?model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, @@ -16,6 +17,7 @@ module Hanzoai def update: ( ?budget_duration: String?, ?budget_id: String?, + ?budget_reset_at: Time?, ?max_budget: Float?, ?max_parallel_requests: Integer?, ?model_max_budget: ::Hash[Symbol, Hanzoai::BudgetNew::ModelMaxBudget]?, diff --git a/sig/hanzoai/resources/chat/completions.rbs b/sig/hanzoai/resources/chat/completions.rbs index 501c2793..1119af98 100644 --- a/sig/hanzoai/resources/chat/completions.rbs +++ b/sig/hanzoai/resources/chat/completions.rbs @@ -3,7 +3,35 @@ module Hanzoai class Chat class Completions def create: ( - ?model: String?, + messages: ::Array[Hanzoai::Models::Chat::CompletionCreateParams::message], + model: String, + ?caching: bool?, + ?context_window_fallback_dict: ::Hash[Symbol, String]?, + ?fallbacks: ::Array[String]?, + ?frequency_penalty: Float?, + ?function_call: Hanzoai::Models::Chat::CompletionCreateParams::function_call?, + ?functions: ::Array[::Hash[Symbol, top]]?, + ?guardrails: ::Array[String]?, + ?logit_bias: ::Hash[Symbol, Float]?, + ?logprobs: bool?, + ?max_tokens: Integer?, + ?metadata: ::Hash[Symbol, top]?, + ?n: Integer?, + ?num_retries: Integer?, + ?parallel_tool_calls: bool?, + ?presence_penalty: Float?, + ?response_format: ::Hash[Symbol, top]?, + ?seed: Integer?, + ?service_tier: String?, + ?stop: Hanzoai::Models::Chat::CompletionCreateParams::stop?, + ?stream: bool?, + ?stream_options: ::Hash[Symbol, top]?, + ?temperature: Float?, + ?tool_choice: Hanzoai::Models::Chat::CompletionCreateParams::tool_choice?, + ?tools: ::Array[::Hash[Symbol, top]]?, + ?top_logprobs: Integer?, + ?top_p: Float?, + ?user: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/config/pass_through_endpoint.rbs b/sig/hanzoai/resources/config/pass_through_endpoint.rbs index 6ad4264e..0921e40a 100644 --- a/sig/hanzoai/resources/config/pass_through_endpoint.rbs +++ b/sig/hanzoai/resources/config/pass_through_endpoint.rbs @@ -3,19 +3,33 @@ module Hanzoai class Config class PassThroughEndpoint def create: ( - headers: top, path: String, target: String, + ?id: String?, + ?auth: bool, + ?cost_per_request: Float, + ?guardrails: ::Hash[Symbol, Hanzoai::Config::PassThroughGenericEndpoint::Guardrail?]?, + ?headers: ::Hash[Symbol, top], + ?include_subpath: bool, ?request_options: Hanzoai::request_opts ) -> top def update: ( String endpoint_id, + path: String, + target: String, + ?id: String?, + ?auth: bool, + ?cost_per_request: Float, + ?guardrails: ::Hash[Symbol, Hanzoai::Config::PassThroughGenericEndpoint::Guardrail?]?, + ?headers: ::Hash[Symbol, top], + ?include_subpath: bool, ?request_options: Hanzoai::request_opts ) -> top def list: ( ?endpoint_id: String?, + ?team_id: String?, ?request_options: Hanzoai::request_opts ) -> Hanzoai::Config::PassThroughEndpointResponse diff --git a/sig/hanzoai/resources/credentials.rbs b/sig/hanzoai/resources/credentials.rbs index 3e712559..aad4455d 100644 --- a/sig/hanzoai/resources/credentials.rbs +++ b/sig/hanzoai/resources/credentials.rbs @@ -2,9 +2,9 @@ module Hanzoai module Resources class Credentials def create: ( - credential_info: top, + credential_info: ::Hash[Symbol, top], credential_name: String, - ?credential_values: top?, + ?credential_values: ::Hash[Symbol, top]?, ?model_id: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/customer.rbs b/sig/hanzoai/resources/customer.rbs index 3fda96ed..fe0e2191 100644 --- a/sig/hanzoai/resources/customer.rbs +++ b/sig/hanzoai/resources/customer.rbs @@ -8,12 +8,14 @@ module Hanzoai ?blocked: bool, ?budget_duration: String?, ?budget_id: String?, + ?budget_reset_at: Time?, ?default_model: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, ?model_max_budget: ::Hash[Symbol, Hanzoai::CustomerCreateParams::ModelMaxBudget]?, ?rpm_limit: Integer?, ?soft_budget: Float?, + ?spend: Float?, ?tpm_limit: Integer?, ?request_options: Hanzoai::request_opts ) -> top @@ -46,7 +48,7 @@ module Hanzoai def retrieve_info: ( end_user_id: String, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::CustomerRetrieveInfoResponse + ) -> Hanzoai::LiteLlmEndUserTable def unblock: ( user_ids: ::Array[String], diff --git a/sig/hanzoai/resources/embeddings.rbs b/sig/hanzoai/resources/embeddings.rbs index e41a96f5..a90e1e9c 100644 --- a/sig/hanzoai/resources/embeddings.rbs +++ b/sig/hanzoai/resources/embeddings.rbs @@ -2,7 +2,19 @@ module Hanzoai module Resources class Embeddings def create: ( - ?model: String?, + model: String, + ?api_base: String?, + ?api_key: String?, + ?api_type: String?, + ?api_version: String?, + ?caching: bool, + ?custom_llm_provider: Hanzoai::Models::EmbeddingCreateParams::custom_llm_provider?, + ?input: ::Array[String], + ?litellm_call_id: String?, + ?litellm_logging_obj: ::Hash[Symbol, top]?, + ?logger_fn: String?, + ?timeout: Integer, + ?user: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/engines.rbs b/sig/hanzoai/resources/engines.rbs index 2f8dd5fc..aa3dde49 100644 --- a/sig/hanzoai/resources/engines.rbs +++ b/sig/hanzoai/resources/engines.rbs @@ -8,7 +8,23 @@ module Hanzoai ?request_options: Hanzoai::request_opts ) -> top - def embed: (String model, ?request_options: Hanzoai::request_opts) -> top + def embed: ( + String path_model, + body_model: String, + ?api_base: String?, + ?api_key: String?, + ?api_type: String?, + ?api_version: String?, + ?caching: bool, + ?custom_llm_provider: Hanzoai::Models::EngineEmbedParams::custom_llm_provider?, + ?input: ::Array[String], + ?litellm_call_id: String?, + ?litellm_logging_obj: ::Hash[Symbol, top]?, + ?logger_fn: String?, + ?timeout: Integer, + ?user: String?, + ?request_options: Hanzoai::request_opts + ) -> top def initialize: (client: Hanzoai::Client) -> void end diff --git a/sig/hanzoai/resources/engines/chat.rbs b/sig/hanzoai/resources/engines/chat.rbs index 1e631fc2..061eebb6 100644 --- a/sig/hanzoai/resources/engines/chat.rbs +++ b/sig/hanzoai/resources/engines/chat.rbs @@ -3,7 +3,36 @@ module Hanzoai class Engines class Chat def complete: ( - String model, + String path_model, + messages: ::Array[Hanzoai::Models::Engines::ChatCompleteParams::message], + body_model: String, + ?caching: bool?, + ?context_window_fallback_dict: ::Hash[Symbol, String]?, + ?fallbacks: ::Array[String]?, + ?frequency_penalty: Float?, + ?function_call: Hanzoai::Models::Engines::ChatCompleteParams::function_call?, + ?functions: ::Array[::Hash[Symbol, top]]?, + ?guardrails: ::Array[String]?, + ?logit_bias: ::Hash[Symbol, Float]?, + ?logprobs: bool?, + ?max_tokens: Integer?, + ?metadata: ::Hash[Symbol, top]?, + ?n: Integer?, + ?num_retries: Integer?, + ?parallel_tool_calls: bool?, + ?presence_penalty: Float?, + ?response_format: ::Hash[Symbol, top]?, + ?seed: Integer?, + ?service_tier: String?, + ?stop: Hanzoai::Models::Engines::ChatCompleteParams::stop?, + ?stream: bool?, + ?stream_options: ::Hash[Symbol, top]?, + ?temperature: Float?, + ?tool_choice: Hanzoai::Models::Engines::ChatCompleteParams::tool_choice?, + ?tools: ::Array[::Hash[Symbol, top]]?, + ?top_logprobs: Integer?, + ?top_p: Float?, + ?user: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/files.rbs b/sig/hanzoai/resources/files.rbs index e63bf550..5a501d4f 100644 --- a/sig/hanzoai/resources/files.rbs +++ b/sig/hanzoai/resources/files.rbs @@ -8,6 +8,9 @@ module Hanzoai file: Hanzoai::Internal::file_input, purpose: String, ?custom_llm_provider: String, + ?litellm_metadata: String?, + ?target_model_names: String, + ?target_storage: String, ?request_options: Hanzoai::request_opts ) -> top @@ -20,6 +23,7 @@ module Hanzoai def list: ( String provider, ?purpose: String?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/fine_tuning/jobs.rbs b/sig/hanzoai/resources/fine_tuning/jobs.rbs index 48195ef7..2c12705d 100644 --- a/sig/hanzoai/resources/fine_tuning/jobs.rbs +++ b/sig/hanzoai/resources/fine_tuning/jobs.rbs @@ -5,10 +5,10 @@ module Hanzoai attr_reader cancel: Hanzoai::Resources::FineTuning::Jobs::Cancel def create: ( - custom_llm_provider: Hanzoai::Models::FineTuning::JobCreateParams::custom_llm_provider, model: String, training_file: String, - ?hyperparameters: Hanzoai::FineTuning::JobCreateParams::Hyperparameters?, + ?custom_llm_provider: Hanzoai::Models::FineTuning::LiteLlmFineTuningJobCreate::custom_llm_provider?, + ?hyperparameters: Hanzoai::FineTuning::LiteLlmFineTuningJobCreate::Hyperparameters?, ?integrations: ::Array[String]?, ?seed: Integer?, ?suffix: String?, @@ -18,14 +18,15 @@ module Hanzoai def retrieve: ( String fine_tuning_job_id, - custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider, + ?custom_llm_provider: Hanzoai::Models::FineTuning::JobRetrieveParams::custom_llm_provider?, ?request_options: Hanzoai::request_opts ) -> top def list: ( - custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider, ?after: String?, + ?custom_llm_provider: Hanzoai::Models::FineTuning::JobListParams::custom_llm_provider?, ?limit: Integer?, + ?target_model_names: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/health.rbs b/sig/hanzoai/resources/health.rbs index 98aae1f0..95cfb726 100644 --- a/sig/hanzoai/resources/health.rbs +++ b/sig/hanzoai/resources/health.rbs @@ -3,6 +3,7 @@ module Hanzoai class Health def check_all: ( ?model: String?, + ?model_id: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/images/generations.rbs b/sig/hanzoai/resources/images/generations.rbs index 4ec5d149..bf52e9ed 100644 --- a/sig/hanzoai/resources/images/generations.rbs +++ b/sig/hanzoai/resources/images/generations.rbs @@ -2,7 +2,10 @@ module Hanzoai module Resources class Images class Generations - def create: (?request_options: Hanzoai::request_opts) -> top + def create: ( + ?model: String?, + ?request_options: Hanzoai::request_opts + ) -> top def initialize: (client: Hanzoai::Client) -> void end diff --git a/sig/hanzoai/resources/key.rbs b/sig/hanzoai/resources/key.rbs index 6aab80a3..addd2b1d 100644 --- a/sig/hanzoai/resources/key.rbs +++ b/sig/hanzoai/resources/key.rbs @@ -5,43 +5,59 @@ module Hanzoai def update: ( key: String, - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::KeyUpdateParams::AllowedVectorStoreIndex]?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?enforced_params: ::Array[String]?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::KeyUpdateParams::ObjectPermission?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?rotation_interval: String?, + ?router_settings: Hanzoai::KeyUpdateParams::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::KeyUpdateParams::rpm_limit_type?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?temp_budget_expiry: Time?, ?temp_budget_increase: Float?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::KeyUpdateParams::tpm_limit_type?, ?user_id: String?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> top def list: ( + ?expand: ::Array[String]?, + ?include_created_by_keys: bool, ?include_team_keys: bool, ?key_alias: String?, + ?key_hash: String?, ?organization_id: String?, ?page: Integer, ?return_full_object: bool, ?size: Integer, + ?sort_by: String?, + ?sort_order: String, + ?status: String?, ?team_id: String?, ?user_id: String?, ?request_options: Hanzoai::request_opts @@ -50,13 +66,13 @@ module Hanzoai def delete: ( ?key_aliases: ::Array[String]?, ?keys: ::Array[String]?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> top def block: ( key: String, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> Hanzoai::Models::KeyBlockResponse? @@ -65,68 +81,93 @@ module Hanzoai ) -> Hanzoai::Models::KeyCheckHealthResponse def generate: ( - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::KeyGenerateParams::AllowedVectorStoreIndex]?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?enforced_params: ::Array[String]?, ?guardrails: ::Array[String]?, ?key: String?, ?key_alias: String?, + ?key_type: Hanzoai::Models::KeyGenerateParams::key_type?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::KeyGenerateParams::ObjectPermission?, + ?organization_id: String?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?rotation_interval: String?, + ?router_settings: Hanzoai::KeyGenerateParams::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::KeyGenerateParams::rpm_limit_type?, ?send_invite_email: bool?, ?soft_budget: Float?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::KeyGenerateParams::tpm_limit_type?, ?user_id: String?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> Hanzoai::GenerateKeyResponse def regenerate_by_key: ( String path_key, - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::Key::RegenerateKeyRequest::AllowedVectorStoreIndex]?, + ?auto_rotate: bool?, ?blocked: bool?, ?budget_duration: String?, ?budget_id: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?enforced_params: ::Array[String]?, ?guardrails: ::Array[String]?, ?body_key: String?, ?key_alias: String?, + ?key_type: Hanzoai::Models::Key::RegenerateKeyRequest::key_type?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, + ?new_key: String?, ?new_master_key: String?, - ?permissions: top?, + ?object_permission: Hanzoai::Key::RegenerateKeyRequest::ObjectPermission?, + ?organization_id: String?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, + ?rotation_interval: String?, + ?router_settings: Hanzoai::Key::RegenerateKeyRequest::RouterSettings?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::rpm_limit_type?, ?send_invite_email: bool?, ?soft_budget: Float?, ?spend: Float?, ?tags: ::Array[String]?, ?team_id: String?, ?tpm_limit: Integer?, + ?tpm_limit_type: Hanzoai::Models::Key::RegenerateKeyRequest::tpm_limit_type?, ?user_id: String?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> Hanzoai::GenerateKeyResponse? @@ -137,7 +178,7 @@ module Hanzoai def unblock: ( key: String, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/model.rbs b/sig/hanzoai/resources/model.rbs index 7306f3b3..1ad4d595 100644 --- a/sig/hanzoai/resources/model.rbs +++ b/sig/hanzoai/resources/model.rbs @@ -6,7 +6,7 @@ module Hanzoai attr_reader update: Hanzoai::Resources::Model::Update def create: ( - llm_params: Hanzoai::ModelCreateParams::LlmParams, + litellm_params: Hanzoai::ModelCreateParams::LitellmParams, model_info: Hanzoai::ModelInfo, model_name: String, ?request_options: Hanzoai::request_opts diff --git a/sig/hanzoai/resources/model/info.rbs b/sig/hanzoai/resources/model/info.rbs index 77a1fe3a..38cbd000 100644 --- a/sig/hanzoai/resources/model/info.rbs +++ b/sig/hanzoai/resources/model/info.rbs @@ -3,7 +3,7 @@ module Hanzoai class Model class Info def list: ( - ?llm_model_id: String?, + ?litellm_model_id: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/model/update.rbs b/sig/hanzoai/resources/model/update.rbs index 477547fb..6962c0e6 100644 --- a/sig/hanzoai/resources/model/update.rbs +++ b/sig/hanzoai/resources/model/update.rbs @@ -3,7 +3,7 @@ module Hanzoai class Model class Update def full: ( - ?llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + ?litellm_params: Hanzoai::Model::UpdateDeployment::LitellmParams?, ?model_info: Hanzoai::ModelInfo?, ?model_name: String?, ?request_options: Hanzoai::request_opts @@ -11,7 +11,7 @@ module Hanzoai def partial: ( String model_id, - ?llm_params: Hanzoai::Model::UpdateDeployment::LlmParams?, + ?litellm_params: Hanzoai::Model::UpdateDeployment::LitellmParams?, ?model_info: Hanzoai::ModelInfo?, ?model_name: String?, ?request_options: Hanzoai::request_opts diff --git a/sig/hanzoai/resources/models.rbs b/sig/hanzoai/resources/models.rbs index 0dc5420f..64ce34c0 100644 --- a/sig/hanzoai/resources/models.rbs +++ b/sig/hanzoai/resources/models.rbs @@ -2,6 +2,10 @@ module Hanzoai module Resources class Models def list: ( + ?fallback_type: String?, + ?include_metadata: bool?, + ?include_model_access_groups: bool?, + ?only_model_access_groups: bool?, ?return_wildcard_routes: bool?, ?team_id: String?, ?request_options: Hanzoai::request_opts diff --git a/sig/hanzoai/resources/openai/deployments.rbs b/sig/hanzoai/resources/openai/deployments.rbs index 36da5662..0ddf0a6e 100644 --- a/sig/hanzoai/resources/openai/deployments.rbs +++ b/sig/hanzoai/resources/openai/deployments.rbs @@ -10,7 +10,20 @@ module Hanzoai ) -> top def embed: ( - String model, + String path_model, + body_model: String, + ?api_base: String?, + ?api_key: String?, + ?api_type: String?, + ?api_version: String?, + ?caching: bool, + ?custom_llm_provider: Hanzoai::Models::OpenAI::DeploymentEmbedParams::custom_llm_provider?, + ?input: ::Array[String], + ?litellm_call_id: String?, + ?litellm_logging_obj: ::Hash[Symbol, top]?, + ?logger_fn: String?, + ?timeout: Integer, + ?user: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/openai/deployments/chat.rbs b/sig/hanzoai/resources/openai/deployments/chat.rbs index 6a28443d..79fa83fa 100644 --- a/sig/hanzoai/resources/openai/deployments/chat.rbs +++ b/sig/hanzoai/resources/openai/deployments/chat.rbs @@ -4,7 +4,36 @@ module Hanzoai class Deployments class Chat def complete: ( - String model, + String path_model, + messages: ::Array[Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::message], + body_model: String, + ?caching: bool?, + ?context_window_fallback_dict: ::Hash[Symbol, String]?, + ?fallbacks: ::Array[String]?, + ?frequency_penalty: Float?, + ?function_call: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::function_call?, + ?functions: ::Array[::Hash[Symbol, top]]?, + ?guardrails: ::Array[String]?, + ?logit_bias: ::Hash[Symbol, Float]?, + ?logprobs: bool?, + ?max_tokens: Integer?, + ?metadata: ::Hash[Symbol, top]?, + ?n: Integer?, + ?num_retries: Integer?, + ?parallel_tool_calls: bool?, + ?presence_penalty: Float?, + ?response_format: ::Hash[Symbol, top]?, + ?seed: Integer?, + ?service_tier: String?, + ?stop: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::stop?, + ?stream: bool?, + ?stream_options: ::Hash[Symbol, top]?, + ?temperature: Float?, + ?tool_choice: Hanzoai::Models::OpenAI::Deployments::ChatCompleteParams::tool_choice?, + ?tools: ::Array[::Hash[Symbol, top]]?, + ?top_logprobs: Integer?, + ?top_p: Float?, + ?user: String?, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/organization.rbs b/sig/hanzoai/resources/organization.rbs index e6ec84aa..f410deca 100644 --- a/sig/hanzoai/resources/organization.rbs +++ b/sig/hanzoai/resources/organization.rbs @@ -9,9 +9,12 @@ module Hanzoai ?budget_id: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, Integer]?, + ?model_tpm_limit: ::Hash[Symbol, Integer]?, ?models: ::Array[top], + ?object_permission: Hanzoai::OrganizationCreateParams::ObjectPermission?, ?organization_id: String?, ?rpm_limit: Integer?, ?soft_budget: Float?, @@ -20,17 +23,12 @@ module Hanzoai ) -> Hanzoai::Models::OrganizationCreateResponse def update: ( - ?budget_id: String?, - ?metadata: top?, - ?models: ::Array[String]?, - ?organization_alias: String?, - ?organization_id: String?, - ?spend: Float?, - ?updated_by: String?, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::OrganizationUpdateResponse + ) -> Hanzoai::OrganizationTableWithMembers def list: ( + ?org_alias: String?, + ?org_id: String?, ?request_options: Hanzoai::request_opts ) -> Hanzoai::Models::organization_list_response @@ -56,11 +54,11 @@ module Hanzoai def update_member: ( organization_id: String, ?max_budget_in_organization: Float?, - ?role: Hanzoai::Models::OrganizationUpdateMemberParams::role?, + ?role: Hanzoai::Models::user_roles?, ?user_email: String?, ?user_id: String?, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::OrganizationUpdateMemberResponse + ) -> Hanzoai::OrganizationMembershipTable def initialize: (client: Hanzoai::Client) -> void end diff --git a/sig/hanzoai/resources/organization/info.rbs b/sig/hanzoai/resources/organization/info.rbs index 7ebb198c..e815299a 100644 --- a/sig/hanzoai/resources/organization/info.rbs +++ b/sig/hanzoai/resources/organization/info.rbs @@ -5,7 +5,7 @@ module Hanzoai def retrieve: ( organization_id: String, ?request_options: Hanzoai::request_opts - ) -> Hanzoai::Models::Organization::InfoRetrieveResponse + ) -> Hanzoai::OrganizationTableWithMembers def deprecated: ( organizations: ::Array[String], diff --git a/sig/hanzoai/resources/spend.rbs b/sig/hanzoai/resources/spend.rbs index 48803e05..d8cd2d6f 100644 --- a/sig/hanzoai/resources/spend.rbs +++ b/sig/hanzoai/resources/spend.rbs @@ -2,7 +2,7 @@ module Hanzoai module Resources class Spend def calculate_spend: ( - ?completion_response: top?, + ?completion_response: ::Hash[Symbol, top]?, ?messages: ::Array[top]?, ?model: String?, ?request_options: Hanzoai::request_opts @@ -13,6 +13,7 @@ module Hanzoai ?end_date: String?, ?request_id: String?, ?start_date: String?, + ?summarize: bool, ?user_id: String?, ?request_options: Hanzoai::request_opts ) -> Hanzoai::Models::spend_list_logs_response diff --git a/sig/hanzoai/resources/team.rbs b/sig/hanzoai/resources/team.rbs index 34e92f95..31a0657c 100644 --- a/sig/hanzoai/resources/team.rbs +++ b/sig/hanzoai/resources/team.rbs @@ -7,40 +7,68 @@ module Hanzoai def create: ( ?admins: ::Array[top], + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::TeamCreateParams::AllowedVectorStoreIndex]?, ?blocked: bool, ?budget_duration: String?, ?guardrails: ::Array[String]?, ?max_budget: Float?, ?members: ::Array[top], ?members_with_roles: ::Array[Hanzoai::Member], - ?metadata: top?, - ?model_aliases: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_aliases: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, Integer]?, + ?model_tpm_limit: ::Hash[Symbol, Integer]?, ?models: ::Array[top], + ?object_permission: Hanzoai::TeamCreateParams::ObjectPermission?, ?organization_id: String?, + ?prompts: ::Array[String]?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, + ?rpm_limit_type: Hanzoai::Models::TeamCreateParams::rpm_limit_type?, + ?secret_manager_settings: ::Hash[Symbol, top]?, ?tags: ::Array[top]?, ?team_alias: String?, ?team_id: String?, + ?team_member_budget: Float?, + ?team_member_key_duration: String?, + ?team_member_permissions: ::Array[String]?, + ?team_member_rpm_limit: Integer?, + ?team_member_tpm_limit: Integer?, ?tpm_limit: Integer?, - ?llm_changed_by: String, + ?tpm_limit_type: Hanzoai::Models::TeamCreateParams::tpm_limit_type?, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> Hanzoai::Models::TeamCreateResponse def update: ( team_id: String, + ?allowed_passthrough_routes: ::Array[top]?, + ?allowed_vector_store_indexes: ::Array[Hanzoai::TeamUpdateParams::AllowedVectorStoreIndex]?, ?blocked: bool?, ?budget_duration: String?, ?guardrails: ::Array[String]?, ?max_budget: Float?, - ?metadata: top?, - ?model_aliases: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_aliases: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, Integer]?, + ?model_tpm_limit: ::Hash[Symbol, Integer]?, ?models: ::Array[top]?, + ?object_permission: Hanzoai::TeamUpdateParams::ObjectPermission?, ?organization_id: String?, + ?prompts: ::Array[String]?, + ?router_settings: ::Hash[Symbol, top]?, ?rpm_limit: Integer?, + ?secret_manager_settings: ::Hash[Symbol, top]?, ?tags: ::Array[top]?, ?team_alias: String?, + ?team_member_budget: Float?, + ?team_member_budget_duration: String?, + ?team_member_key_duration: String?, + ?team_member_rpm_limit: Integer?, + ?team_member_tpm_limit: Integer?, ?tpm_limit: Integer?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> top @@ -52,7 +80,7 @@ module Hanzoai def delete: ( team_ids: ::Array[String], - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> top @@ -99,6 +127,8 @@ module Hanzoai team_id: String, ?max_budget_in_team: Float?, ?role: Hanzoai::Models::TeamUpdateMemberParams::role?, + ?rpm_limit: Integer?, + ?tpm_limit: Integer?, ?user_email: String?, ?user_id: String?, ?request_options: Hanzoai::request_opts diff --git a/sig/hanzoai/resources/team/callback.rbs b/sig/hanzoai/resources/team/callback.rbs index c08becdb..6277fd55 100644 --- a/sig/hanzoai/resources/team/callback.rbs +++ b/sig/hanzoai/resources/team/callback.rbs @@ -12,7 +12,7 @@ module Hanzoai callback_name: String, callback_vars: ::Hash[Symbol, String], ?callback_type: Hanzoai::Models::Team::CallbackAddParams::callback_type?, - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/user.rbs b/sig/hanzoai/resources/user.rbs index f9132e23..444f3bf9 100644 --- a/sig/hanzoai/resources/user.rbs +++ b/sig/hanzoai/resources/user.rbs @@ -2,28 +2,32 @@ module Hanzoai module Resources class User def create: ( - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, ?auto_create_key: bool, ?blocked: bool?, ?budget_duration: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, - ?permissions: top?, + ?object_permission: Hanzoai::UserCreateParams::ObjectPermission?, + ?organizations: ::Array[String]?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, ?rpm_limit: Integer?, ?send_invite_email: bool?, ?spend: Float?, + ?sso_user_id: String?, ?team_id: String?, - ?teams: ::Array[top]?, + ?teams: Hanzoai::Models::UserCreateParams::teams?, ?tpm_limit: Integer?, ?user_alias: String?, ?user_email: String?, @@ -33,44 +37,39 @@ module Hanzoai ) -> Hanzoai::Models::UserCreateResponse def update: ( - ?aliases: top?, + ?aliases: ::Hash[Symbol, top]?, ?allowed_cache_controls: ::Array[top]?, ?blocked: bool?, ?budget_duration: String?, - ?config: top?, + ?config: ::Hash[Symbol, top]?, ?duration: String?, ?guardrails: ::Array[String]?, ?key_alias: String?, ?max_budget: Float?, ?max_parallel_requests: Integer?, - ?metadata: top?, - ?model_max_budget: top?, - ?model_rpm_limit: top?, - ?model_tpm_limit: top?, + ?metadata: ::Hash[Symbol, top]?, + ?model_max_budget: ::Hash[Symbol, top]?, + ?model_rpm_limit: ::Hash[Symbol, top]?, + ?model_tpm_limit: ::Hash[Symbol, top]?, ?models: ::Array[top]?, + ?object_permission: Hanzoai::UserUpdateParams::ObjectPermission?, ?password: String?, - ?permissions: top?, + ?permissions: ::Hash[Symbol, top]?, + ?prompts: ::Array[String]?, ?rpm_limit: Integer?, ?spend: Float?, ?team_id: String?, ?tpm_limit: Integer?, + ?user_alias: String?, ?user_email: String?, ?user_id: String?, ?user_role: Hanzoai::Models::UserUpdateParams::user_role?, ?request_options: Hanzoai::request_opts ) -> top - def list: ( - ?page: Integer, - ?page_size: Integer, - ?role: String?, - ?user_ids: String?, - ?request_options: Hanzoai::request_opts - ) -> top - def delete: ( user_ids: ::Array[String], - ?llm_changed_by: String, + ?litellm_changed_by: String, ?request_options: Hanzoai::request_opts ) -> top diff --git a/sig/hanzoai/resources/utils.rbs b/sig/hanzoai/resources/utils.rbs index 2a4125cf..9346157f 100644 --- a/sig/hanzoai/resources/utils.rbs +++ b/sig/hanzoai/resources/utils.rbs @@ -8,14 +8,16 @@ module Hanzoai def token_counter: ( model: String, - ?messages: ::Array[top]?, + ?call_endpoint: bool, + ?contents: ::Array[::Hash[Symbol, top]]?, + ?messages: ::Array[::Hash[Symbol, top]]?, ?prompt: String?, ?request_options: Hanzoai::request_opts ) -> Hanzoai::Models::UtilTokenCounterResponse def transform_request: ( call_type: Hanzoai::Models::UtilTransformRequestParams::call_type, - request_body: top, + request_body: ::Hash[Symbol, top], ?request_options: Hanzoai::request_opts ) -> Hanzoai::Models::UtilTransformRequestResponse diff --git a/test/hanzoai/resources/cache_test.rb b/test/hanzoai/resources/cache_test.rb index d64fe865..066af364 100644 --- a/test/hanzoai/resources/cache_test.rb +++ b/test/hanzoai/resources/cache_test.rb @@ -36,8 +36,8 @@ def test_ping response => { cache_type: String, status: String, - health_check_cache_params: Hanzoai::Internal::Type::Unknown | nil, - llm_cache_params: String | nil, + health_check_cache_params: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + litellm_cache_params: String | nil, ping_response: Hanzoai::Internal::Type::Boolean | nil, set_cache_response: String | nil } diff --git a/test/hanzoai/resources/chat/completions_test.rb b/test/hanzoai/resources/chat/completions_test.rb index ad91d79a..1736d668 100644 --- a/test/hanzoai/resources/chat/completions_test.rb +++ b/test/hanzoai/resources/chat/completions_test.rb @@ -3,10 +3,14 @@ require_relative "../../test_helper" class Hanzoai::Test::Resources::Chat::CompletionsTest < Hanzoai::Test::ResourceTest - def test_create + def test_create_required_params skip("Prism tests are disabled") - response = @hanzo.chat.completions.create + response = + @hanzo.chat.completions.create( + messages: [{content: "Hello, how are you?", role: :user}], + model: "model" + ) assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/config/pass_through_endpoint_test.rb b/test/hanzoai/resources/config/pass_through_endpoint_test.rb index dbc7052e..bbea22cb 100644 --- a/test/hanzoai/resources/config/pass_through_endpoint_test.rb +++ b/test/hanzoai/resources/config/pass_through_endpoint_test.rb @@ -6,17 +6,17 @@ class Hanzoai::Test::Resources::Config::PassThroughEndpointTest < Hanzoai::Test: def test_create_required_params skip("Prism tests are disabled") - response = @hanzo.config.pass_through_endpoint.create(headers: {}, path: "path", target: "target") + response = @hanzo.config.pass_through_endpoint.create(path: "path", target: "target") assert_pattern do response => Hanzoai::Internal::Type::Unknown end end - def test_update + def test_update_required_params skip("Prism tests are disabled") - response = @hanzo.config.pass_through_endpoint.update("endpoint_id") + response = @hanzo.config.pass_through_endpoint.update("endpoint_id", path: "path", target: "target") assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/credentials_test.rb b/test/hanzoai/resources/credentials_test.rb index ce5c627e..8eea013c 100644 --- a/test/hanzoai/resources/credentials_test.rb +++ b/test/hanzoai/resources/credentials_test.rb @@ -6,7 +6,7 @@ class Hanzoai::Test::Resources::CredentialsTest < Hanzoai::Test::ResourceTest def test_create_required_params skip("Prism tests are disabled") - response = @hanzo.credentials.create(credential_info: {}, credential_name: "credential_name") + response = @hanzo.credentials.create(credential_info: {foo: "bar"}, credential_name: "credential_name") assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/customer_test.rb b/test/hanzoai/resources/customer_test.rb index bedcdbaa..b2ccec40 100644 --- a/test/hanzoai/resources/customer_test.rb +++ b/test/hanzoai/resources/customer_test.rb @@ -29,7 +29,7 @@ def test_list response = @hanzo.customer.list assert_pattern do - response => ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::CustomerListResponseItem]) + response => ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::LiteLlmEndUserTable]) end end @@ -59,7 +59,7 @@ def test_retrieve_info_required_params response = @hanzo.customer.retrieve_info(end_user_id: "end_user_id") assert_pattern do - response => Hanzoai::Models::CustomerRetrieveInfoResponse + response => Hanzoai::LiteLlmEndUserTable end assert_pattern do @@ -67,9 +67,9 @@ def test_retrieve_info_required_params blocked: Hanzoai::Internal::Type::Boolean, user_id: String, alias_: String | nil, - allowed_model_region: Hanzoai::Models::CustomerRetrieveInfoResponse::AllowedModelRegion | nil, + allowed_model_region: Hanzoai::LiteLlmEndUserTable::AllowedModelRegion | nil, default_model: String | nil, - llm_budget_table: Hanzoai::Models::CustomerRetrieveInfoResponse::LlmBudgetTable | nil, + litellm_budget_table: Hanzoai::BudgetTable | nil, spend: Float | nil } end diff --git a/test/hanzoai/resources/embeddings_test.rb b/test/hanzoai/resources/embeddings_test.rb index a36560b8..1bea4258 100644 --- a/test/hanzoai/resources/embeddings_test.rb +++ b/test/hanzoai/resources/embeddings_test.rb @@ -3,10 +3,10 @@ require_relative "../test_helper" class Hanzoai::Test::Resources::EmbeddingsTest < Hanzoai::Test::ResourceTest - def test_create + def test_create_required_params skip("Prism tests are disabled") - response = @hanzo.embeddings.create + response = @hanzo.embeddings.create(model: "model") assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/engines/chat_test.rb b/test/hanzoai/resources/engines/chat_test.rb index 09cc8a52..dce95e6e 100644 --- a/test/hanzoai/resources/engines/chat_test.rb +++ b/test/hanzoai/resources/engines/chat_test.rb @@ -3,10 +3,15 @@ require_relative "../../test_helper" class Hanzoai::Test::Resources::Engines::ChatTest < Hanzoai::Test::ResourceTest - def test_complete + def test_complete_required_params skip("Prism tests are disabled") - response = @hanzo.engines.chat.complete("model") + response = + @hanzo.engines.chat.complete( + "model", + messages: [{content: "Hello, how are you?", role: :user}], + body_model: "model" + ) assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/engines_test.rb b/test/hanzoai/resources/engines_test.rb index 521f51db..5579b989 100644 --- a/test/hanzoai/resources/engines_test.rb +++ b/test/hanzoai/resources/engines_test.rb @@ -13,10 +13,10 @@ def test_complete end end - def test_embed + def test_embed_required_params skip("Prism tests are disabled") - response = @hanzo.engines.embed("model") + response = @hanzo.engines.embed("model", body_model: "model") assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/fine_tuning/jobs_test.rb b/test/hanzoai/resources/fine_tuning/jobs_test.rb index 689a47ce..56e46f07 100644 --- a/test/hanzoai/resources/fine_tuning/jobs_test.rb +++ b/test/hanzoai/resources/fine_tuning/jobs_test.rb @@ -6,32 +6,27 @@ class Hanzoai::Test::Resources::FineTuning::JobsTest < Hanzoai::Test::ResourceTe def test_create_required_params skip("Prism tests are disabled") - response = - @hanzo.fine_tuning.jobs.create( - custom_llm_provider: :openai, - model: "model", - training_file: "training_file" - ) + response = @hanzo.fine_tuning.jobs.create(model: "model", training_file: "training_file") assert_pattern do response => Hanzoai::Internal::Type::Unknown end end - def test_retrieve_required_params + def test_retrieve skip("Prism tests are disabled") - response = @hanzo.fine_tuning.jobs.retrieve("fine_tuning_job_id", custom_llm_provider: :openai) + response = @hanzo.fine_tuning.jobs.retrieve("fine_tuning_job_id") assert_pattern do response => Hanzoai::Internal::Type::Unknown end end - def test_list_required_params + def test_list skip("Prism tests are disabled") - response = @hanzo.fine_tuning.jobs.list(custom_llm_provider: :openai) + response = @hanzo.fine_tuning.jobs.list assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/key_test.rb b/test/hanzoai/resources/key_test.rb index ab89c66e..2e478388 100644 --- a/test/hanzoai/resources/key_test.rb +++ b/test/hanzoai/resources/key_test.rb @@ -54,26 +54,35 @@ def test_block_required_params assert_pattern do response => { token: String | nil, - aliases: Hanzoai::Internal::Type::Unknown | nil, + aliases: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_routes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + auto_rotate: Hanzoai::Internal::Type::Boolean | nil, blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_reset_at: Time | nil, - config: Hanzoai::Internal::Type::Unknown | nil, + config: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, created_at: Time | nil, created_by: String | nil, expires: Hanzoai::Models::KeyBlockResponse::Expires | nil, key_alias: String | nil, key_name: String | nil, - llm_budget_table: Hanzoai::Internal::Type::Unknown | nil, + key_rotation_at: Time | nil, + last_rotation_at: Time | nil, + litellm_budget_table: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, max_budget: Float | nil, max_parallel_requests: Integer | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, - model_max_budget: Hanzoai::Internal::Type::Unknown | nil, - model_spend: Hanzoai::Internal::Type::Unknown | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_max_budget: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_spend: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + object_permission: Hanzoai::Models::KeyBlockResponse::ObjectPermission | nil, + object_permission_id: String | nil, org_id: String | nil, - permissions: Hanzoai::Internal::Type::Unknown | nil, + permissions: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + rotation_count: Integer | nil, + rotation_interval: String | nil, + router_settings: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, rpm_limit: Integer | nil, soft_budget_cooldown: Hanzoai::Internal::Type::Boolean | nil, spend: Float | nil, @@ -114,36 +123,47 @@ def test_generate assert_pattern do response => { - expires: Time | nil, key: String, token: String | nil, - aliases: Hanzoai::Internal::Type::Unknown | nil, + aliases: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_passthrough_routes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_routes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_vector_store_indexes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex]) | nil, blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_id: String | nil, - config: Hanzoai::Internal::Type::Unknown | nil, + config: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + created_at: Time | nil, created_by: String | nil, duration: String | nil, enforced_params: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + expires: Time | nil, guardrails: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, key_alias: String | nil, key_name: String | nil, - llm_budget_table: Hanzoai::Internal::Type::Unknown | nil, + litellm_budget_table: Hanzoai::Internal::Type::Unknown | nil, max_budget: Float | nil, max_parallel_requests: Integer | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, - model_max_budget: Hanzoai::Internal::Type::Unknown | nil, - model_rpm_limit: Hanzoai::Internal::Type::Unknown | nil, - model_tpm_limit: Hanzoai::Internal::Type::Unknown | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_max_budget: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_rpm_limit: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_tpm_limit: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - permissions: Hanzoai::Internal::Type::Unknown | nil, + object_permission: Hanzoai::GenerateKeyResponse::ObjectPermission | nil, + organization_id: String | nil, + permissions: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + prompts: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + router_settings: Hanzoai::GenerateKeyResponse::RouterSettings | nil, rpm_limit: Integer | nil, + rpm_limit_type: Hanzoai::GenerateKeyResponse::RpmLimitType | nil, spend: Float | nil, tags: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, team_id: String | nil, token_id: String | nil, tpm_limit: Integer | nil, + tpm_limit_type: Hanzoai::GenerateKeyResponse::TpmLimitType | nil, + updated_at: Time | nil, updated_by: String | nil, user_id: String | nil } @@ -161,36 +181,47 @@ def test_regenerate_by_key assert_pattern do response => { - expires: Time | nil, key: String, token: String | nil, - aliases: Hanzoai::Internal::Type::Unknown | nil, + aliases: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_passthrough_routes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_routes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_vector_store_indexes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::GenerateKeyResponse::AllowedVectorStoreIndex]) | nil, blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_id: String | nil, - config: Hanzoai::Internal::Type::Unknown | nil, + config: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + created_at: Time | nil, created_by: String | nil, duration: String | nil, enforced_params: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + expires: Time | nil, guardrails: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, key_alias: String | nil, key_name: String | nil, - llm_budget_table: Hanzoai::Internal::Type::Unknown | nil, + litellm_budget_table: Hanzoai::Internal::Type::Unknown | nil, max_budget: Float | nil, max_parallel_requests: Integer | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, - model_max_budget: Hanzoai::Internal::Type::Unknown | nil, - model_rpm_limit: Hanzoai::Internal::Type::Unknown | nil, - model_tpm_limit: Hanzoai::Internal::Type::Unknown | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_max_budget: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_rpm_limit: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_tpm_limit: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - permissions: Hanzoai::Internal::Type::Unknown | nil, + object_permission: Hanzoai::GenerateKeyResponse::ObjectPermission | nil, + organization_id: String | nil, + permissions: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + prompts: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + router_settings: Hanzoai::GenerateKeyResponse::RouterSettings | nil, rpm_limit: Integer | nil, + rpm_limit_type: Hanzoai::GenerateKeyResponse::RpmLimitType | nil, spend: Float | nil, tags: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, team_id: String | nil, token_id: String | nil, tpm_limit: Integer | nil, + tpm_limit_type: Hanzoai::GenerateKeyResponse::TpmLimitType | nil, + updated_at: Time | nil, updated_by: String | nil, user_id: String | nil } diff --git a/test/hanzoai/resources/model_test.rb b/test/hanzoai/resources/model_test.rb index 2ab8b419..f8f053eb 100644 --- a/test/hanzoai/resources/model_test.rb +++ b/test/hanzoai/resources/model_test.rb @@ -7,7 +7,7 @@ def test_create_required_params skip("Prism tests are disabled") response = - @hanzo.model.create(llm_params: {model: "model"}, model_info: {id: "id"}, model_name: "model_name") + @hanzo.model.create(litellm_params: {model: "model"}, model_info: {id: "id"}, model_name: "model_name") assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/openai/deployments/chat_test.rb b/test/hanzoai/resources/openai/deployments/chat_test.rb index df8022bb..ec048313 100644 --- a/test/hanzoai/resources/openai/deployments/chat_test.rb +++ b/test/hanzoai/resources/openai/deployments/chat_test.rb @@ -3,10 +3,15 @@ require_relative "../../../test_helper" class Hanzoai::Test::Resources::OpenAI::Deployments::ChatTest < Hanzoai::Test::ResourceTest - def test_complete + def test_complete_required_params skip("Prism tests are disabled") - response = @hanzo.openai.deployments.chat.complete("model") + response = + @hanzo.openai.deployments.chat.complete( + "model", + messages: [{content: "Hello, how are you?", role: :user}], + body_model: "model" + ) assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/openai/deployments_test.rb b/test/hanzoai/resources/openai/deployments_test.rb index 958d4c05..1801bc9d 100644 --- a/test/hanzoai/resources/openai/deployments_test.rb +++ b/test/hanzoai/resources/openai/deployments_test.rb @@ -13,10 +13,10 @@ def test_complete end end - def test_embed + def test_embed_required_params skip("Prism tests are disabled") - response = @hanzo.openai.deployments.embed("model") + response = @hanzo.openai.deployments.embed("model", body_model: "model") assert_pattern do response => Hanzoai::Internal::Type::Unknown diff --git a/test/hanzoai/resources/organization/info_test.rb b/test/hanzoai/resources/organization/info_test.rb index 7bccf5c4..86d8aca9 100644 --- a/test/hanzoai/resources/organization/info_test.rb +++ b/test/hanzoai/resources/organization/info_test.rb @@ -9,7 +9,7 @@ def test_retrieve_required_params response = @hanzo.organization.info.retrieve(organization_id: "organization_id") assert_pattern do - response => Hanzoai::Models::Organization::InfoRetrieveResponse + response => Hanzoai::OrganizationTableWithMembers end assert_pattern do @@ -20,13 +20,16 @@ def test_retrieve_required_params models: ^(Hanzoai::Internal::Type::ArrayOf[String]), updated_at: Time, updated_by: String, - llm_budget_table: Hanzoai::Models::Organization::InfoRetrieveResponse::LlmBudgetTable | nil, - members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Organization::InfoRetrieveResponse::Member]) | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, + litellm_budget_table: Hanzoai::BudgetTable | nil, + members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable]) | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + object_permission: Hanzoai::OrganizationTableWithMembers::ObjectPermission | nil, + object_permission_id: String | nil, organization_alias: String | nil, organization_id: String | nil, spend: Float | nil, - teams: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::Organization::InfoRetrieveResponse::Team]) | nil + teams: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers::Team]) | nil, + users: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers::User]) | nil } end end diff --git a/test/hanzoai/resources/organization_test.rb b/test/hanzoai/resources/organization_test.rb index 8c2f4581..16e227dd 100644 --- a/test/hanzoai/resources/organization_test.rb +++ b/test/hanzoai/resources/organization_test.rb @@ -21,9 +21,13 @@ def test_create_required_params organization_id: String, updated_at: Time, updated_by: String, - metadata: Hanzoai::Internal::Type::Unknown | nil, + litellm_budget_table: Hanzoai::BudgetTable | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + object_permission: Hanzoai::Models::OrganizationCreateResponse::ObjectPermission | nil, + object_permission_id: String | nil, organization_alias: String | nil, - spend: Float | nil + spend: Float | nil, + users: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationCreateResponse::User]) | nil } end end @@ -34,7 +38,7 @@ def test_update response = @hanzo.organization.update assert_pattern do - response => Hanzoai::Models::OrganizationUpdateResponse + response => Hanzoai::OrganizationTableWithMembers end assert_pattern do @@ -45,13 +49,16 @@ def test_update models: ^(Hanzoai::Internal::Type::ArrayOf[String]), updated_at: Time, updated_by: String, - llm_budget_table: Hanzoai::Models::OrganizationUpdateResponse::LlmBudgetTable | nil, - members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationUpdateResponse::Member]) | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, + litellm_budget_table: Hanzoai::BudgetTable | nil, + members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable]) | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + object_permission: Hanzoai::OrganizationTableWithMembers::ObjectPermission | nil, + object_permission_id: String | nil, organization_alias: String | nil, organization_id: String | nil, spend: Float | nil, - teams: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationUpdateResponse::Team]) | nil + teams: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers::Team]) | nil, + users: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers::User]) | nil } end end @@ -62,7 +69,7 @@ def test_list response = @hanzo.organization.list assert_pattern do - response => ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationListResponseItem]) + response => ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers]) end end @@ -72,7 +79,7 @@ def test_delete_required_params response = @hanzo.organization.delete(organization_ids: ["string"]) assert_pattern do - response => ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationDeleteResponseItem]) + response => ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationTableWithMembers]) end end @@ -89,7 +96,7 @@ def test_add_member_required_params assert_pattern do response => { organization_id: String, - updated_organization_memberships: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedOrganizationMembership]), + updated_organization_memberships: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::OrganizationMembershipTable]), updated_users: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::OrganizationAddMemberResponse::UpdatedUser]) } end @@ -111,7 +118,7 @@ def test_update_member_required_params response = @hanzo.organization.update_member(organization_id: "organization_id") assert_pattern do - response => Hanzoai::Models::OrganizationUpdateMemberResponse + response => Hanzoai::OrganizationMembershipTable end assert_pattern do @@ -121,7 +128,7 @@ def test_update_member_required_params updated_at: Time, user_id: String, budget_id: String | nil, - llm_budget_table: Hanzoai::Models::OrganizationUpdateMemberResponse::LlmBudgetTable | nil, + litellm_budget_table: Hanzoai::BudgetTable | nil, spend: Float | nil, user: Hanzoai::Internal::Type::Unknown | nil, user_role: String | nil diff --git a/test/hanzoai/resources/team_test.rb b/test/hanzoai/resources/team_test.rb index b55f7da5..ec99785a 100644 --- a/test/hanzoai/resources/team_test.rb +++ b/test/hanzoai/resources/team_test.rb @@ -20,19 +20,24 @@ def test_create budget_duration: String | nil, budget_reset_at: Time | nil, created_at: Time | nil, - llm_model_table: Hanzoai::Models::TeamCreateResponse::LlmModelTable | nil, + litellm_model_table: Hanzoai::Internal::Type::Unknown | nil, max_budget: Float | nil, max_parallel_requests: Integer | nil, members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, members_with_roles: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member]) | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, model_id: Integer | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + object_permission: Hanzoai::Models::TeamCreateResponse::ObjectPermission | nil, + object_permission_id: String | nil, organization_id: String | nil, + router_settings: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, rpm_limit: Integer | nil, spend: Float | nil, team_alias: String | nil, - tpm_limit: Integer | nil + team_member_permissions: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + tpm_limit: Integer | nil, + updated_at: Time | nil } end end @@ -86,19 +91,24 @@ def test_add_member_required_params budget_duration: String | nil, budget_reset_at: Time | nil, created_at: Time | nil, - llm_model_table: Hanzoai::Models::TeamAddMemberResponse::LlmModelTable | nil, + litellm_model_table: Hanzoai::Models::TeamAddMemberResponse::LitellmModelTable | nil, max_budget: Float | nil, max_parallel_requests: Integer | nil, members: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, members_with_roles: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Member]) | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, model_id: Integer | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + object_permission: Hanzoai::Models::TeamAddMemberResponse::ObjectPermission | nil, + object_permission_id: String | nil, organization_id: String | nil, + router_settings: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, rpm_limit: Integer | nil, spend: Float | nil, team_alias: String | nil, - tpm_limit: Integer | nil + team_member_permissions: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + tpm_limit: Integer | nil, + updated_at: Time | nil } end end @@ -177,6 +187,8 @@ def test_update_member_required_params team_id: String, user_id: String, max_budget_in_team: Float | nil, + rpm_limit: Integer | nil, + tpm_limit: Integer | nil, user_email: String | nil } end diff --git a/test/hanzoai/resources/user_test.rb b/test/hanzoai/resources/user_test.rb index eced472a..b35495f2 100644 --- a/test/hanzoai/resources/user_test.rb +++ b/test/hanzoai/resources/user_test.rb @@ -14,37 +14,48 @@ def test_create assert_pattern do response => { - expires: Time | nil, key: String, token: String | nil, - aliases: Hanzoai::Internal::Type::Unknown | nil, + aliases: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, allowed_cache_controls: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_passthrough_routes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_routes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, + allowed_vector_store_indexes: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Models::UserCreateResponse::AllowedVectorStoreIndex]) | nil, blocked: Hanzoai::Internal::Type::Boolean | nil, budget_duration: String | nil, budget_id: String | nil, - config: Hanzoai::Internal::Type::Unknown | nil, + config: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + created_at: Time | nil, created_by: String | nil, duration: String | nil, enforced_params: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + expires: Time | nil, guardrails: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, key_alias: String | nil, key_name: String | nil, - llm_budget_table: Hanzoai::Internal::Type::Unknown | nil, + litellm_budget_table: Hanzoai::Internal::Type::Unknown | nil, max_budget: Float | nil, max_parallel_requests: Integer | nil, - metadata: Hanzoai::Internal::Type::Unknown | nil, - model_max_budget: Hanzoai::Internal::Type::Unknown | nil, - model_rpm_limit: Hanzoai::Internal::Type::Unknown | nil, - model_tpm_limit: Hanzoai::Internal::Type::Unknown | nil, + metadata: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_max_budget: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_rpm_limit: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + model_tpm_limit: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, models: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, - permissions: Hanzoai::Internal::Type::Unknown | nil, + object_permission: Hanzoai::Models::UserCreateResponse::ObjectPermission | nil, + organization_id: String | nil, + permissions: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + prompts: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, + router_settings: Hanzoai::Models::UserCreateResponse::RouterSettings | nil, rpm_limit: Integer | nil, + rpm_limit_type: Hanzoai::Models::UserCreateResponse::RpmLimitType | nil, spend: Float | nil, tags: ^(Hanzoai::Internal::Type::ArrayOf[String]) | nil, team_id: String | nil, teams: ^(Hanzoai::Internal::Type::ArrayOf[Hanzoai::Internal::Type::Unknown]) | nil, token_id: String | nil, tpm_limit: Integer | nil, + tpm_limit_type: Hanzoai::Models::UserCreateResponse::TpmLimitType | nil, + updated_at: Time | nil, updated_by: String | nil, user_alias: String | nil, user_email: String | nil, @@ -64,16 +75,6 @@ def test_update end end - def test_list - skip("Prism tests are disabled") - - response = @hanzo.user.list - - assert_pattern do - response => Hanzoai::Internal::Type::Unknown - end - end - def test_delete_required_params skip("Prism tests are disabled") diff --git a/test/hanzoai/resources/utils_test.rb b/test/hanzoai/resources/utils_test.rb index 03de686f..c17d7be1 100644 --- a/test/hanzoai/resources/utils_test.rb +++ b/test/hanzoai/resources/utils_test.rb @@ -27,7 +27,11 @@ def test_token_counter_required_params model_used: String, request_model: String, tokenizer_type: String, - total_tokens: Integer + total_tokens: Integer, + error: Hanzoai::Internal::Type::Boolean | nil, + error_message: String | nil, + original_response: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + status_code: Integer | nil } end end @@ -35,7 +39,7 @@ def test_token_counter_required_params def test_transform_request_required_params skip("Prism tests are disabled") - response = @hanzo.utils.transform_request(call_type: :embedding, request_body: {}) + response = @hanzo.utils.transform_request(call_type: :embedding, request_body: {foo: "bar"}) assert_pattern do response => Hanzoai::Models::UtilTransformRequestResponse @@ -45,8 +49,8 @@ def test_transform_request_required_params response => { error: String | nil, raw_request_api_base: String | nil, - raw_request_body: Hanzoai::Internal::Type::Unknown | nil, - raw_request_headers: Hanzoai::Internal::Type::Unknown | nil + raw_request_body: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil, + raw_request_headers: ^(Hanzoai::Internal::Type::HashOf[Hanzoai::Internal::Type::Unknown]) | nil } end end From 9cdad6cefecd82c7971f24e43b54782586f31144 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 03:29:30 +0000 Subject: [PATCH 101/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 7cd847e4d30ad0ba81d491ea99b2af69253aa69f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 04:29:26 +0000 Subject: [PATCH 102/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From eea6430eba8de8c573c3329c1bdc928ee6725c60 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 05:29:30 +0000 Subject: [PATCH 103/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From 78f938208473c4af4545cfdf7c5c7873a308aafe Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 06:29:31 +0000 Subject: [PATCH 104/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From ee600c159e12c39baa5c94e918bb94684871bc56 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 07:29:30 +0000 Subject: [PATCH 105/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 66de4e46633adc4915133766107b243351b7cca6 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 08:29:29 +0000 Subject: [PATCH 106/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From 624fc7cd9700a99a1c38dccb917e860b7e66d7a6 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 11:29:28 +0000 Subject: [PATCH 107/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..18cb6a66 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml +openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 config_hash: e927bafd76a1eace11894efc3517d245 From d66acf505f8f9c10e569b8df745db0b71f45b56d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 12:29:29 +0000 Subject: [PATCH 108/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 18cb6a66..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml -openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From 5209f8f9fcbc0d2c86823820682d18d200b73228 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 14:29:30 +0000 Subject: [PATCH 109/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From 428cc48549e3b2e3e258bd0d3d37b10fa6f683f9 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 17:29:26 +0000 Subject: [PATCH 110/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From ae032b6c445714fd74f104abb7d03edb8c5d86aa Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 21:29:28 +0000 Subject: [PATCH 111/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From d5e5e93524add6a1f14dbc31773e8dc52f1cbb53 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 22:29:29 +0000 Subject: [PATCH 112/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 2836f6aa2bf921c11fef70340e5345a2394bc0d4 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 23:29:22 +0000 Subject: [PATCH 113/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From 836c97044ff49b80bfec6a199a5b84867d2756bb Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 00:29:24 +0000 Subject: [PATCH 114/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From ccd62068a6d3a7755912cbf45eed57403f2d8334 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 01:29:24 +0000 Subject: [PATCH 115/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From 093106d22fecaa7394eabf162d37539b2e368d9a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 05:29:24 +0000 Subject: [PATCH 116/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From 7194a3622d95ed7e7fb6e4a5cd733ce565a914b5 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 07:29:30 +0000 Subject: [PATCH 117/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 8573ed7aceea6403323faa5a61120f19e62205ce Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 08:29:24 +0000 Subject: [PATCH 118/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From 824c5ac7f0ee6a0816d878b384dabb2ecb3e3ee7 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 10:29:17 +0000 Subject: [PATCH 119/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From a323b0f8a6d89f43d0714cf932aa005d2e5f3767 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 11:29:20 +0000 Subject: [PATCH 120/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From ca376b5c30dc4b8afa0398c0758456d873d9681e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:29:20 +0000 Subject: [PATCH 121/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 57fcecdc01c56805e819e09a8f32ef7483bd4e65 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 13:29:25 +0000 Subject: [PATCH 122/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From dda9255f5f1be0163428886c5e3233afa75ef6fb Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 15:29:21 +0000 Subject: [PATCH 123/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..18cb6a66 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml +openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 config_hash: e927bafd76a1eace11894efc3517d245 From 7c5739064cd0c82ee6e731dacb1fecd8e7b9aa89 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 16:29:24 +0000 Subject: [PATCH 124/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 18cb6a66..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml -openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From 0bd17232da66f2b860ca4967ab0ecd903a1afdc3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 17:29:22 +0000 Subject: [PATCH 125/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 40fa6f6073179f4dbb57c08715535deee9995444 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 18:29:19 +0000 Subject: [PATCH 126/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From 6384252bc55d7f5d94b6163d3e44840577dca12b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 19:29:21 +0000 Subject: [PATCH 127/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From ca3dd7930c507f25abd3b87fd85ca07e21fec8e8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 20:29:22 +0000 Subject: [PATCH 128/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From 7988b28ae8698ea736c04a938f6239c1fd06567a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 21:29:18 +0000 Subject: [PATCH 129/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 2f6ffd38839cabcd50d79918415d73ba1f7d733a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 22:29:24 +0000 Subject: [PATCH 130/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..18cb6a66 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml +openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 config_hash: e927bafd76a1eace11894efc3517d245 From aec4c2fa1a67ac481af38647d3e03acbc07fd65b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 23:29:23 +0000 Subject: [PATCH 131/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 18cb6a66..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml -openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From 5644164d9a070831556291cf540c1825076582ef Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 02:29:24 +0000 Subject: [PATCH 132/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..7f0e2c98 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml +openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab config_hash: e927bafd76a1eace11894efc3517d245 From 7b3cd44dbde510c27716dc9484bd882969f288ae Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 05:29:20 +0000 Subject: [PATCH 133/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7f0e2c98..18cb6a66 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-999b377420f1bec6f25cdb33239c9efdba02b38c844d40e8ea559e6e09ed2c33.yml -openapi_spec_hash: 341f37765af7bdea793c3b5a798524ab +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml +openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 config_hash: e927bafd76a1eace11894efc3517d245 From 4e1f3802a912939e1dfa3567fb252b7aadf4975b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 06:29:25 +0000 Subject: [PATCH 134/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 18cb6a66..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml -openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From 7cef6cc7312676319cd1c040fead3aa8144ee397 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 07:29:26 +0000 Subject: [PATCH 135/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..18cb6a66 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml +openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 config_hash: e927bafd76a1eace11894efc3517d245 From 154f4ff0363da3e3c2e1694fae687b0130fb15df Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 09:29:25 +0000 Subject: [PATCH 136/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 18cb6a66..e829d1ef 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml -openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml +openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 config_hash: e927bafd76a1eace11894efc3517d245 From cae7c072968ac1feb33052da2216c5a79f0bcb0e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 11:29:25 +0000 Subject: [PATCH 137/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index e829d1ef..1c6affb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-971e209e1a47262e17483e5ac0d91e8013d10237ac89d6392ffabb5912ce83b9.yml -openapi_spec_hash: 029e800ed42f138d5b63bb4f40181c55 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml +openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 config_hash: e927bafd76a1eace11894efc3517d245 From 6d064b59162e0af6c87441a5dbee5d5c34f5f6fc Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 12:29:24 +0000 Subject: [PATCH 138/139] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 1c6affb9..18cb6a66 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 187 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-f3051af15c3ecf2556c73a185fcd4dfff4f444c8977a4840b0b17df16984224d.yml -openapi_spec_hash: 94cb4110b315114c72be390df33a4b00 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/hanzo-industries-inc%2Fhanzo-ai-343e99ba0f6734359198b3b87c8330d8e81d4a44c0f0c9b8506524b41e872cf7.yml +openapi_spec_hash: 0536a5458fb3a37a5aa763333486acf5 config_hash: e927bafd76a1eace11894efc3517d245 From 5bbf70ccfae7f477eb2bce83d7fb96f84fe4e10b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 12:30:45 +0000 Subject: [PATCH 139/139] release: 0.1.0-alpha.5 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 117 ++++++++++++++++++++++++++++++++++ Gemfile.lock | 2 +- README.md | 2 +- lib/hanzoai/version.rb | 2 +- 5 files changed, 121 insertions(+), 4 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index b56c3d0b..e8285b71 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.1.0-alpha.4" + ".": "0.1.0-alpha.5" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ced0b85..594191cb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,122 @@ # Changelog +## 0.1.0-alpha.5 (2026-01-26) + +Full Changelog: [v0.1.0-alpha.4...v0.1.0-alpha.5](https://github.com/hanzoai/ruby-sdk/compare/v0.1.0-alpha.4...v0.1.0-alpha.5) + +### Features + +* allow all valid `JSON` types to be encoded ([#45](https://github.com/hanzoai/ruby-sdk/issues/45)) ([9ba40fb](https://github.com/hanzoai/ruby-sdk/commit/9ba40fbc78f7b9d4df96a124c0fcdfed74e949dd)) +* **api:** api update ([188ec12](https://github.com/hanzoai/ruby-sdk/commit/188ec125e31c94787b22b68aadac4fac4f8cfc2f)) +* **api:** api update ([176266c](https://github.com/hanzoai/ruby-sdk/commit/176266c83378b9f1e815ea6a7b4f2079d87aa2ab)) +* bump default connection pool size limit to minimum of 99 ([91efac6](https://github.com/hanzoai/ruby-sdk/commit/91efac6ce83a648e03738e11230e0e1e6e9542ad)) +* **client:** enable setting base URL from environment variable ([4f1e8e2](https://github.com/hanzoai/ruby-sdk/commit/4f1e8e27d74879486ced2be56ea88219a3788655)) +* expose base client options as read only attributes ([3c95282](https://github.com/hanzoai/ruby-sdk/commit/3c95282be4dda179ca0b6f77d75ed7c238f849a0)) +* expose recursive `#to_h` conversion ([6204fee](https://github.com/hanzoai/ruby-sdk/commit/6204fee065845dc3fa7dd8e169412ee3a0b6a9f8)) +* implement `#hash` for data containers ([c2d963d](https://github.com/hanzoai/ruby-sdk/commit/c2d963dec2fd81dba50a8769224a3656f46afaf3)) +* support query, header, and body params that have identical names ([#44](https://github.com/hanzoai/ruby-sdk/issues/44)) ([b35580a](https://github.com/hanzoai/ruby-sdk/commit/b35580a6829fad0b89154da341e7c01a03b62a28)) +* support sorbet aliases at the runtime ([c5554f0](https://github.com/hanzoai/ruby-sdk/commit/c5554f0368f3e5f6d1c8946e7d51229e27e4bdb9)) +* support specifying content-type with FilePart class ([291d316](https://github.com/hanzoai/ruby-sdk/commit/291d3165cad525a6ac63c93802a509c04460d1fd)) +* support webmock for testing ([44909cf](https://github.com/hanzoai/ruby-sdk/commit/44909cf28d569b2e7d3735123cd425c520549dad)) +* use Pathname alongside raw IO handles for file uploads ([#56](https://github.com/hanzoai/ruby-sdk/issues/56)) ([d215aee](https://github.com/hanzoai/ruby-sdk/commit/d215aeeb2e900a30c0a7035015a621e60ced033e)) + + +### Bug Fixes + +* `to_sorbet_type` should not return branded types ([448244f](https://github.com/hanzoai/ruby-sdk/commit/448244f93449c2d957cdd9b585ece6c303f6522c)) +* always send idempotency header when specified as a request option ([fece7cf](https://github.com/hanzoai/ruby-sdk/commit/fece7cfcbb1cec7ab83f328135036956876855a3)) +* **client:** send correct HTTP path ([ecc5e68](https://github.com/hanzoai/ruby-sdk/commit/ecc5e6814ea56ec225ce700106f7a944f11af10c)) +* converter should transform stringio into string where applicable ([#47](https://github.com/hanzoai/ruby-sdk/issues/47)) ([2d5c28e](https://github.com/hanzoai/ruby-sdk/commit/2d5c28ec3c12ba9615c13bc1931aefa0a8b5fb5f)) +* correctly instantiate sorbet type aliases for enums and unions ([3b7ec7b](https://github.com/hanzoai/ruby-sdk/commit/3b7ec7b7cf46a7a7ada355b41f3b46deb9de6758)) +* ensure gem release is unaffected by renaming ([25efbf7](https://github.com/hanzoai/ruby-sdk/commit/25efbf7d7b475d99c2688c2863e059f364c3ead8)) +* inaccuracies in the README.md ([4e2b9ca](https://github.com/hanzoai/ruby-sdk/commit/4e2b9ca07a6b653ed983f0e83a9238e94f274d93)) +* **internal:** ensure formatting always uses c.utf-8 locale ([63636d2](https://github.com/hanzoai/ruby-sdk/commit/63636d2faa87890d78928dfa29536bbc91b37ced)) +* **internal:** fix formatting script for macos ([beb4a3b](https://github.com/hanzoai/ruby-sdk/commit/beb4a3bc052da8e9b3d4f4dbe848a9b41f746f5a)) +* **internal:** update gemspec name ([e8ff0ff](https://github.com/hanzoai/ruby-sdk/commit/e8ff0ffad487596b3f38f3c29f7d8b3565e0e6f8)) +* **internal:** update release-please to use ruby strategy for README.md ([f42785b](https://github.com/hanzoai/ruby-sdk/commit/f42785bf8a2960e8d10ecbef32a2ca6c5c796f03)) +* make a typo for `FilePart.content` ([4057679](https://github.com/hanzoai/ruby-sdk/commit/40576793f67ab7a5481d81366c43a8d9e1e94cbb)) +* prevent rubocop from mangling `===` to `is_a?` check ([9b26509](https://github.com/hanzoai/ruby-sdk/commit/9b265099c8a127e9d996059b967264a0332f5ba5)) +* raise connection error for errors that result from HTTP transports ([#57](https://github.com/hanzoai/ruby-sdk/issues/57)) ([05edcf8](https://github.com/hanzoai/ruby-sdk/commit/05edcf8da3d94ee0f3ef61faaf7e310b37669497)) +* restore ability to configure server environment as string during client construction ([0f9728a](https://github.com/hanzoai/ruby-sdk/commit/0f9728a6a15786aea8f49c730d279dd1d3800225)) +* should not reuse buffers for `IO.copy_stream` interop ([f64394b](https://github.com/hanzoai/ruby-sdk/commit/f64394b3180be99ee256770c57ed25064791e9de)) +* sorbet types for enums, and make tapioca detection ignore `tapioca dsl` ([43bc35d](https://github.com/hanzoai/ruby-sdk/commit/43bc35d34cc3c86de007616c18a4b453bbb0a70b)) + + +### Chores + +* accept all nd-json mimetype variants ([3350dc9](https://github.com/hanzoai/ruby-sdk/commit/3350dc9b0da57b765a4e075f03064857fe0b51bf)) +* add generator safe directory ([d02c8b2](https://github.com/hanzoai/ruby-sdk/commit/d02c8b2111ed5fcd786fd68a65612987df7d9929)) +* add README docs for using solargraph when installing gem from git ([#55](https://github.com/hanzoai/ruby-sdk/issues/55)) ([c9b1d3b](https://github.com/hanzoai/ruby-sdk/commit/c9b1d3bb58013716a3b895e320f6f705a018fe63)) +* always fold up method bodies in sorbet type definitions ([#51](https://github.com/hanzoai/ruby-sdk/issues/51)) ([3a9c8bf](https://github.com/hanzoai/ruby-sdk/commit/3a9c8bff1a56f25bbc0aa651ab0c718440ea00ce)) +* broadly detect json family of content-type headers ([451aae2](https://github.com/hanzoai/ruby-sdk/commit/451aae2023a76c9099a5b05c1df445013accc437)) +* **ci:** add timeout thresholds for CI jobs ([c6653db](https://github.com/hanzoai/ruby-sdk/commit/c6653dbf25320da466c3bbcdb7f7b8ff5585c8da)) +* **ci:** only use depot for staging repos ([ef3471d](https://github.com/hanzoai/ruby-sdk/commit/ef3471d81069321589c43f4f17cf386b953819c0)) +* configure new SDK language ([b07254b](https://github.com/hanzoai/ruby-sdk/commit/b07254b62e65b67865a87fae166ced12563095af)) +* **docs:** grammar improvements ([a8363d4](https://github.com/hanzoai/ruby-sdk/commit/a8363d4d6539cc012164dd338a8b130f2c0482af)) +* documentation improvements ([4ab0bd6](https://github.com/hanzoai/ruby-sdk/commit/4ab0bd63d2a8e48ca1fd327c3fbbd6353cfe1be8)) +* ensure readme.md is bumped when release please updates versions ([10667f3](https://github.com/hanzoai/ruby-sdk/commit/10667f32ced592c75964e8d3a9a04e804843439f)) +* explicitly mark apis public under `Internal` module ([da30dff](https://github.com/hanzoai/ruby-sdk/commit/da30dffa00a5bfa87117045df80e20acdbcc748d)) +* fix misc linting / minor issues ([5983bea](https://github.com/hanzoai/ruby-sdk/commit/5983bea45f64cb7bc96e325b73125878ed3af9e2)) +* fix readme typo ([1b6772e](https://github.com/hanzoai/ruby-sdk/commit/1b6772ecc6dfe3842268495c669c90bb7a7e2edc)) +* force utf-8 locale via `RUBYOPT` when formatting ([81b0d4b](https://github.com/hanzoai/ruby-sdk/commit/81b0d4b40df5ed06f4e01ab9cc3abf88c38d150b)) +* **internal:** always run post-processing when formatting when syntax_tree ([5d4c89a](https://github.com/hanzoai/ruby-sdk/commit/5d4c89ad4f61bf02f7c3870449871693b3cfbbdc)) +* **internal:** annotate request options with type aliases in sorbet ([c7253ab](https://github.com/hanzoai/ruby-sdk/commit/c7253ab85bb4a3a5dd015d7d05b5a5f1bbad4b78)) +* **internal:** codegen related update ([7e47a65](https://github.com/hanzoai/ruby-sdk/commit/7e47a6558a0562747cf6ac531d0e7fda52d4ba63)) +* **internal:** codegen related update ([de5221c](https://github.com/hanzoai/ruby-sdk/commit/de5221c35a213e070cd7dbe85275942cf73a5a5c)) +* **internal:** codegen related update ([feddfca](https://github.com/hanzoai/ruby-sdk/commit/feddfcaf3ca1e6b95cd3b92c9b0d66ede392c5ae)) +* **internal:** codegen related update ([48633de](https://github.com/hanzoai/ruby-sdk/commit/48633de21e5c11fbe72bc0061a465dfe497888d2)) +* **internal:** codegen related update ([9a89eac](https://github.com/hanzoai/ruby-sdk/commit/9a89eacfe7097d8539f70408d78f8174362c4444)) +* **internal:** codegen related update ([bc2f723](https://github.com/hanzoai/ruby-sdk/commit/bc2f723cdf0a9dad9e3f1aa3bc50284f3611dbbb)) +* **internal:** codegen related update ([d84983c](https://github.com/hanzoai/ruby-sdk/commit/d84983c400accb33dff31abab59d78f85df9894d)) +* **internal:** codegen related update ([8b0412d](https://github.com/hanzoai/ruby-sdk/commit/8b0412deb9ff80baa9068a9a53f07b63a71841cb)) +* **internal:** codegen related update ([b533d72](https://github.com/hanzoai/ruby-sdk/commit/b533d7250ae3edab570fcb0ed66ef906368c702f)) +* **internal:** codegen related update ([b29e255](https://github.com/hanzoai/ruby-sdk/commit/b29e255634140514e94eb96aa61e9dc36404024c)) +* **internal:** codegen related update ([bee0a08](https://github.com/hanzoai/ruby-sdk/commit/bee0a0806004968a06b195e3b92a12145cdf8e11)) +* **internal:** contribute.md and contributor QoL improvements ([f5471b0](https://github.com/hanzoai/ruby-sdk/commit/f5471b0639d6786fc37b168fe2086e778356f292)) +* **internal:** expand CI branch coverage ([12c39d3](https://github.com/hanzoai/ruby-sdk/commit/12c39d3a4fec0840481ea21170ee1f2dbaa2a5af)) +* **internal:** improve response envelope unwrap functionality ([fdfbf93](https://github.com/hanzoai/ruby-sdk/commit/fdfbf9334650dc00c1ac073297152cfbc461ee81)) +* **internal:** loosen internal type restrictions ([52fe8ba](https://github.com/hanzoai/ruby-sdk/commit/52fe8ba0423ed67626bf8c2acd4c60eb9bc6251f)) +* **internal:** minor touch ups on sdk internals ([a4ab1ff](https://github.com/hanzoai/ruby-sdk/commit/a4ab1ff28a41a08639ac2bcc2d356592a1b6855f)) +* **internal:** minor type annotation improvements ([aae606e](https://github.com/hanzoai/ruby-sdk/commit/aae606e68f712f9d1a2f729de0ab41a1cd48e3c9)) +* **internal:** misc small improvements ([#48](https://github.com/hanzoai/ruby-sdk/issues/48)) ([7973e72](https://github.com/hanzoai/ruby-sdk/commit/7973e72204d116692e351f3fee34abd358758e05)) +* **internal:** more concise handling of parameter naming conflicts ([#53](https://github.com/hanzoai/ruby-sdk/issues/53)) ([749dd97](https://github.com/hanzoai/ruby-sdk/commit/749dd9794af17b1257cb859e3e4d410ba1954833)) +* **internal:** mostly README touch ups ([37f21a8](https://github.com/hanzoai/ruby-sdk/commit/37f21a8010eb14ed8820a244a23890b6c3ce7aa3)) +* **internal:** protect SSE parsing pipeline from broken UTF-8 characters ([dbf9a70](https://github.com/hanzoai/ruby-sdk/commit/dbf9a70ccd8029f3d9cd4270582a54d0d8e5219d)) +* **internal:** reduce CI branch coverage ([c77e970](https://github.com/hanzoai/ruby-sdk/commit/c77e9701dd564ff03ba1e8e5580402ea379908cc)) +* **internal:** remove unnecessary `rbi/lib` folder ([d39641a](https://github.com/hanzoai/ruby-sdk/commit/d39641ace1c1b44106b57e8aa72783fd2c47e25a)) +* **internal:** rubocop rules ([#50](https://github.com/hanzoai/ruby-sdk/issues/50)) ([126f259](https://github.com/hanzoai/ruby-sdk/commit/126f259e106073b526eb3b1219802f00270ec8bf)) +* **internal:** run rubocop linter in parallel ([#49](https://github.com/hanzoai/ruby-sdk/issues/49)) ([89910f5](https://github.com/hanzoai/ruby-sdk/commit/89910f54c548b5becec92c683c05f6ed1529b047)) +* **internal:** version bump ([#42](https://github.com/hanzoai/ruby-sdk/issues/42)) ([28f783e](https://github.com/hanzoai/ruby-sdk/commit/28f783e5f068159c45a03d85b835155d3d3a5576)) +* loosen const and integer coercion rules ([#58](https://github.com/hanzoai/ruby-sdk/issues/58)) ([5f7ec21](https://github.com/hanzoai/ruby-sdk/commit/5f7ec21f35b5abf1055e66a72a1db31e833f6322)) +* loosen rubocop rules that don't always make sense ([27277d1](https://github.com/hanzoai/ruby-sdk/commit/27277d1682cef6e6bab261196ee3e6e8959e8fc8)) +* make client tests look prettier ([#54](https://github.com/hanzoai/ruby-sdk/issues/54)) ([cf98683](https://github.com/hanzoai/ruby-sdk/commit/cf9868303ad8a4f354aeef968fb2efc5f4e1becf)) +* make internal types pretty print ([f3d8de6](https://github.com/hanzoai/ruby-sdk/commit/f3d8de6659234a8db1d284a18af468aaa81bf120)) +* make sorbet enums easier to read ([2d35e00](https://github.com/hanzoai/ruby-sdk/commit/2d35e00e17f4426a3cf72136226e7b272b950ed9)) +* more accurate type annotations and aliases ([438f943](https://github.com/hanzoai/ruby-sdk/commit/438f943d3d72093169231d5c8b823a66804cbeab)) +* re-export top level models under library namespace ([d346468](https://github.com/hanzoai/ruby-sdk/commit/d346468f841a08d9c3c7fbda7a6564ad2492cd92)) +* refine `#inspect` and `#to_s` for model classes ([27c96f0](https://github.com/hanzoai/ruby-sdk/commit/27c96f0ada319aae9419532da269d6afbe83f694)) +* refine Yard and Sorbet types and ensure linting is turned on for examples ([b14560d](https://github.com/hanzoai/ruby-sdk/commit/b14560dd5b4a1cd5ad9ca83bb11df8e76d70362c)) +* remove Gemfile.lock during bootstrap ([d5bd829](https://github.com/hanzoai/ruby-sdk/commit/d5bd829faff4b74c3ec1d772aa4a3675c91f19ad)) +* rename confusing `Type::BooleanModel` to `Type::Boolean` ([#46](https://github.com/hanzoai/ruby-sdk/issues/46)) ([6d4d5b8](https://github.com/hanzoai/ruby-sdk/commit/6d4d5b85b4e9c46977971bed3daa2aaddd6acd32)) +* reorganize type aliases ([efba0fd](https://github.com/hanzoai/ruby-sdk/commit/efba0fdf0a69b579f2cf317e877173a687181536)) +* revert ignoring Gemfile.lock ([ecdab13](https://github.com/hanzoai/ruby-sdk/commit/ecdab13029b1863b4e84d8edfe486f03dec55016)) +* show truncated parameter docs in yard ([98119ae](https://github.com/hanzoai/ruby-sdk/commit/98119aef82585723e4fd950d78866f9ef7783b86)) +* simplify yard annotations by removing most `@!parse` directives ([2596eac](https://github.com/hanzoai/ruby-sdk/commit/2596eac15f30607a3a832dd44cdfde5cf48b8006)) +* update README with recommended editor plugins ([b432ce7](https://github.com/hanzoai/ruby-sdk/commit/b432ce7a9963963df9a2dc04f5d377f69ba1587a)) +* update yard comment formatting ([#52](https://github.com/hanzoai/ruby-sdk/issues/52)) ([10f4fc6](https://github.com/hanzoai/ruby-sdk/commit/10f4fc63092cbd4efb26c00f57fb43a1ced63bf3)) +* use `@!method` instead of `@!parse` for virtual method type definitions ([b6c473a](https://github.com/hanzoai/ruby-sdk/commit/b6c473ade59990aabc591b322b527f2bea1b2623)) +* use fully qualified names for yard annotations and rbs aliases ([41b0ab4](https://github.com/hanzoai/ruby-sdk/commit/41b0ab4c947eb815211460d59d6f389e0f661af1)) +* use sorbet union aliases where available ([909bbbb](https://github.com/hanzoai/ruby-sdk/commit/909bbbbc54f21a0a0190b497f17d428e196292a9)) +* validate request option coercion correctness ([041d9f2](https://github.com/hanzoai/ruby-sdk/commit/041d9f2fed2c23453cf5d24b9b3a8e7c6e47c55e)) +* whitespaces ([ba94f92](https://github.com/hanzoai/ruby-sdk/commit/ba94f92591e13d01e5eea1835a3e502d329eefcb)) + + +### Documentation + +* illustrate environmental defaults for auth variables ([ad86138](https://github.com/hanzoai/ruby-sdk/commit/ad86138f9737623578a60ad32ab1aabbb6b360c5)) +* rewrite much of README.md for readability ([5d80ac7](https://github.com/hanzoai/ruby-sdk/commit/5d80ac7fb7916fbc124e522c5bcf6c75ffbdf09a)) +* update documentation links to be more uniform ([dc4f904](https://github.com/hanzoai/ruby-sdk/commit/dc4f904b61cb044b1a9df5e42ae17ce2accd1295)) + ## 0.1.0-alpha.4 (2025-04-05) Full Changelog: [v0.1.0-alpha.3...v0.1.0-alpha.4](https://github.com/hanzoai/ruby-sdk/compare/v0.1.0-alpha.3...v0.1.0-alpha.4) diff --git a/Gemfile.lock b/Gemfile.lock index 425e56cd..60f85d58 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,7 +11,7 @@ GIT PATH remote: . specs: - hanzoai (0.1.0.pre.alpha.4) + hanzoai (0.1.0.pre.alpha.5) cgi connection_pool diff --git a/README.md b/README.md index b90841c7..f455838d 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application ```ruby -gem "hanzoai", "~> 0.1.0.pre.alpha.4" +gem "hanzoai", "~> 0.1.0.pre.alpha.5" ``` diff --git a/lib/hanzoai/version.rb b/lib/hanzoai/version.rb index 51228b1c..bcce49db 100644 --- a/lib/hanzoai/version.rb +++ b/lib/hanzoai/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Hanzoai - VERSION = "0.1.0.pre.alpha.4" + VERSION = "0.1.0.pre.alpha.5" end