Class: RubyLLM::Aliases

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_llm/aliases.rb

Overview

Manages model aliases for provider-specific versions

Class Method Summary collapse

Class Method Details

.aliasesObject



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

def aliases
  @aliases ||= load_aliases
end

.aliases_fileObject



21
22
23
# File 'lib/ruby_llm/aliases.rb', line 21

def aliases_file
  File.expand_path('aliases.json', __dir__)
end

.load_aliasesObject



25
26
27
28
29
30
31
# File 'lib/ruby_llm/aliases.rb', line 25

def load_aliases
  if File.exist?(aliases_file)
    JSON.parse(File.read(aliases_file))
  else
    {}
  end
end

.reload!Object



33
34
35
# File 'lib/ruby_llm/aliases.rb', line 33

def reload!
  @aliases = load_aliases
end

.resolve(model_id, provider = nil) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/ruby_llm/aliases.rb', line 7

def resolve(model_id, provider = nil)
  return model_id unless aliases[model_id]

  if provider
    aliases[model_id][provider.to_s] || model_id
  else
    aliases[model_id].values.first || model_id
  end
end