Module: RubyLLM
  
  
  
  
  
  
  
  
  
  
  
  
    - Defined in:
- lib/ruby_llm.rb,
 lib/ruby_llm/tool.rb,
 lib/ruby_llm/client.rb,
 lib/ruby_llm/message.rb,
 lib/ruby_llm/railtie.rb,
 lib/ruby_llm/version.rb,
 lib/ruby_llm/model_info.rb,
 lib/ruby_llm/conversation.rb,
 lib/ruby_llm/configuration.rb,
 lib/ruby_llm/providers/base.rb,
 lib/ruby_llm/providers/openai.rb,
 lib/ruby_llm/providers/anthropic.rb,
 lib/ruby_llm/active_record/acts_as.rb,
 lib/ruby_llm/model_capabilities/base.rb,
 lib/ruby_llm/model_capabilities/openai.rb,
 lib/ruby_llm/model_capabilities/anthropic.rb
 
Overview
  
    
Main module for RubyLLM functionality
   
 
  
Defined Under Namespace
  
    
      Modules: ActiveRecord, ModelCapabilities, Providers
    
  
    
      Classes: Client, Configuration, Conversation, Error, Message, ModelInfo, ProviderSettings, Railtie, Tool
    
  
  
    
      Constant Summary
      collapse
    
    
      
        - VERSION =
          
        
- '0.1.0.pre3' 
Class Attribute Summary collapse
  
  
    
      Class Method Summary
      collapse
    
    
  
  
    Class Attribute Details
    
      
      
      
  
  
    .configuration  ⇒ Object 
  
  
  
  
    | 
16
17
18 | # File 'lib/ruby_llm.rb', line 16
def configuration
  @configuration ||= Configuration.new
end | 
 
    
   
  
    Class Method Details
    
      
  
  
    .client  ⇒ Object 
  
  
  
  
    | 
24
25
26 | # File 'lib/ruby_llm.rb', line 24
def client
  @client ||= Client.new
end | 
 
    
      
  
  
    | 
20
21
22 | # File 'lib/ruby_llm.rb', line 20
def configure
  yield(configuration) if block_given?
end | 
 
    
      
  
  
    .loader  ⇒ Object 
  
  
  
  
    | 
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 | # File 'lib/ruby_llm.rb', line 28
def loader
  @loader ||= begin
    loader = Zeitwerk::Loader.for_gem
        loader.push_dir(File.expand_path('..', __dir__))
        loader.inflector.inflect(
      'ruby_llm' => 'RubyLLM',
      'llm' => 'LLM',
      'openai' => 'OpenAI',
      'api' => 'API'
    )
        loader.ignore("#{__dir__}/ruby_llm/railtie.rb")
    loader.ignore("#{__dir__}/ruby_llm/active_record")
    loader.ignore(File.expand_path('../spec', __dir__).to_s)
        loader.logger = Logger.new($stdout) if ENV['RUBY_LLM_DEBUG']
    loader.enable_reloading if ENV['RUBY_LLM_DEBUG']
    loader.setup
    loader.eager_load
    loader
  end
end |