Module: RubyLLM

Defined in:
lib/ruby_llm.rb,
lib/ruby_llm/client.rb,
lib/ruby_llm/message.rb,
lib/ruby_llm/railtie.rb,
lib/ruby_llm/version.rb,
lib/ruby_llm/conversation.rb,
lib/ruby_llm/configuration.rb,
lib/ruby_llm/providers/base.rb,
lib/ruby_llm/active_record/acts_as.rb

Defined Under Namespace

Modules: ActiveRecord, Providers Classes: Client, Configuration, Conversation, Error, Message, ProviderSettings, Railtie

Constant Summary collapse

VERSION =
"0.1.0.pre"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject

Returns the value of attribute configuration.



9
10
11
# File 'lib/ruby_llm.rb', line 9

def configuration
  @configuration
end

Class Method Details

.clientObject



16
17
18
# File 'lib/ruby_llm.rb', line 16

def client
  @client ||= Client.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



11
12
13
14
# File 'lib/ruby_llm.rb', line 11

def configure
  self.configuration ||= Configuration.new
  yield(configuration) if block_given?
end

.loaderObject



20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/ruby_llm.rb', line 20

def loader
  @loader ||= begin
    loader = Zeitwerk::Loader.for_gem
    loader.inflector.inflect(
      'llm' => 'LLM',
      'openai' => 'OpenAI',
      'api' => 'API'
    )
    loader.setup
    loader
  end
end