Module: Legion::LLM::Config

Extended by:
Legion::Logging::Helper
Defined in:
lib/legion/llm/config.rb

Class Method Summary collapse

Class Method Details

.auto_configure_defaultsObject



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/legion/llm/config.rb', line 24

def auto_configure_defaults
  log.debug '[llm][config] auto_configure_defaults.enter'
  Legion::LLM::Settings.value(:providers, default: {}).each do |provider, config|
    next unless Legion::LLM::Settings.config_value(config, :enabled)

    model = Legion::LLM::Settings.config_value(config, :default_model)
    next unless model

    Legion::LLM::Settings.set_value(:default_model, value: model)
    Legion::LLM::Settings.set_value(:default_provider, value: provider)
    log.info "[llm][config] auto-configured default model=#{model} provider=#{provider}"
    break
  end
  log.debug '[llm][config] auto_configure_defaults.exit'
end

.set_defaultsObject



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/legion/llm/config.rb', line 12

def set_defaults
  log.debug '[llm][config] set_defaults.enter'
  default_model = Legion::LLM::Settings.value(:default_model)
  default_provider = Legion::LLM::Settings.value(:default_provider)

  if default_model.nil? && default_provider.nil?
    log.debug '[llm][config] set_defaults auto_configure_defaults'
    auto_configure_defaults
  end
  log.debug "[llm][config] set_defaults.exit default_model=#{Legion::LLM::Settings.value(:default_model)} default_provider=#{Legion::LLM::Settings.value(:default_provider)}"
end