Module: RubyLLM::Providers::OpenAI::Models
- Defined in:
- lib/ruby_llm/providers/openai/models.rb
Overview
Provider-owned model catalog reconciliation.
Constant Summary collapse
- SNAPSHOT_BASES =
{ 'gpt-3.5-turbo-0125' => 'gpt-3.5-turbo', 'gpt-3.5-turbo-1106' => 'gpt-3.5-turbo', 'gpt-4-0314' => 'gpt-4', 'gpt-4-0613' => 'gpt-4', 'gpt-4-turbo-2024-04-09' => 'gpt-4-turbo', 'o1-2024-12-17' => 'o1', 'o3-mini-2025-01-31' => 'o3-mini' }.freeze
Class Method Summary collapse
Class Method Details
.models_dev_alias(model_id, models_dev_by_key, _provider_model = nil) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/ruby_llm/providers/openai/models.rb', line 18 def self.models_dev_alias(model_id, models_dev_by_key, _provider_model = nil) base_id = SNAPSHOT_BASES[model_id] if base_id source = models_dev_by_key["openai:#{base_id}"] return Model.new(source.to_h.merge(id: model_id)) if source end match = model_id.match(/\A(.+)-(\d{4}-\d{2}-\d{2})\z/) return unless match source = models_dev_by_key["openai:#{match[1]}"] return unless source&.created_at return unless source.created_at.to_date.to_s == match[2] Model.new(source.to_h.merge(id: model_id)) end |