Class: Foobara::Ai::AnthropicApi::ListModels
- Inherits:
-
BaseCommand
- Object
- Command
- BaseCommand
- Foobara::Ai::AnthropicApi::ListModels
- Includes:
- CachedCommand
- Defined in:
- foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb
Constant Summary
Constants included from TruncatedInspect
Instance Attribute Summary collapse
-
#page_of_models ⇒ Object
Returns the value of attribute page_of_models.
Attributes included from HttpApiCommand
#request_body, #request_headers, #response, #response_body
Attributes included from CommandPatternImplementation::Concerns::Subcommands
Attributes included from CommandPatternImplementation::Concerns::Runtime
Attributes included from CommandPatternImplementation::Concerns::Errors
Attributes included from CommandPatternImplementation::Concerns::Inputs
Instance Method Summary collapse
- #execute ⇒ Object
- #extract_models ⇒ Object
- #get_next_page_of_models ⇒ Object
- #get_page_of_models ⇒ Object
- #get_page_of_models_inputs ⇒ Object
- #has_more? ⇒ Boolean
- #models ⇒ Object
Methods inherited from BaseCommand
#anthropic_version, #api_token, #api_token_from_env, #build_request_headers
Methods included from HttpApiCommand
#build_request_body, #build_request_headers, #build_result, #issue_http_request, #parse_response
Methods included from HttpApiCommand::Concerns::Url
#api_uri_object, #api_url, #net_http
Methods included from Concern
foobara_class_methods_module_for, foobara_concern?, included
Methods inherited from Command
Methods included from CommandPatternImplementation::Concerns::Reflection
Methods included from CommandPatternImplementation::Concerns::DomainMappers
#domain_map, #domain_map!, #run_mapped_subcommand!
Methods included from CommandPatternImplementation::Concerns::Subcommands
#run_subcommand!, #subcommand?
Methods included from CommandPatternImplementation::Concerns::Entities
Methods included from CommandPatternImplementation::Concerns::Transactions
#auto_detect_current_transactions, #commit_transaction, #open_transaction, #opened_transactions, #relevant_entity_classes, #rollback_transaction, #transactions
Methods included from CommandPatternImplementation::Concerns::StateMachine
Methods included from CommandPatternImplementation::Concerns::Runtime
#halt!, #run, #run!, #run_execute, #succeed, #success?, #validate, #validate_records
Methods included from CommandPatternImplementation::Concerns::Errors
Methods included from CommandPatternImplementation::Concerns::Inputs
#cast_and_validate_inputs, #initialize, #method_missing, #respond_to_missing?, #respond_to_missing_for_inputs?
Methods included from TruncatedInspect
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Foobara::CommandPatternImplementation::Concerns::Inputs
Instance Attribute Details
#page_of_models ⇒ Object
Returns the value of attribute page_of_models.
36 37 38 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 36 def page_of_models @page_of_models end |
Instance Method Details
#execute ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 23 def execute get_page_of_models extract_models while has_more? get_next_page_of_models extract_models end models end |
#extract_models ⇒ Object
42 43 44 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 42 def extract_models models.concat(page_of_models.data) end |
#get_next_page_of_models ⇒ Object
50 51 52 53 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 50 def get_next_page_of_models inputs = get_page_of_models_inputs.merge(after_id: page_of_models.last_id) self.page_of_models = run_subcommand!(GetPageOfModels, inputs) end |
#get_page_of_models ⇒ Object
38 39 40 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 38 def get_page_of_models self.page_of_models = run_subcommand!(GetPageOfModels, get_page_of_models_inputs) end |
#get_page_of_models_inputs ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 59 def get_page_of_models_inputs return @get_page_of_models_inputs if @get_page_of_models_inputs @get_page_of_models_inputs = {} if page_size @get_page_of_models_inputs[:limit] = page_size end @get_page_of_models_inputs end |
#has_more? ⇒ Boolean
46 47 48 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 46 def has_more? page_of_models.has_more end |
#models ⇒ Object
55 56 57 |
# File 'foobara-anthropic-api-0.0.10/src/foobara/ai/anthropic_api/list_models.rb', line 55 def models @models ||= [] end |