Module: RubyLLM::Provider

Included in:
RubyLLM::Providers::Anthropic, RubyLLM::Providers::OpenAI
Defined in:
lib/ruby_llm/provider.rb

Defined Under Namespace

Modules: InstanceMethods

Class Method Summary collapse

Class Method Details

.for(model) ⇒ Object



84
85
86
87
88
89
90
# File 'lib/ruby_llm/provider.rb', line 84

def for(model)
  model_info = Models.find(model)
  provider_class = providers[model_info.provider.to_sym] or
    raise Error, "No provider registered for #{model_info.provider}"

  provider_class.new
end

.included(base) ⇒ Object



5
6
7
# File 'lib/ruby_llm/provider.rb', line 5

def self.included(base)
  base.include(InstanceMethods)
end

.register(name, provider_class) ⇒ Object



80
81
82
# File 'lib/ruby_llm/provider.rb', line 80

def register(name, provider_class)
  providers[name.to_sym] = provider_class
end