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
|